AIR / Flash mobile / As3 /降低分辨率或升级性能

时间:2014-10-11 14:09:08

标签: android ios actionscript-3 flash air

所以我有一个内置在Flash CS6中的Android / IOS Air应用程序(不使用Starling或Stage3D)。在.fla中,舞台大小设置为640x1024。

现在我注意到舞台分辨率对于Android来说并不重要,因为它会查看手机/平板电脑的显示屏。并调整它/

我遇到的问题是我的三星Galaxy S2比我的全新oneplus表现更好可能是因为oneplus有一个更大的分辨率1920x1080

现在随着即将推出的手机开始过度杀伤并升级到4K显示器,我想知道是否有可能升级分辨率或强制最大分辨率。我宁愿在分辨率上有更少的细节,并且有一个平稳的游戏,然后是一个滞后的游戏,因为它被迫用肉眼无法看到的细节。

1 个答案:

答案 0 :(得分:0)

你可以使用像

这样的东西
private static function handleResize() :void {
var deviceSize:Rectangle = new Rectangle(0, 0, stage.stageWidth, 
    stage.stageHeight);
// adjust the gui to fit the new device resolution
}
stage.addEventListener(Event.RESIZE, handleResize);
// call handleResize to initialize the first time
handleResize();

// Then set quality value
if(stage.stageHeight>200 && stage.stageHeight<380){myImageQualitySwitchVar=1}
if(stage.stageHeight>380 && stage.stageHeight<680){myImageQualitySwitchVar=2}
if(stage.stageHeight>800){myImageQualitySwitchVar=3}

在你想要加载你想要的图像质量的MC里面,我会为你的图像加载器创建一些东西,比如

if(myImageQualitySwitchVar==1){Image01.load(new URLRequest("LowQualityIMG.jpg"));}

if(myImageQualitySwitchVar==2){Image01.load(new URLRequest("MediumQualityIMG.jpg"));}

if(myImageQualitySwitchVar==3){Image01.load(new URLRequest("HighQualityIMG.jpg"));}

这样做很多工作,但我能想到的唯一选择是为不同的设备创建不同的构建。即。 4版本,使用SDk x.x及以下设备的手机版本以及SDk x.x以上的手机获得不同版本。以及SDK x.x上下的特定平板电脑的另外2个版本。

希望这会有所帮助。