我有一個使用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模式,我的應用程序在邏輯外處理用戶界面,這部分工作正常,它是不同屏幕的配置,我遇到了問題。我將如何使用不同屏幕分辨率的配置文件? –