最近开发Android游戏中学习了很多资料,新学了一招
游戏在很多时候都要用到背景,而现在手机的分辨率越做越大,相应的分辨率也就越来越高,而高分辨率的图片在游戏运行过程中所占用的内存就越大,而游戏在过程中,玩家的主要注意力是集中在执行具体游戏行为的人物/事物及各种特效上的,对背景精细程度的关注反而不是很高,而由于游戏背景的高分辨率,往往背景所占用的资源是最大的
如何解决?把玩家关注程度较低的背景使用较低的分辨率来保存并读取,显示在界面中。在学习的过程中我发现有很多款游戏,包括现在非常火的愤怒的小鸟,都使用了这种办法
可能有人要问了,我要满屏的显示背景,分辨率小了,游戏背景画面会不会显示不满整个屏幕?这个一开始我也担心过。。
AndEngine Code
其中的CAMERA_WIDTH, CAMERA_HEIGHT就是你实际的手机屏幕分辨率的宽和高,这样就会满屏显示了
但是这种方法实际上是拉伸了图片,是在降低背景精细度的前提下使用的,来降低游戏的资源占用,那这样做会不会影响玩家的游戏体验呢?
我在自己正在做的小游戏中实际测试了一下,反复对比后,感觉质量的损失上是微乎其微的,而在正常的游戏过程中,更是基本感觉不到有丝毫的区别。。。
当然,如果你没有太大的对于资源占用/性能上的要求,而你的游戏对于背景精细程度的要求又特别高的时候,不太适用此方法~
游戏在很多时候都要用到背景,而现在手机的分辨率越做越大,相应的分辨率也就越来越高,而高分辨率的图片在游戏运行过程中所占用的内存就越大,而游戏在过程中,玩家的主要注意力是集中在执行具体游戏行为的人物/事物及各种特效上的,对背景精细程度的关注反而不是很高,而由于游戏背景的高分辨率,往往背景所占用的资源是最大的
如何解决?把玩家关注程度较低的背景使用较低的分辨率来保存并读取,显示在界面中。在学习的过程中我发现有很多款游戏,包括现在非常火的愤怒的小鸟,都使用了这种办法
可能有人要问了,我要满屏的显示背景,分辨率小了,游戏背景画面会不会显示不满整个屏幕?这个一开始我也担心过。。
AndEngine Code
Scene.setBackground(new SpriteBackground(new Sprite(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT,BackgroundTextureRegion)));其中的CAMERA_WIDTH, CAMERA_HEIGHT就是你实际的手机屏幕分辨率的宽和高,这样就会满屏显示了
但是这种方法实际上是拉伸了图片,是在降低背景精细度的前提下使用的,来降低游戏的资源占用,那这样做会不会影响玩家的游戏体验呢?
我在自己正在做的小游戏中实际测试了一下,反复对比后,感觉质量的损失上是微乎其微的,而在正常的游戏过程中,更是基本感觉不到有丝毫的区别。。。
当然,如果你没有太大的对于资源占用/性能上的要求,而你的游戏对于背景精细程度的要求又特别高的时候,不太适用此方法~
本文探讨了在Android游戏开发中如何通过降低游戏背景分辨率来减少内存占用的方法,并以《愤怒的小鸟》为例,说明了这种方法的具体实现及其对游戏体验的影响。

被折叠的 条评论
为什么被折叠?



