相关疑难解决方法(0)

如何水平翻转Three.js纹理

我正在制作一个360度观看者,所以纹理在圆柱体内.问题是它们看起来是水平倒置的.

我知道texture.flipY,但我还没有找到一个texture.flipX的来源.

那么如何直接在代码中水平或沿x轴翻转纹理呢?(不使用图像编辑器)

javascript three.js

8
推荐指数
2
解决办法
8639
查看次数

三.JS部分球体UV贴图

上一个问题中,我希望将立体投影映射到球体上,以便直播虚拟现实事件。

我最终学到了很多关于 UV 贴图的知识,并且能够构建一个看起来令人难以置信的非常精确的贴图。然而,我不喜欢这种映射方法的一件事:有一个技巧,球体的底部必须映射到“无”,所以我将其映射到纹理的一角。

为了改进这个解决方案,我尝试根据SphereGeometry 上的 Three.JS 文档调整 theta 长度来仅创建部分球体。

虽然我得到了正确的球体形状,但我注意到 UV 贴图有些奇怪:

var fov = 270;
var geometry = new THREE.SphereGeometry(
    1, // Radius
    50, // Horizontal segments
    50, // Vertical segments
    0, // Phi start
    2 * Math.PI, // Phi length
    Math.acos((360 - fov) * Math.PI / 180 / 2), // Theta start
    Math.PI - Math.acos((360 - fov) * Math.PI / 180 / 2) // Theta length
);
var minX, minY, minZ, maxX, maxY, …
Run Code Online (Sandbox Code Playgroud)

javascript 3d three.js

5
推荐指数
1
解决办法
1552
查看次数

标签 统计

javascript ×2

three.js ×2

3d ×1