gpt4 book ai didi

javascript - 如何在 three.js 中将图像映射到部分球体上

转载 作者:行者123 更新时间:2023-11-30 19:34:06 32 4
gpt4 key购买 nike

我用球体图 block 创建了一个完整的球体,当它们在 FOV 内时单独处理它们。

为此,我将等距柱状全景图分成几张二次图像,以将它们映射到这些图 block 上。但不知何故,纹理在每个图 block 中的最高和最低行段上发生了变化。

一些导入的正方形图像示例:

shifted tiles

原始测试图像:

shifted tiles

如何才能将纹理正确映射到图 block ?创建图 block 的代码如下:

/*
segment Data:
x/y are generated by a loop
maxX/maxY are the maximum values of these loops
*/
sphere = new THREE.SphereGeometry(radius, 4, 4, segmentData.x * 2 * Math.PI / segmentData.maxX, 2 * Math.PI / segmentData.maxX, segmentData.y * Math.PI / segmentData.maxY, Math.PI / segmentData.maxY);
texture = new THREE.TextureLoader().load(tileImagePath);
material = new THREE.MeshBasicMaterial({map: texture});
mesh = new THREE.Mesh(sphere, material);
scene.add(mesh);

我对 three.js 很陌生,所以这可能是一个非常简单的问题。

希望有人能帮忙?

最佳答案

感谢ScieCode ,结果证明,问题是由版本 r103 和 r104 中的错误引起的。

它将在下一个版本中修复:https://github.com/mrdoob/three.js/issues/16454

关于javascript - 如何在 three.js 中将图像映射到部分球体上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56127822/

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