0

我遇到了问题。我想创建一个应用程序,让人们可以在天空盒视图中观看他们用手机拍摄的全景照片。

为此,我需要将照片切成立方体贴图。我在互联网上搜索了一个算法,但我没有找到任何东西(我能理解)。

有一些程序正在从全景图片中制作天空盒,但我不知道他们的算法:/

4

1 回答 1

0

简单的方法是保持图像的原始格式并使用天空圆柱体而不是天空盒。然后你可以根据顶点的高度和角度应用纹理坐标,你就完成了。

如果你想使用天空盒,你可以在像素着色器中计算正确的纹理坐标:

u = atan(fragWorldPosX - cameraWorldPosX, fragWorldPosZ - cameraWorldPosZ) * scale1;
v = 0.5 + (fragWorldPosY - cameraWorldPosY) * scale2;

其中scale1scale2是指定图片水平和垂直视野的参数。

在圆柱体和盒子中都不需要顶部或底部表面。

于 2015-06-10T14:16:28.373 回答