我有一个使用Starling框架在AS3编写的游戏。它是为移动设备构建的,因此支持大量屏幕非常重要。我写了所有我的代码来支持多种尺寸,但我遇到了一个问题,我似乎无法在网上找到解决方案。调整椋鸟手机游戏的大小以适应多种分辨率。
舞台缩放和资产缩放是伟大的工作,但问题是这一行:
[SWF(framerate="60", width="768", height="1024", backgroundColor="0x333333")]
设置SWF尺寸使得应用永久认为这是一个显示屏,768×1 1024所以,如果上我在iPhone上而不是iPad上运行它,该应用程序将运行,但只会填充第一个1024像素的高度,并将超过640像素宽度。但是,如果我使用iPhone分辨率对上面的行进行硬编码,它看起来会很棒。所以我的问题是如何动态地做到这一点?我尝试过没有运气的resize事件监听器。正如我所说的,我的问题不在舞台上,而是在SWF的初始阶段。以下是我的整个初始化类。请让我知道我失踪的是什么!谢谢!
[SWF(framerate="60", width="768", height="1024", backgroundColor="0x333333")]
public class FlappyBird2 extends Sprite
{
private var myStarling:Starling;
public function FlappyBird2()
{
super();
stage.fullScreenSourceRect = new Rectangle(0, 0, Capabilities.screenResolutionX, Capabilities.screenResolutionY);
stage.displayState = StageDisplayState.FULL_SCREEN;
var viewPortRectangle:Rectangle = new Rectangle();
viewPortRectangle.width = stage.stageWidth;
viewPortRectangle.height = stage.stageHeight;
trace("screen res: X: "+ Capabilities.screenResolutionX + "Y: " + Capabilities.screenResolutionY);
myStarling = new Starling(Game, stage, viewPortRectangle);
myStarling.antiAliasing = 1;
myStarling.start();
}
我将如何使用不同屏幕分辨率的配置文件? –
我已经在使用MVC模式,我的应用程序在逻辑外处理用户界面,这部分工作正常,它是不同屏幕的配置,我遇到了问题。我将如何使用不同屏幕分辨率的配置文件? –