、背景色为黑色,用 glClearColor()来完成; 2、选用 GL_POINTS 作为图形类型; 3、绘制生成四个坐标、颜色和尺寸均不相同的点。
时间: 2024-09-19 15:12:29 浏览: 60
计算机图形学直线的转换生成实验报告含源代码实验结果
在OpenGL中,如果你想在一个全黑的背景下绘制彩色的点,你可以按照以下步骤操作:
1. **设置背景色**:首先,你需要调用`glClearColor()`函数来设定背景颜色。这通常在初始化OpenGL上下文之前进行,因为一旦窗口打开,背景颜色就不能更改了。例如,如果想要一个黑色背景,你会这样做:
```c++
glClearColor(0.0f, 0.0f, 0.0f, 1.0f); // (0,0,0)是黑色,1.0是完全透明度
glClear(GL_COLOR_BUFFER_BIT); // 渲染前清空颜色缓冲区,显示设置的颜色
```
2. **选择图形类型**:接下来,为了绘制点,你需要使用`GL_POINTS`标志,这是OpenGL中最基本的图形模式,表示每个顶点都是独立的一个点。在OpenGL ES 2.0及以后版本中,可以使用`glPointSize()`来设置点的大小,如果你想要不相同的点尺寸:
```c++
// 设置点的大小
const GLfloat pointSizes[] = {5.0f, 10.0f, 15.0f, 20.0f}; // 四个不同尺寸的点
glUseProgram(yourShaderProgram); // 确保当前着色器生效
for(int i = 0; i < 4; ++i) {
glPointSize(pointSizes[i]);
glVertex2f(xPositions[i], yPositions[i]); // xPositions和yPositions是你想要绘制的四个点的坐标
glDrawArrays(GL_POINTS, i, 1); // 绘制单个点
}
```
这里假设你已经有了一个有效的着色器程序,并且已经设置了正确的变量xPositions和yPositions。
阅读全文