温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

分辨率自适应方案(不产生黑边)

发布时间:2020-07-07 10:17:16 来源:网络 阅读:6429 作者:arrowyoung 栏目:开发技术

我自己的一点心得,由于横屏的体验现阶段并不好,所以这个方案只对竖屏.


找到launcher文件夹下的egret_loader.js文件(EGRET 1.6)

修改代码如下

var  context = egret.MainContext.instance;     context.touchContext = new egret.HTML5TouchContext();     context.deviceContext = new egret.HTML5DeviceContext();     context.netContext = new egret.HTML5NetContext();     var stageWidth = document.documentElement.clientWidth;     var stageHeight = document.documentElement.clientHeight;     var width;     var height;     var scale;     if (stageWidth > stageHeight) {         width = 540;         height = 960;     } else {         width = stageWidth;         height = stageHeight;     }     scale = 540 / width;     egret.StageDelegate.getInstance().setDesignSize((width * scale)>>0, (height * scale)>>0);     context.stage = new egret.Stage();     context.stage.scaleMode = egret.StageScaleMode.SHOW_ALL;


基本思想:得到浏览器的宽高,然后把宽度定死成540(之所以选择540,是我多次试验后比较好的一个宽度,具体就不详解了,这个数值也可以是其它),高度由实际宽度和540的比例,算出来的适配540的值,然后缩放规则直接用SHOW_ALL,这样在浏览器内就不产生黑边了.


注:这个方案高度是动态的,所以游戏逻辑里要对这个高度做一些自适应的规则.

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI