【问题标题】:Change background color with OpenGL使用 OpenGL 更改背景颜色
【发布时间】:2022-10-05 21:48:57
【问题描述】:

Qt OpenGL Window Example 显示一个彩色三角形。颜色,RGB 角,设置为:

static const GLfloat colors[] = {
    1.0f, 0.0f, 0.0f,
    0.0f, 1.0f, 0.0f,
    0.0f, 0.0f, 1.0f
};

如何将黑色背景更改为另一种颜色?

  • glClearColor
  • 很明显,三角形的颜色与背景的颜色无关。即使不画三角形,背景也会有颜色。那么为什么要显示与三角形的 3 个顶点相关联的 3 种颜色呢?无论如何,只要稍加研究,这个问题就可以清楚地避免。

标签: c++ opengl


【解决方案1】:

你设置颜色清晰使用glClearColor 函数:

C 规格

void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);

参数

red, green, blue, alpha

指定清除颜色缓冲区时使用的红色、绿色、蓝色和 alpha 值。初始值都是0

描述

glClearColor 指定glClear 用于清除颜色缓冲区的红色、绿色、蓝色和 alpha 值。 glClearColor 指定的值被限制在[0,1] 范围内。

正如文件所暗示的,颜色清晰当您通过glClear 函数(通过指定GL_COLOR_BUFFER_BIT 参数)清除颜色缓冲区时使用:

glClearColor(0, 1, 0, 1); // sets green color
glClear(GL_COLOR_BUFFER_BIT);

【讨论】:

    猜你喜欢
    • 2020-09-15
    • 1970-01-01
    • 1970-01-01
    • 2012-07-10
    • 2020-05-04
    • 2013-08-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多