AndEngine包括几种不同类型的engine,供我们选择。我们可以根据游戏的类型,来选择相应的engine,以提高游戏的性能
@Override
public Engine onCreateEngine(EngineOptions pEngineOptions) {
return super.onCreateEngine(pEngineOptions);
/* The returned super method above simply calls:
return new Engine(pEngineOptions);
*/
}
下面概述了在AndEngine中的各种引擎对象和用简短的代码片段显示如何设置引擎对象。
Engine:游戏引擎实际上是把游戏分成了各不相关的很多时间片段,在每个时间片段上同步绘制和更新整个游戏场景(Scene)上所有在游戏中正处在活动状态的对象。通常情况下一个引擎驱动一个游戏场景,当然除了SplitScreenEngine。
FixedStepEngine:这是一个理想引擎在游戏开发中使用,因为它迫使游戏循环更新以恒定的速度,而不管该装置( regardless of the device)。这样做是
基于时间的游戏更新设备的能力,而不是通过更快地执行代码。 FixedStepEngine构造器中需要传递两个参数EngineOptions的对象和一个int值。 int值定义了一些将每秒被迫运行步骤数。下面的代码创建一个引擎,将运行在一个恒定的每秒60步:
@Override
public Engine onCreateEngine(EngineOptions pEngineOptions) {
// Create a fixed step engine updating at 60 steps per second
return new FixedStepEngine(pEngineOptions, 60);
}
LimitedFPSEngine:为每秒的帧数做一个上限。下面的代码创建一个引擎将运行在每秒最大60帧:
@Override
public Engine onCreateEngine(EngineOptions pEngineOptions) {
// Create a limited FPS engine, which will run at a maximum of
60 FPS
return new LimitedFPSEngine(pEngineOptions, 60);
}
SingleSceneSplitScreenEngine 和 DoubleSceneSplitScreenEngine:
SingleSceneSplitScreenEngine机和DoubleSceneSplitScreenEngine引擎使我们能够创建一个游戏有两个单独的cameras,可以与一个单一的scene,最普遍用于单个玩家
游戏,或在单个设备上的两个场景的多人游戏。这些都只是例子。但是这两个Engine的可以有广泛的用途,包括迷你地图,多角度,菜单系统,以及更多的东西。