在OpenGL中,如何从正方形中切出一个三角形孔?使洞透明。
我也在使用SDL,也许可以通过SDL表面来实现?
答案 0 :(得分:1)
您可以使用纹理和Alpha混合:纹理将包含透明三角形。请参阅此tutorial on blending。
编辑:当然,alpha混合不会改变几何体。为此,您需要执行更复杂的治疗。请参阅此tutorial on realtime CSG。
答案 1 :(得分:1)
在纹理上进行操作确实是更容易的方法,如果你需要它是一个真正的形状,你可以尝试使用GLU工具包中的GLUtesselator。请参阅教程here。
一般用法是创建一个tesselator对象,创建两个轮廓(反向的外部和内部),并且tesselator将其转换为纯OpenGL命令。当然,如果你正在寻求效率,你应该实现或找到一个在顶点缓冲区上运行的更高阶系统。