AndEngine基础笔记之Engine

下面是Andengie中Engine的一些各类及说明:

Engine:首先我们有最普通的Engine对象,其对于fps(frames per scend)没有任何限制,在不同的机器中,你们注意到不同的游戏运行速度,再或者是两台不同的机器观看相同的电影,并同时开始,运行快的设备会首先播放完毕,而不是同是播放完毕,所以对于硬件要求比较高的游戏,这个可能不是很适合。

FixedStepEngine:这个个比较理想的Engine,因为无论是何种设备,它会强制游戏以一个不变数运行,其原理是以时间为单位更新游戏而不是让设备加快执行代码。其需要我们传递EngineOptions以及一个int变量,int变量定义了游戏每秒钟运行的步数。比如以60步没秒的频率运行:

public Engine onCreateEngine(EngineOptions pEngineOptions){

return new FixedStepEngine(pEngineOptions,60);

}

LimitedFPSEngine:其充许我们设定限制的FPS让Engine运行。如果运行如帧率超过了限定的,Engine会在执行更新前暂停一会。同样其构造需要两个参数,一个EngineOptions,另一个int变量,指定FPS最大值,比如指定最大运行60FPS的Engine。

public Engine onCreateEngine(EngineOptions pEngineOptions){

return new LimitedFPSEngine(pEngineOptions,60);

}


SingleSceneSplitScreenEngine和DoubleSceneSplitScreenEngine:

一般用于创建有两个不同的Cameras的游戏,要么设置单一的Scene,用于单人游戏,要么设置两个Scene,用于双人游戏。


再来说说Resolutions 政策

由于我们的游戏运行平台,从3寸到10.1寸不等,大多的开发者和用户希望游戏能占据整个的屏的宽和高,但是有此时候这些策略我们要谨慎,为了能让场景满足我们开发者的要求。

EngineOptons engineOptions=new EngineOptions(true,ScreenOrientation.LANDSCAPE_FIXED,new FillResolutionPolicy(),mCamera);

下面让我们看看Andengine中有哪些作分辨率的策略。

FillResolutionPolicy:其是比较基础的一种,应用会占满整个长宽,允许我们在全屏的模式下运行,但由于其为了铺满全屏,很可能会有明显的拉伸现象。

FixedResolutionPolicy:其允许我们设置选定的屏幕分辨率,而不管设备屏幕的尺寸或Camera的大小,比如定义一个800*480的分辨率到1280*752的设备上,我们可能看到800*480的游戏画面,而其余部分以黑色块填充。

RatioResolutionPolicy:如果我们希望最到最大的显示效果,并且知个精灵不会失真,即不会被拉伸,那么这是个最好的解决办法。为了能最大的利用屏幕,我们会提前定义一个比例值,其为宽除以高的值。

RelativeResolutionPolicy:允许设定横竖的比例,比如横竖都以1.5倍显示,new RelativeResolutionPlicy(1.5f),当然也可以设定不同的横竖比,new RelativeResolutionPolicy(1.5f,0.5f),但最大不要超过1.8f,否则强退。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值