Libgdx:无限世界。如何?

时间:2013-04-13 14:18:06

标签: java android libgdx

我用libGdx编写简单的游戏。我有一个英雄,它总是在屏幕中心,我必须移动我的背景精灵(或区域?)来移动幻觉。但我的背景精灵不是无限的。

  • 如何创造无缝无限世界的幻觉?

当然我可以添加几个背景精灵来试图覆盖屏幕的所有空白区域。但是我必须从其他物体中抽出许多东西:房屋,怪物,其他英雄等等。所以我还有第二个问题:

  • 当我尝试从屏幕中绘制其他对象(很多对象!)时,它对内存的影响有多严重?如何正确绘制?

我知道libgdx中的OrthographicCamera只绘制viewportWidth-viewportHeight区域。如果它是正确的,那么我必须移动我的相机和我所有的精灵。我认为这不正确。

  • 如何使用OrthographicCamera在libgdx中渲染无限世界?

enter image description here

1 个答案:

答案 0 :(得分:2)

  

如何创造无缝无限世界的幻觉?

创建平铺背景。平铺背景意味着如果它本身的上方或顶部或底部,粘贴线的边缘将不会被观察者看到。
要执行此操作,请在photoshop中打开背景图像,然后转到过滤器>其他>偏移。 设置偏移滤镜以将背景偏移到中心,然后尝试使用photoshop工具隐藏边缘(图像中的+形状)。现在再次转到偏移并返回0,0并保存背景。

  

当我尝试从屏幕上绘制其他对象(很多对象!)时,   它对记忆的影响有多严重?如何正确绘制?

我已经检查了这一点,并且在我的测试中没有太多fps松动。所以不要担心。

  

如何使用OrthographicCamera在libgdx中渲染无限世界?

将相机移动到任何你想要的x,y。每次看到相机在哪里并计算需要平铺背景绘制(例如每次绘制3x3 = 9背景粘在一起)。