我用libGdx编写简单的游戏。我有一个英雄,它总是在屏幕中心,我必须移动我的背景精灵(或区域?)来移动幻觉。但我的背景精灵不是无限的。
当然我可以添加几个背景精灵来试图覆盖屏幕的所有空白区域。但是我必须从其他物体中抽出许多东西:房屋,怪物,其他英雄等等。所以我还有第二个问题:
我知道libgdx中的OrthographicCamera只绘制viewportWidth-viewportHeight区域。如果它是正确的,那么我必须移动我的相机和我所有的精灵。我认为这不正确。
答案 0 :(得分:2)
如何创造无缝无限世界的幻觉?
创建平铺背景。平铺背景意味着如果它本身的上方或顶部或底部,粘贴线的边缘将不会被观察者看到。
要执行此操作,请在photoshop中打开背景图像,然后转到过滤器>其他>偏移。
设置偏移滤镜以将背景偏移到中心,然后尝试使用photoshop工具隐藏边缘(图像中的+形状)。现在再次转到偏移并返回0,0并保存背景。
当我尝试从屏幕上绘制其他对象(很多对象!)时, 它对记忆的影响有多严重?如何正确绘制?
我已经检查了这一点,并且在我的测试中没有太多fps松动。所以不要担心。
如何使用OrthographicCamera在libgdx中渲染无限世界?
将相机移动到任何你想要的x,y。每次看到相机在哪里并计算需要平铺背景绘制(例如每次绘制3x3 = 9背景粘在一起)。