【发布时间】:2012-06-07 07:27:09
【问题描述】:
我正在使用 OpenGL 处理构造实体几何 (CSG) 建模。
我想知道如何实现二进制操作。我读了一些关于Gold Feather Algorithm的东西,我知道OpenCSG,但是在读了its source code之后,我发现它太复杂了,无法理解。我只需要一个简单的最短 OpenGL 示例如何实现它。
算法没有限制,只要易于实现即可。
【问题讨论】:
标签: opengl graphics modeling csg
我正在使用 OpenGL 处理构造实体几何 (CSG) 建模。
我想知道如何实现二进制操作。我读了一些关于Gold Feather Algorithm的东西,我知道OpenCSG,但是在读了its source code之后,我发现它太复杂了,无法理解。我只需要一个简单的最短 OpenGL 示例如何实现它。
算法没有限制,只要易于实现即可。
【问题讨论】:
标签: opengl graphics modeling csg
OpenGL 不会帮助你。 OpenGL 是一个渲染 库/API。它绘制点、线和三角形;由 你 告诉它要画什么。 OpenGL 不维护场景,甚至没有连贯几何对象的概念。因此,CSG 不是进入 OpenGL 的东西。
【讨论】:
intersection?
Nicol Bolas 是正确的 - OpenGL 对 CSG 没有帮助,它只提供了一种将 3D 事物绘制到 2D 屏幕上的方法。 OpenCSG 本质上是“假”CSG,它使用 OpenGL 的深度缓冲区、模板和着色器使 显示 3D 对象已对其执行布尔操作。
CSG 是一项艰巨的任务,我怀疑您是否会找到“易于理解的算法” 看看这个项目:http://code.google.com/p/carve/ 对三角形/面执行 CSG,然后将其绘制到 OpenGL
【讨论】:
OpenGL's depthbuffers, stencils and shaders来实现的文章?