我正在为一个艺术家公司编写一个支持全高清的2D引擎,希望它是跨平台的,并且是用OpenGL和C++编写的。全高清2D纹理内存OpenGL
我一直面临的主要问题是如何处理所有这些高清精灵。艺术家以24fps的速度绘制图形,并将它们导出为png序列。我已经将它们转换为DDS(不理想,因为它需要加载directx头文件)DXT5减少了文件大小。游戏中的某些场景一次可以有5个或6个动画精灵,并且这些场景可以由200个以上的帧组成每个。目前我正在将sprites加载到指针数组中,但加载时间过长(即使使用压缩纹理),并使用相当多的内存(大约500mb用于全部场景)。
所以我的问题是你有任何想法或提示如何处理如此大量的帧?有一对夫妇的想法,我thought've的:
- 使用SWF格式,从Flash
- 实现一个2D骨骼动画系统中存储的帧,更换PNG序列(我有顾虑关节是可见的)
像Castle Crashers这样的游戏如何快速加载高清显卡?
从磁盘加载太长,或上传到GPU太长时间? – genpfault
“不理想,因为它需要directx标题才能加载”您不需要Direct3D标题来加载DDS。 –