我想制作剪辑半平面,但我对OpenGL并不熟悉。
现在,我使用了一个封装器来处理OpenGL的glClipPlane
void gle::setClipPlane(GLenum glp, Vector3 const& dir, Vector3 const& pos)
{
GLdouble eq[4] = { dir.XX, dir.YY, dir.ZZ, -dir*pos };
glClipPlane(glp, eq);
}
但我真的想做一个剪裁半平面,例如具有正常0 1 0的平面,但仅适用于x> 0且y> 0。 是否可以用简单的方式进行?
答案 0 :(得分:0)
x>0
和y>0
是代表两个半空格的条件。您可以按glClipPlane(planeE, equ)
为每个半空格设置不同的planeE
。
glClipPlane
是旧OpenGL的命令,或具有兼容性上下文配置文件的新命令。对于现代OGL,核心上下文配置文件,您必须在着色器中实现此剪辑。