使用 OpenGL 更改背景颜色

KcF*_*nMi 1 c++ opengl

Qt OpenGL 窗口示例显示了一个彩色三角形。颜色、RGB 角设置为:

static const GLfloat colors[] = {
    1.0f, 0.0f, 0.0f,
    0.0f, 1.0f, 0.0f,
    0.0f, 0.0f, 1.0f
};
Run Code Online (Sandbox Code Playgroud)

如何将黑色背景更改为其他颜色?

The*_*ind 5

您可以使用以下函数设置透明颜色glClearColor:

C 规格

void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
Run Code Online (Sandbox Code Playgroud)

参数

red, green, blue,alpha

指定清除颜色缓冲区时使用的红色、绿色、蓝色和 Alpha 值。初始值均为0.

描述

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

正如文档所建议的,当您通过函数(通过指定参数)清除颜色缓冲区时,将使用清除颜色:glClearGL_COLOR_BUFFER_BIT

glClearColor(0, 1, 0, 1); // sets green color
glClear(GL_COLOR_BUFFER_BIT);
Run Code Online (Sandbox Code Playgroud)