作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
是否有可能以某种方式利用深度缓冲区,使其仅在那些尚未绘制像素的区域上绘制?
我正在渲染简单的 1 彩色三角形:它们中的很多可能会重叠,这会显着降低渲染速度,因为它渲染的像素比屏幕上可见的要多。
这在 3D 渲染模式下很容易实现:只需启用深度测试并将三角形设置在不同的 z 位置。但这在 2d 模式下不起作用:我不能将每个三角形设置在比前一个更高的位置,因为当深度缓冲区限制出现时,这会导致在一定高度后渲染质量不佳。
我如何使用着色器做到这一点?或者如果不需要着色器;没有着色器怎么办?
最佳答案
为每个三角形分配一个多边形偏移(通过 glPolygonOffset),并启用深度测试。
关于c++ - 通过使用深度缓冲区丢弃重叠像素来优化 OpenGL 2D 渲染?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12026365/
我是一名优秀的程序员,十分优秀!