我正在使用 three.js,我想从 r52 迁移到 r58,但我遇到了纹理和几何形状的问题。这是我遇到问题的部分: https ://github.com/pasquelin/EnigmaCube/blob/dev/js/class/Three.Map.js#L255
你对我的迁移有什么想法,让我在不同的脸上保持不同的纹理。
PS:我在 3D 方面不是超级强,我使用谷歌翻译来更好地交流哈哈。
我正在使用 three.js,我想从 r52 迁移到 r58,但我遇到了纹理和几何形状的问题。这是我遇到问题的部分: https ://github.com/pasquelin/EnigmaCube/blob/dev/js/class/Three.Map.js#L255
你对我的迁移有什么想法,让我在不同的脸上保持不同的纹理。
PS:我在 3D 方面不是超级强,我使用谷歌翻译来更好地交流哈哈。
从 r49 迁移到 r58,我遇到了同样的问题。当您遇到此类问题时,只需查看库的更改日志(https://github.com/mrdoob/three.js/wiki/Migration#r52--r53)您会注意到r53,修改了纹理系统:
几何不再具有材料属性。MeshFaceMaterials 的用法现在是这样的: new THREE.Mesh( geometry, new THREE.MeshFaceMaterials( [ material1, material2 ] ) )
所以,
var cube = new THREE.Mesh(new THREE.CubeGeometry(width, height, largeur, 1, 1, 1, materials), new THREE.MeshFaceMaterial());
变得:
var cb = new THREE.CubeGeometry( width, height, largeur, 1, 1, 1 );
var cube = new THREE.Mesh( cb, new THREE.MeshFaceMaterial(faces) );
/!\ 注意 THREE.MeshFaceMaterial 是单数,虽然它在更新日志中是复数