我正在研究一个粒子系统,点精灵很好用。不幸的是,我有一个约束,我将所有纹理打包在一个纹理图集中。这对我的引擎来说是一个巨大的整体速度提升,因为我永远不必切换纹理绑定。但结果我需要能够为我的粒子指定源纹理矩形。
所以我的问题:是否有可能用点精灵做到这一点?从我所看到的,似乎他们只是试图绘制整个纹理。
如果没有,我的另一种方法是打包顶点缓冲区,但点精灵可能会更快。
我正在使用OpenGL ES 1.1(在iPhone上),着色器不是一种选择。
答案 0 :(得分:1)
我猜不是。来自OES_draw_texture的文档:
(3)ARB_point_sprite不会这样做 扩展不必要?
解决。不。主要区别包括:
- ARB_point_sprite使用整个源纹理绘制点,即其纹理坐标范围为0.0到1.0。此扩展允许将纹理的子区域用作源。