【问题标题】:OpenGL GL_POLYGON Not Functioning ProperlyOpenGL GL_POLYGON 无法正常运行
【发布时间】:2012-10-06 17:45:15
【问题描述】:

我有一个与 OpenGL 相关的问题。每当我尝试使用顶点缓冲区中的四个顶点绘制一个简单的多边形时......什么都没有发生。但是,它会在 GL_TRIANGLES 或 GL_TRIANGLE_STRIP 模式下绘制形状,尽管会变形。我做错了吗?

相关代码:

顶点数组:http://i.imgur.com/nEcbw.png

GL_POLYGON:http://i.imgur.com/idfFT.png

GL_TRIANGLES:http://imgur.com/84ey3,idfFT,nEcbw#0

GL_TRIANGLE_STRIP:http://i.imgur.com/JU3Zl.png

【问题讨论】:

  • 你为什么首先使用多边形?在 OpenGL 中,多边形必须是凸的,这是非常有限的。因此,多边形已从更高版本的 OpenGL 中全部删除(也包括四边形)。坚持使用三角形,首先不要关心多边形。
  • ...这就是为什么它不在多边形模式下绘制的原因?我正在使用向前兼容的 3.2 核心配置文件。

标签: opengl glsl polygon fragment-shader vertex-buffer


【解决方案1】:

我使用的是向前兼容的 3.2 核心配置文件

首先,从不使用“向前兼容的核心配置文件”。您应该只使用核心配置文件;停止使用前向兼容性位。没意义。

更重要的是,GL_POLYGON 不是核心 OpenGL 配置文件的一部分。它是 removed in 3.1. 所以你的代码可能会给你一个 GL_INVALID_ENUM 你忽略的错误。

最后,请务必在您的问题中发布您的 OpenGL 版本和配置文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-22
    • 2015-12-08
    • 2019-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多