我需要使用three.js显示collada文件(.dae),我可以加载模型但显示没有纹理,使用此代码
var loader = new THREE.ColladaLoader( loadingManager );
loader.options.convertUpAxis = true;
loader.load( './car.dae', function ( collada ) {
car = collada.scene;
car.material =
THREE.TextureLoader("../model/car_white.jpg");
我尝试了其他代码,只有这个代码适用于模型,但没有纹理 需要你的支持来添加我的纹理。
答案 0 :(得分:1)
一般来说,您可以将纹理添加到模型中,如下所示:
var textureLoader = new THREE.TextureLoader();
var texture = textureLoader.load('../model/car_white.jpg');
loader.load( './car.dae', function ( collada ) {
collada.scene.traverse(function (node) {
if (node.isMesh) {
node.material.map = texture;
}
});
});
有关详细信息,请参阅THREE.Material和THREE.TextureLoader的文档。
注意:正如评论中提到的@gaitat一样,如果它们没有相互设计,并且模型不是'很简单。如果是这种情况,您可能需要在Blender(或其他软件)中添加纹理,您可以在其中创建UV,并导出结果。