我正在用C++制作一个游戏,现在遇到了一个抉择。
我正在计划如何处理动画和优化渲染。目前我使用的是立即模式渲染,但是我被告知这种方法非常慢。于是我开始寻找替代方案,发现有很多不同的方式,而且还要根据动画的处理方式而定。因此,我想问一下,什么是最好的优化方式呢?
对于动画,我考虑使用存储在内存中的图像序列,但是只测试了50张图像序列后,内存跳到了200MB,而之前只有30MB。(没有泄漏,它保持在200MB,但如果我有大型关卡,看起来我可能会用完内存)。在这种情况下,使用精灵表是否有帮助呢?
我被告知使用纹理集或精灵表的原因是绑定不同的纹理是一项昂贵的操作,所以唯一的方法是将我将在第1关中使用的所有纹理放入一个巨大的纹理中,这样我只需要绑定一次。这是否可以动态实现呢?
相比加载50个PNG文件,使用一个巨大的PNG文件是否更节省内存呢?
如果您能提供优化渲染的帮助或有关这些动画技术缺点的信息,我将不胜感激!