openglES多纹理

绘制阴影时,在一个片元着色器中需要2个纹理。一张普通纹理,一张深度纹理。

cpp 复制代码
uniform sampler2D texId; //普通纹理
uniform sampler2DShadow depthTexId; //深度纹理

但glBindTexture只能绑定一张纹理,该怎么办呢?

这时就需要设置纹理单元,一个单元对应一个纹理。

但要注意,设置对应的uniform变量的值。

cpp 复制代码
shader.setUniform("texId",0);
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, texId);

shader.setUniform("depthTexId",1);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, depthTexId);
相关推荐
归去_来兮11 分钟前
深度学习模型在C++平台的部署
c++·深度学习·模型部署
pay4fun2 小时前
2048-控制台版本
c++·学习
hjjdebug3 小时前
ffplay6 播放器关键技术点分析 1/2
c++·ffmpeg·音视频
Azxcc04 小时前
C++异步编程入门
开发语言·c++
吐泡泡_4 小时前
C++(STL源码刨析/vector)
c++
你的冰西瓜4 小时前
C++排序算法全解析(加强版)
c++·算法·排序算法
特立独行的猫a4 小时前
11款常用C++在线编译与运行平台推荐与对比
java·开发语言·c++
笑鸿的学习笔记5 小时前
qt-C++笔记之setCentralWidget的使用
c++·笔记·qt
苏克贝塔6 小时前
Qt 图形视图框架3-事件处理与传播
c++·qt
轩情吖6 小时前
Qt的信号与槽(二)
数据库·c++·qt·信号·connect·信号槽·