gpt4 book ai didi

opengl - glPolygonMode(GL_BACK,GL_LINE) 不起作用

转载 作者:行者123 更新时间:2023-12-02 08:19:33 25 4
gpt4 key购买 nike

glEnable(GL_CULL_FACE);
glCullFace(GL_FRONT);

glPolygonMode(GL_BACK,GL_LINE);

在上面的代码示例中,glPolygonMode 抛出无效枚举错误?如何解决这个问题?

最佳答案

如果问题的面或众数(分别是第一个和第二个参数)不是可接受的值,则会生成

GL_INVALID_ENUM。对于正面和背面多边形,您的第一个参数必须是 GL_FRONT_AND_BACK,因为此方法已弃用 GL_FRONTGL_BACK

编辑

因为您似乎在评论中提出了其他问题。如果你想在填充的多边形周围绘制墨水,你应该渲染你的几何图形两次;渲染一次填充和一次线框。稍微移动线框以避免深度战斗。否则两个几何图形可能会重叠

// first draw your polygon filled (this is assuming your glPolygonMode is set to GL_FILL - this is the default mode normally)
// draw your polygons

// offset the wireframe
glEnable(GL_POLYGON_OFFSET_LINE);
glPolygonOffset(-1,-1);

// draw the wireframe
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
// draw the same polygons again

// restore default polygon mode
glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);

glDisable(GL_POLYGON_OFFSET_LINE);

关于opengl - glPolygonMode(GL_BACK,GL_LINE) 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13438450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com