0

我了解 Andengine 为我们提供了将场景缩放到用户可能拥有的任何尺寸屏幕的选项。

我的问题是,如果开发更大的分辨率(比如 1280/800)并将其缩小以适应更小的屏幕,或者开发更小的分辨率(比如 800/480 并在更大的屏幕上放大)会更好吗?

我确实尝试通过将其开发为 1280/800 并将其缩小(通过 ratioResolutionPolicy)到 800/480 来在示例游戏中对此进行测试,但结果并不令人满意,尽管调试器上的帧率到处都有卡顿显示60+。是我的编程不好还是与像素的缩小有关,我应该为更小的屏幕开发并放大它吗?

4

2 回答 2

2

我想这取决于您使用的图形类型。

例如,假设您想创建复古游戏男孩像素风格的东西,那么使用小图像并针对小分辨率(如 480x320)进行开发会更有意义。像素图形可以放大而不会降低质量,但不能缩小(然后像素松散形式)。

但是如果你想要高分辨率的图形,你最好将整个东西开发成一个大分辨率,然后让 AndEngine 缩小它。

在这两种情况下,图片的质量也取决于TextureOption您的质量TextureAtlases

无论如何,我可以想象缩小或放大都不是更有效。缩放由 openGL 完成,应该很快。但是,使用大分辨率的缺点是设备必须在其内存中保存巨大的图像,当然处理大图像总是比处理小图像花费更多的时间。那么也许最好的方法是为中型设备(例如 960x640)开发?

我知道这没有多大帮助,不幸的是,要获得满足您特定要求的最佳结果,需要进行大量尝试和错误。

  • 克里斯多夫
于 2013-02-03T15:12:38.073 回答
1

为了在所有类型的 android 设备上取得良好的效果,从我的角度来看,您有两种方法可以遵循。

首先,您必须开发并使用两个图形来处理所有类型的设备。例如,一个分辨率为 1024x600,另一个为 480x320。根据设备当前分辨率,您必须加载特定类型的图形。

其次,您可以选择最适合您并在市场上占有很大份额的任何单一分辨率。仅针对该分辨率开发和使用图形。对于基于纵横比的其他分辨率缩放图形。为此,您必须创建精灵的超类并更改 x,y,height 的值,并根据纵横比计算。

这是我与您分享的经验。如果您有任何疑问,请随时提出。

于 2013-02-06T19:43:22.490 回答