Qt 中用于管理 OpenGL 着色器程序的类——QOpenGLShaderProgram

QOpenGLShaderProgram 是 Qt 中用于管理 OpenGL 着色器程序的一个类。它封装了着色器的编译、链接和使用过程,使得 OpenGL 着色器程序的管理更加简单和高效。通过 QOpenGLShaderProgram,你可以轻松地创建、使用和管理顶点着色器和片段着色器。

主要功能和方法

  • addShader:向程序添加一个着色器。
  • addShaderFromSourceCode:从源代码字符串添加一个着色器。
  • addShaderFromSourceFile:从文件中加载并添加一个着色器。
  • link:链接所有添加到程序中的着色器。
  • bind:绑定这个程序,使其成为当前的活动程序。
  • release:释放这个程序,使其不再是当前的活动程序。
  • setUniformValue:设置统一变量(uniform)的值。

典型使用步骤

  1. 创建 QOpenGLShaderProgram 实例
  2. 添加顶点着色器和片段着色器
  3. 链接程序
  4. 在渲染循环中绑定和释放程序

可以将顶点着色器片段着色器添加到资源文件中

可以通过addShaderFromSourceFile添加顶点着色器和片段着色器

QOpenGLShaderProgram shaderProgram; // 着色器程序
shaderProgram.addShaderFromSourceFile(QOpenGLShader::Vertex,":/shaders/shapes.vert");
shaderProgram.addShaderFromSourceFile(QOpenGLShader::Fragment,":/shaders/shapes.frag");
shaderProgram.link();

  • 8
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值