阅读粒子系统渲染的点精灵,in this site他们谈论点精灵并使用调用glTexEnvi(GL_POINT_SPRITE, GL_COORD_REPLACE, GL_TRUE);
我试图找到有关这方面的信息但是所有内容都指向OpenGL文档中给出的描述,有人可以提供一个更方便的示例/解释来理解它的含义吗?
答案 0 :(得分:3)
您的标题有点宽泛,您实际上对一个特定参数感兴趣(手册页中未对此进行说明)。但是,如果您阅读OpenGL 2.0的正式规范,您会看到那里解释了参数 。
OpenGL Version 2.0 (October 22, 2004) - 3.3。点 - P。 100
在光栅化点精灵 时产生的所有片段 都会被分配相同的关联数据
,这些是对应于该点的顶点。 然而,每个纹理坐标集GL_COORD_REPLACE
GL_TRUE
,这些纹理坐标 替换为点精灵纹理坐标 。
实际上,这意味着当禁用(默认)时,光栅化过程中产生的片段将被分配一个纹理坐标集。那些坐标是与创建点精灵的单个顶点相关联的坐标。
但这种行为并不是特别有用,因为如果点精灵的每个部分都具有相同的纹理坐标,那么纹理映射就毫无价值。因此,作为替代方案,GL可以自己计算纹理坐标,它通过指定左下角( 0 , 0 )和右上角来实现。精灵( 1 , 1 )。此行为也是可自定义的,如果您有兴趣阅读有关如何指定哪个角坐标的更多信息,则规范的链接部分会详细说明。