gpt4 book ai didi

ios - 使用 GLKit 加载立方体贴图后,iOS 上 openGL ES 2.0 的正确立方体贴图坐标是多少?

转载 作者:行者123 更新时间:2023-11-28 19:56:22 25 4
gpt4 key购买 nike

为了调试我的着色器,我试图只显示立方体贴图的正面。立方体贴图是一个 125x750 的图像,其中 6 个面彼此重叠:

Cube map

首先,我使用 GLKit 加载立方体贴图:

_cubeTexture = [GLKTextureLoader cubeMapWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"uffizi_cube_map_ios" ofType:@"png"] options:kNilOptions error:&error];

然后我将它加载到着色器中:

glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_CUBE_MAP, self.cubeTexture.name);
glUniform1i( glGetUniformLocation( self.shaderProgram, "cube"), 0);

然后在片段着色器中:

gl_FragColor = textureCube(cube, vec3(-1.0+2.0*(gl_FragCoord.x/resolution.x),-1.0+2.0*(gl_FragCoord.y/resolution.y),1.0));

这显示了一个扭曲的图像,它似乎是立方体贴图顶部的一部分:

Distorted image

它不应该被扭曲,它应该显示正确的脸,而不是顶面。

我找不到任何描述坐标如何映射到立方体的文档,所以我做错了什么?

最佳答案

看来cubeMapWithContentsOfFile 有问题。 cubeMapWithContentsOfFiles 方法(采用 6 张图像的数组的方法)在模拟器上完美运行。 (设备上的这两种方法存在不同的问题)。

关于ios - 使用 GLKit 加载立方体贴图后,iOS 上 openGL ES 2.0 的正确立方体贴图坐标是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26171580/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com