QT5 OpenGL(七, 透明度设置)
来源:互联网 发布:中云数据科技有限公司 编辑:程序博客网 时间:2024/04/29 23:12
- 概要
- 效果图
- 正常立体图
- 透明度为05的
- 透明度为01的
- 图形设置为绿色时
- 部分代码的更改
概要
我们在做与UI或者图形,图片有关的项目时,总会遇到透明度的设置。 opengl也有自己的透明度设置。 值得一提得是,普通的平面图形透明度设置是改变单张平面的显示效果, 而立体图形的呢,这就会使多个平面的图形出现。
效果图
正常立体图
透明度为0.5的
透明度为0.1的
图形设置为绿色时
部分代码的更改
void OpenglWidget::initializeGL(){ loadGLTextures(); glEnable( GL_TEXTURE_2D ); glShadeModel( GL_SMOOTH ); glClearColor( 0.0, 0.0, 0.0, 0.5 ); glClearDepth( 1.0 ); glEnable( GL_DEPTH_TEST ); glDepthFunc( GL_LEQUAL ); glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); glLightfv( GL_LIGHT1, GL_AMBIENT, lightAmbient ); glLightfv( GL_LIGHT1, GL_DIFFUSE, lightDiffuse ); glLightfv( GL_LIGHT1, GL_POSITION, lightPosition ); glEnable( GL_LIGHT1 ); glColor4f(1, 1, 1, 0.5); glBlendFunc( GL_SRC_ALPHA, GL_ONE );}
其实最主要的就是加了
glColor4f(1, 1, 1, 0.5); glBlendFunc( GL_SRC_ALPHA, GL_ONE );
这两行的代码。
WINGDIAPI void APIENTRY glColor4f (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
这个函数前三个参数表示色彩值, 分别为red green blue, 而最后一个值 为alpha通道。
前面色彩值的设置决定了立体图形整体的色彩基调。 而最后一个alpha通道 设置区间为0 - 1 , 0表示完全透明,而1表示完全不透明。
0 0
- QT5 OpenGL(七, 透明度设置)
- openGL 深度测试与透明度设置
- OpenGL ES 设置透明度不能【双面透明】的问题解决办法
- OpenGL学习笔记(七):创建第一个Qt5.9.3 OpenGL工程模版(与平台无关)
- 设置透明度
- 透明度设置
- 设置透明度
- 透明度设置
- 设置透明度
- OpenGL(七) 光照模型及设置
- QT5 OPENGL问题
- QT5 OPenGL(一)
- Qt5.1 + vs2012 OpenGL
- QT5+OpenGL<一>
- DIV透明度设置
- 设置窗口的透明度
- 设置窗口的透明度
- 设置表单的透明度
- 【JQuery】图片放大镜插件——jqzoom
- Unicode中文和特殊字符的编码范围
- 在eclipse中设计BPMN 2.0工作流定义的根本步骤
- Android开发常见异常与错误系列(二)
- LeetCode *** 101. Symmetric Tree
- QT5 OpenGL(七, 透明度设置)
- 给每一行的修改加一个事件
- ssh免密码登录
- 画江湖之独门暗器指针
- final, finally, finalize
- mybatis中的#和$的区别
- 任务的批量提交invokeAll两种方法的区别
- 欢迎使用CSDN-markdown编辑器
- CI伪静态分页