我正在尝试使用three.js而不是在Unity3D中已经实现的视图来显示简单的3D模型。该模型是fbx文件,纹理是4096x4096像素jpg文件。
按照示例和我创建的场景的文档进行操作,但是模型显示出明显的可见裂缝,而相同的模型和纹理在Unity上完美呈现。
这是一个代码片段,显示了我如何加载模型并在其上应用纹理:
var loader = new THREE.FBXLoader();
loader.load( 'models/s01.fbx', function ( object ) {
var texture = new THREE.TextureLoader().load( "models/00.jpg" );
object.scale.set( 50,50,50 );
object.rotation.x = - Math.PI / 2;
object.position.set( 0, 100, 0 );
object.traverse( function ( child ) {
if ( child.isMesh ) {
child.material= new THREE.MeshBasicMaterial();
child.material.map = texture;
child.material.needsUpdate = true;
}
} );
scene.add( object );
} );
结果显示在下图中:
在Unity中呈现的同一模型:
我错过了什么吗? 谢谢
编辑:我怀疑伪影与纹理和UV贴图有关。这是纹理(按比例缩放):