Nat*_*.M. 1 opengl drawing textures
我正在使用SFML制作等距(2D)游戏.我通过按Y位置对所有drawable进行排序来处理绘图顺序(深度),它的效果非常好.
游戏使用了大量的艺术资产,只有npcs,怪物和玩家图形都包含在他们自己的4k纹理图集中.从逻辑上讲,我不可能将所有内容放入一个地图集中.目标设备将无法处理该大小的纹理.请不要关注为什么它是不可能的,并且理解我在这种情况下必须为我的纹理使用单独的文件.
这会导致问题.假设我有2个npcs和2个支柱的等级.npcs位于NPCs.png中,支柱位于CastleLevel.png中.根据npcs移动的位置,绘制顺序(因此opengly纹理绑定顺序)可以不同.假设Y位置的排序方式如下:
npc1,pillar1,npc2,支柱2
这意味着opengl必须在2个纹理之间切换两次.我的问题是,我应该:
a)保持纹理atlasses OR
b)将它们全部分成较小的png文件(每个npc 1 png,每个柱子1 png等).由于纹理必须多次更改,如果opengl必须绑定较小的纹理,它会提高性能吗?
是否值得保留纹理atlasses因为它有时会减少绘制调用的数量?