天空盒
先展示一个效果图
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j7qGzsyy-1594654641142)(static/天空盒.png)]](https://i-blog.csdnimg.cn/blog_migrate/4bed9cbb49210b83dbfdfc888f282c39.png#pic_center)
多个纹理组合起来映射到一张纹理上的一种纹理类型:立方体贴图(Cube Map)。
简单来说,立方体贴图就是一个包含了6个2D纹理的纹理,每个2D纹理都组成了立方体的一个面:一个有纹理的立方体。你可能会奇怪,这样一个立方体有什么用途呢?为什么要把6张纹理合并到一张纹理中,而不是直接使用6个单独的纹理呢?立方体贴图有一个非常有用的特性,它可以通过一个方向向量来进行索引/采样。假设我们有一个1x1x1的单位立方体,方向向量的原点位于它的中心。使用一个橘黄色的方向向量来从立方体贴图上采样一个纹理值会像是这样:

立方体贴图创建
unsigned int textureID;
glGenTextures(1, &textureID);
//GL_TEXTURE_CUBE_MAP 注意参数
glBindTexture(GL_TEXTURE_CUBE_MAP, textureID);
//和OpenGL的很多枚举(Enum)一样,它们背后的int值是线性递增的,所以如果我们有一个纹理位置的数组或者vector,我们就可以从GL_TEXTURE_CUB
290


&spm=1001.2101.3001.11974&articleId=107327977&d=1&t=3&u=817b6eb88f4f4f43a842cf034a7124ed)

被折叠的 条评论
为什么被折叠?



