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);
相关推荐
AA陈超2 小时前
虚幻引擎5 GAS开发俯视角RPG游戏 P06-14 属性菜单 - 文本值行
c++·游戏·ue5·游戏引擎·虚幻
云知谷2 小时前
【经典书籍】C++ Primer 第15章类虚函数与多态 “友元、异常和其他高级特性” 精华讲解
c语言·开发语言·c++·软件工程·团队开发
weixin_582985183 小时前
OpenCV cv::Mat.type() 以及类型数据转换
c++·opencv·计算机视觉
oioihoii5 小时前
深入理解 C++ 现代类型推导:从 auto 到 decltype 与完美转发
java·开发语言·c++
报错小能手5 小时前
项目——基于C/S架构的预约系统平台 (1)
开发语言·c++·笔记·学习·架构
lingran__5 小时前
算法沉淀第十天(牛客2025秋季算法编程训练联赛2-基础组 和 奇怪的电梯)
c++·算法
oioihoii7 小时前
当无符号与有符号整数相遇:C++中的隐式类型转换陷阱
java·开发语言·c++
Yupureki7 小时前
从零开始的C++学习生活 13:红黑树全面解析
c语言·数据结构·c++·学习·visual studio
2401_876221347 小时前
Euler
c++·数学·算法
赵杰伦cpp9 小时前
C++的继承机制精讲
java·开发语言·c++·后端