0
我使用Blender插件導出JSON文件,但出於某種原因,我無法導出我的對象的紋理。Three.js使用JSON從攪拌器導入對象
JSON文件的材料部分的樣子:
"materials" : [ {
"DbgColor" : 15658734,
"DbgIndex" : 0,
"DbgName" : "new",
"blending" : "NormalBlending",
"colorAmbient" : [0.6400000190734865, 0.6400000190734865, 0.6400000190734865],
"colorDiffuse" : [0.6400000190734865, 0.6400000190734865, 0.6400000190734865],
"colorEmissive" : [0.1, 0.1, 0.1],
"colorSpecular" : [0.5, 0.5, 0.5],
"depthTest" : true,
"depthWrite" : true,
"shading" : "Lambert",
"specularCoef" : 50,
"transparency" : 1.0,
"transparent" : false,
"vertexColors" : false
}],
和JavaScript的部分是:
var loader = new THREE.JSONLoader();
loader.load("./try.js", function(geometry,materials) {
material = new THREE.MeshFaceMaterial(materials);
object = new THREE.Mesh(geometry,material);
object.scale.set(0.5,0.5,0.5);
object.position.x=0;
object.position.y=0;
object.position.z=0;
});
loader.onLoadComplete=function(){ //render
}
我跟着這個https://www.youtube.com/watch?v=cUkNOF8eORA來創建對象。 (不是我會做什麼,但以這種方式我們有相同的起點)
有你的材料中沒有定義紋理貼圖。看看在JSON格式定義在https://github.com/mrdoob/three.js/wiki – gaitat 2014-10-29 17:30:09
是的,我明白了。我的問題是爲什麼攪拌機插件沒有導出紋理貼圖 – BiA 2014-10-29 17:31:40
看來,解開包裝(mesh-UV unwrap - Unvrap)是至關重要的,因爲它創建了UV座標並允許導出器將它們保存在.json文件中 – BiA 2014-10-31 09:11:39