zoukankan      html  css  js  c++  java
  • OpenGL的glClearColor和glClear改变背景颜色

    OpenGL的glClearColor和glClear改变背景颜色

    结合以下两个函数
    void glClearColor(GLclampf red,
                GLclampf green,
              GLclampf blue,
              GLclampf alpha);

    void glClear(GLbitfield mask);

    前一个函数设置好清除颜色,后者利用前一个函数设置好的当前清除颜色设置窗口颜色

    例如代码:

     1 #include <stdio.h>
     2 #include <gl/glut.h>
     3 
     4 /*
     5  功能描述:使用OpenGL简单画一个矩形。
     6  */
     7 
     8 //输出模式,0-单缓存模式;非0双缓存模式
     9 #define OUTPUT_MODE 1
    10 
    11 void display(void)
    12 {
    13     //glClearColor函数设置好清除颜色,glClear利用glClearColor函数设置好的当前清除颜色设置窗口颜色
    14     glClearColor(1.0, 1.0, 0.6, 1.0);
    15     glClear(GL_COLOR_BUFFER_BIT);
    16     
    17     glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
    18 
    19     if (OUTPUT_MODE == 0) {
    20         glFlush();//单缓存GLUT_SINGLE时使用
    21     } else {
    22         glutSwapBuffers();//因为使用的是双缓存GLUT_DOUBLE,所以这里必须要交换缓存才会显示
    23     }
    24 }
    25 
    26 int main(int argc, char *argv[])
    27 {
    28     glutInit(&argc, argv);
    29     
    30     glutInitDisplayMode(GLUT_RGB | (OUTPUT_MODE == 0 ? GLUT_SINGLE : GLUT_DOUBLE));
    31     glutInitWindowPosition(100, 100);
    32     glutInitWindowSize(400, 400);
    33     glutCreateWindow("第一个 OpenGL 程序");
    34     glutDisplayFunc(&display);
    35     glutMainLoop();
    36     return 0;
    37 }

    运行结果:

  • 相关阅读:
    起点中文网小说爬取-etree,xpath,os
    拉勾网爬虫--待改正
    破解有道词典翻译-版本二
    pycharm错误:11001
    自动化selenium 测试之道(一)
    valgrind 详细说明
    sar命令使用详解
    Linux CPU实时监控mpstat命令详解
    Linux IO实时监控iostat命令详解
    RPM安装命令总结
  • 原文地址:https://www.cnblogs.com/1024Planet/p/5643651.html
Copyright © 2011-2022 走看看