13
A
回答
10
你需要使你的飞机,同时禁用深度测试,并使用顺序无关的混合配方。
如果背面有一些不透明的几何图形,请绘制这些图形,将深度缓冲区设置为只读而不是禁用深度测试,并渲染透明区域。
也有先进的技术处理这个常见的问题,如深度剥离。
编辑
你可以把深度缓冲区设置为只读使用:glDepthMask(GL_FALSE)。
这里是一篇很好的文章解释为什么你不能实现完美的透明度:Transparency Sorting。还可以看看Order Independent Transparency with Dual Depth Peeling文章,其中涵盖了两种方法(一种非常简单,单通),用于具有精确(或近似)的订单独立透明度。
我忘了提及Alpha to Coverage。
1
一个非平凡的解决方案是将平面分成几部分,对它们进行排序,然后将它们渲染回去。然而,完美的分类很难实现。张贴在其他答案在文章中 像: Transparency Sorting: Depth Sorting
相关问题
- 1. 两格可以相对于彼此
- 2. Webkit不透明度渲染
- 3. 我们可以在SceneKit中的透明平面上渲染阴影吗
- 4. OpenGL渲染纹理透明度问题
- 5. 两个进程可以渲染到一个OpenGL画布吗?
- 6. 你可以在同一点渲染两个四边形透明度?
- 7. 的WebView可可不渲染
- 8. 我可以将两个MVC3应用程序彼此相邻吗?
- 9. 你可以把两个固定div彼此相邻吗?
- 10. 在CSS中可以使用透明的photoshop图像渲染吗?
- 11. 这是可能的显示DIV彼此相邻而不浮动?
- 12. Gephi节点渲染器可以保留原始节点不透明度吗?
- 13. 如何停止渲染不可见面
- 14. 渲染一个透明的外壳
- 15. 通过交替渲染或两个单独的线程连续渲染到相同的wxPanel上的两个wxglcanvas
- 16. 渲染透明纹理
- 17. Java Graphics2D透明渲染
- 18. 不透明的两个div
- 19. VAO不渲染颜色OpenGL?
- 20. opengl顶点不渲染
- 21. OpenGL FreeType2位图不渲染
- 22. OpenGL三角形不渲染
- 23. 居中两个div的水平,彼此相邻?
- 24. 在OpenGL中将粒子渲染为具有透明度的GL_TRIANGLE_FANs
- 25. OpenGL渲染透明的PNG与随机白色像素
- 26. OpenGL ES 2.0渲染到具有透明背景的纹理
- 27. 彼此相邻的两个纺纱器
- 28. Backbone可以以相反的顺序渲染一个集合吗?
- 29. 合并两个不透明图像以获得透明图像
- 30. 可可中的不同透明胶片?
深度测试伎俩只能尽可能所有的飞机恰好有0.5不透明......?或者我现在完全疯了 – Newbie 2010-11-09 01:34:09
也,我怎么把深度缓冲区只读?上一次我检查它不可能在opengl O_o或它是只写不可能的...现在太累了现在想想 – Newbie 2010-11-09 01:35:35
所以没有办法做到这一点 – Newbie 2010-11-13 14:34:39