我已经使用OpenGL ES 2.0自己创建了一个简单的渲染器。本质上,它只是一个根据给定的精灵纹理渲染四边形的类。更详细地说,它实际上只是一个接受表示四元组的对象的对象。每个四边形对象都维护一个世界变换和对象变换矩阵,并提供在给定数量的帧上对它们进行变换的方法,还可以指定精灵中的纹理偏移。这个四元类还维护一个要在其矩阵上执行的转换操作列表。然后,渲染器类
我想在OpenGL ES 2.0中渲染一个具有轮廓后处理效果的场景。
首先,我渲染所有不透明的对象。然后我使用一个后处理着色器进行轮廓检测,它使用深度缓冲区作为纹理。现在我想使用alpha混合来渲染所有的对象,而不是写入深度缓冲区,而是使用深度缓冲区纹理中用于轮廓检测的值进行深度测试。如果我在后期处理之前渲染半透明对象,则后期处理会在它们上面渲染