处理从threejs r47到threejs r58的部分代码移植。我在拉伸加载的图像时遇到了画布 2d 纹理的问题。
相应的代码片段如下:
var geometry = new THREE.SphereGeometry( 200, 80, 60 );
for ( var i = 0, l = geometry.faceVertexUvs[ 0 ].length; i < l; i ++ ) {
for ( var j = 0, jl = geometry.faceVertexUvs[ 0 ][ i ].length; j < jl; j ++ ) {
var uv = geometry.faceVertexUvs[ 0 ][ i ][ j ];
var a = uv.v * Math.PI - Math.PI / 2;
a = Math.sin(a);
uv.v = 0.5 - Math.log( ( 1 + a ) / ( 1 - a ) ) / ( 4 * Math.PI );
uv.v = 1 - uv.v;
}
}
我认为,从 Threejs r47 到 r58,geometry.faceVertexUvs 的使用方式有一些变化。任何帮助,热烈欢迎!提前致谢...