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);
相关推荐
白总Server42 分钟前
GaussDB 分布式数据库调优(架构到全链路优化)
java·网络·c++·架构·go·scala·数据库架构
whoarethenext1 小时前
C++/OpenCV地砖识别系统结合 Libevent 实现网络化 AI 接入
c++·人工智能·opencv
Antonio9151 小时前
【Linux】Linux基础I/O
linux·c++
虾球xz1 小时前
CppCon 2015 学习:C++ devirtualization in clang
开发语言·c++·学习
呆呆的小鳄鱼2 小时前
IO之详解cin(c++IO关键理解)
linux·c语言·c++
看到我,请让我去学习2 小时前
C++核心编程(动态类型转换,STL,Lanmda)
c语言·开发语言·c++·stl
羚羊角uou2 小时前
【C++】模拟实现map和set
java·前端·c++
泽02022 小时前
C++之模板进阶
开发语言·c++·算法
byte轻骑兵5 小时前
【C++特殊工具与技术】优化内存分配(五):显式析构函数的调用
开发语言·c++
谷雨不太卷5 小时前
AVL树的实现
数据结构·c++·算法