我正在用FlashPunk制作Flash游戏。当我按下Ctrl + F时,Flash会全屏显示,但游戏保持原始大小,并与左上角对齐。全屏缩放FlashPunk游戏
如何指定FlashPunk,我希望游戏的缩放比例达到屏幕大小? (保持纵横比,偏离航向)
感谢
我正在用FlashPunk制作Flash游戏。当我按下Ctrl + F时,Flash会全屏显示,但游戏保持原始大小,并与左上角对齐。全屏缩放FlashPunk游戏
如何指定FlashPunk,我希望游戏的缩放比例达到屏幕大小? (保持纵横比,偏离航向)
感谢
扩展您的Flash影片将显著降低性能。我敦促你不要以任何理由这样做。我不知道什么闪光朋克,但尝试使用这样的:
stage.scaleMode = StageScaleMode.SHOW_ALL;
你可以挂接到调整大小事件和代码
//put this in your initialization method
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.addEventListener(Event.RESIZE, onResize);
stage.dispatchEvent(new Event(Event.RESIZE));
public function onResize(event:Event=null):void
{
width = stage.stageWidth;
height = stage.stageHeight;
if (scaleX < scaleY)
scaleY = scaleX;
else
scaleX = scaleY;
}
要做到这一点,最好的办法缩放,是覆盖setStageProperties公共职能在主类(在FlashPunk,主类应延长发动机类)
override public function setStageProperties():void
{
super.setStageProperties();
stage.scaleMode = StageScaleMode.SHOW_ALL;
}
你可以control scaling in OBJECT attributes when you embed the Flash into HTML。使用scale=default
来缩放保持宽高比。当您在播放器中运行Flash时,请使用菜单项“视图” - >“全部显示”,其功能与HTML中OBJECT中的scale=default
相同。
查看flashpunk中的FP类。特别是FP.screen.scale
,它可以让您按指定的因子调整整个游戏的大小。例如,下面的代码将增加一倍,你的游戏画面尺寸:
FP.screen.scaleY = 2;
FP.screen.scaleX = 3;
:
FP.screen.scale = 2;
如果你需要担心的纵横比,可以分别用做X和Y进入全屏后,您可以使用下面的代码来获得正确的高宽比以放大屏幕:
var scaleFactorX = stage.stageWidth/FP.screen.width;
var scaleFactorY = stage.stageHeight/FP.screen.height;
FP.screen.scaleX = scaleFactorX;
FP.screen.scaleY = scaleFactorY;
这是一个游戏库:http://flashpunk.net/。可悲的是你给我的代码不起作用。 – 2011-05-11 00:36:47