Может ли Object.oader Three.js загружать текстуры?
Three.js версия 0.0.70, блендер версия 2.73a
У меня есть сцена, экспортированная изсмеситель вформат Three.js JSON используя новыйio_three
(неio_three_mesh
экспортер.
Я могу импортировать сцену в three.js, используяObjectLoader
:
var objectLoader = new THREE.ObjectLoader();
objectLoader.load('assets/models/exportedScene.json', function(imported) {
scene.add(imported);
});
К сожалению, к объекту не применяется текстура, только материал. Как я вижу изexportedScene.json
файл, есть информация о текстуре в файле:
"images": [{
"url": "blue.jpg",
"uuid": "DFE5BBBF-601B-48EA-9C05-B9CB9C07D92E",
"type": "Geometry",
"name": "blue.jpg"
}],
"materials": [{
"color": 200962,
"specular": 5066061,
"shininess": 8,
"ambient": 200962,
"depthTest": true,
"depthWrite": true,
"name": "partitionMat",
"emissive": 0,
"uuid": "A705A33F-68C1-489C-A702-89A0140247AB",
"blending": "NormalBlending",
"vertexColors": false,
"map": "73277351-6CCF-4E84-A9F0-D275A101D842",
"type": "MeshPhongMaterial"
}],
"textures": [{
"minFilter": "LinearMipMapLinearFilter",
"wrap": ["RepeatWrapping","RepeatWrapping"],
"magFilter": "LinearFilter",
"mapping": "UVMapping",
"image": "DFE5BBBF-601B-48EA-9C05-B9CB9C07D92E",
"repeat": [1,1],
"name": "carpetTexture",
"anisotropy": 1.0,
"uuid": "73277351-6CCF-4E84-A9F0-D275A101D842",
"type": "Geometry"
}],
Но, как я уже говорил, текстура не применяется. Я попытался поместить текстурный файл рядом с HTML-скриптом js, но это не сработало.
Может быть, мой первоначальный подход неверен, и я должен импортировать текстуры, похожие наhttp://threejs.org/examples/webgl_loader_obj.html? Тем не менее, это об использовании ObjLoader (не ObjectLoader), и я не уверен, что это правильно.