OpenGL中的CSG建模

OpenGL中的CSG建模,opengl,graphics,modeling,csg,Opengl,Graphics,Modeling,Csg,我正在使用OpenGL处理构造实体几何(CSG)建模 我想知道如何实现二进制操作。我读了一些关于金羽毛算法的书,我知道,但读完后,我发现它太复杂了,难以理解。我只需要一个简单的OpenGL示例如何实现它 只要算法易于实现,就没有任何限制。OpenGL不会帮助您。OpenGL是一个渲染库/API。它绘制点、线和三角形;由你来决定画什么。OpenGL不维护场景,甚至没有连贯几何对象的概念。因此,CSG不是进入OpenGL的东西。Nicol Bolas是正确的-OpenGL对CSG没有帮助,它只提供了

我正在使用OpenGL处理构造实体几何(CSG)建模

我想知道如何实现二进制操作。我读了一些关于金羽毛算法的书,我知道,但读完后,我发现它太复杂了,难以理解。我只需要一个简单的OpenGL示例如何实现它


只要算法易于实现,就没有任何限制。

OpenGL不会帮助您。OpenGL是一个渲染库/API。它绘制点、线和三角形;由你来决定画什么。OpenGL不维护场景,甚至没有连贯几何对象的概念。因此,CSG不是进入OpenGL的东西。

Nicol Bolas是正确的-OpenGL对CSG没有帮助,它只提供了一种在2D屏幕上绘制3D内容的方法。 OpenCSG本质上是“伪”CSG,它使用OpenGL的深度缓冲区、模板和着色器,使3D对象看起来已经执行了布尔运算

CSG是一项艰巨的任务,我怀疑你是否会找到一个“易于理解的算法”
看看这个项目:它在三角形/面上执行CSG,然后将其绘制到OpenGL

我有一个CSG树和相应的数据结构。但是,如果我的数据结构告诉我如何绘制交集,我该如何绘制交集呢?我认为OpenGL可以提供帮助,因为OpenCSG就是基于它的。我需要的是易于理解的算法。投票被否决不仅是因为这个答案没有帮助,还因为有面向渲染的方法来绘制CSG操作的结果;这些方法通常严重依赖GPU(OpenGL或等效)代码,因此我发现这个答案有误导性。有没有关于如何使用
OpenGL的深度缓冲区、模板和着色器来实现它的文章?OpenCSG将是最好的地方,但是你发现它很复杂,所以我推荐openGL红皮书——当我想更好地理解openGL时,我总是回到这本书:www.amazon.com/openGL-Programming-Guide-Official-Learning/dp/0321552628