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);
相关推荐
码上有光7 小时前
map与set的使用讲解
c++·set·map·平衡二叉搜索树·关联式容器
Irissgwe7 小时前
C++ STL unordered系列关联式容器详解
开发语言·c++·stl·关联式容器
fqbqrr15 小时前
2606C++,C++构的多态
开发语言·c++
小欣加油16 小时前
leetcode56 合并区间
c++·算法·leetcode·职场和发展
Yolo_TvT17 小时前
C++:析构函数
c++
Hello:CodeWorld18 小时前
C 风格变参 vs C++ 变参模板:核心区别与选型指南
c语言·c++·算法
搬砖魁首21 小时前
基础能力系列 - 多线程2 - 条件变量
c++·rust·条件变量·原子类型·线程同步互斥
chase_my_dream21 小时前
C++ + SLAM 高频面试问题整理
开发语言·c++·面试
牛油果子哥q21 小时前
【C++ STL string 】C++ STL string 终极精讲:底层原理、内存机制、全套API、深浅拷贝、易错坑点与工程实战规范
数据库·c++
凡人叶枫1 天前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发