OpenGL中的glutInitDisplayMode()函数的理解
OpenGL中的glutInitDisplayMode()
函数的作用主要是在创建窗口的时候,指定其显示模式的类型。
函数原型为:void glutInitDisplayMode(unsigned int mode);
mode参数是一个GLUT库里预定义的可能的布尔组合。你使用mode去指定颜色模式,数量和缓冲区类型。
其中大部分情况下使用的参数为:
GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH | GLUT_STENCIL
颜色模式:GLUT_RGBA表示颜色模式,另外还有GLUT_RGB 和 GLUT_INDEX模式。
其中GLUT_RGBA为默认的颜色模式。
缓冲区类型:GLUT_DOUBLE表示使用双缓冲窗口,与之对应的是GLUT_SINGLE模式,二者的区别是:
- 单缓冲,实际上就是将所有的绘图指令在窗口上执行,就是直接在窗口上绘图,这样的绘图效率是比较慢的,如果使用单缓冲,而电脑比较慢,屏幕会发生闪烁。一般只用于显示单独的一副非动态的图像。
- 双缓冲,实际上的绘图指令是在一个缓冲区完成,这里的绘图非常的快,在绘图指令完成之后,再通过交换指令把完成的图形立即显示在屏幕上,这就避免了出现绘图的不完整,同时效率很高。一般用于生成动画效果。
一般用OpenGL绘图使用双缓冲模式。
其它的缓冲模式还有很多例如:
GLUT_ACCUM;GLUT_ALPHA;GLUT_DEPTH;GLUT_STENCIL;GLUT_MULTISAMPLE;GLUT_STEREO;GLUT_LUMINANCE。
其表示对应的宏以及含义如下:
关于其中的具体区别,还需要以后的深入学习和理解。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接
相关文章
Flutter-AnimatedWidget组件源码示例解析
这篇文章主要为大家介绍了Flutter-AnimatedWidget组件源码示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-06-06Android中的SpannableString与SpannableStringBuilder详解
这篇文章主要给大家介绍了关于Android中SpannableString与SpannableStringBuilder的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。2017-10-10Android开发Jetpack组件DataBinding用例详解
这篇文章主要为大家介绍了Android开发Jetpack组件DataBinding的使案用例详解说明,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步2022-02-02android使用SharedPreferences进行数据存储
Android平台给我们提供了一个SharedPreferences类,它是一个轻量级的存储类,特别适合用于保存软件配置参数。有兴趣的可以了解一下。2017-02-02Android RecyclerView添加搜索过滤器的示例代码
本篇文章主要介绍了Android RecyclerView添加搜索过滤器的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-01-01Android编程实现canvas绘制饼状统计图功能示例【自动适应条目数量与大小】
这篇文章主要介绍了Android编程实现canvas绘制饼状统计图功能,可实现自动适应条目数量与大小的功能,涉及Android基于canvas的图形绘制相关操作技巧,需要的朋友可以参考下2017-01-01
最新评论