aoMap只适用于THREE.BufferGeometry吗?

时间:2017-04-18 05:16:05

标签: javascript three.js

我应该如何使aoMap适用于普通的THREE.Geometry?有演示吗?

 var uvs = geometry.attributes.uv.array; 

 geometry.addAttribute('uv2', new THREE.BufferAttribute(uvs, 2));

以上代码适用于BufferGeometry。

1 个答案:

答案 0 :(得分:2)

aoMap需要第二组UV。如果需要,可以通过复制第一组来创建第二组UV。

这是Geometry的方法:

geometry.faceVertexUvs[ 1 ] = geometry.faceVertexUvs[ 0 ];

这是BufferGeometry

的方法
var uvs = geometry.attributes.uv.array;
geometry.addAttribute( 'uv2', new THREE.BufferAttribute( uvs, 2 ) );

......或者更简单:

geometry.attributes.uv2 = geometry.attributes.uv;

three.js r.88