1
나는 블렌더에서 3D 모델을 만들었습니다. Three.js 내보내기 도구로 내 보낸 다음 JavaScript로로드합니다. 텍스처가 표시되지 않는 한 모든 것이 잘 작동합니다. 블렌더에 텍스처를 그림으로 추가했습니다.three.js JSON 객체에 텍스처 추가
JSON 파일 :
{
"normals":[0,-1,0,...]
"vertices":[-0.0101738,1.5,6.55678,-0.0101738,1.5,...]
"materials":[{
"DbgIndex":0,
"blending":1,
"colorSpecular":[1,1,1],
"opacity":1,
"colorDiffuse":[0.8,0.554325,0.316799],
"mapDiffuseWrap":["repeat","repeat"],
"transparent":false,
"wireframe":false,
"DbgColor":15658734,
"depthWrite":true,
"specularCoef":50,
"mapDiffuse":"parket.jpg",
"mapDiffuseRepeat":[1,1],
"visible":true,
"mapDiffuseAnisotropy":1,
"shading":"phong",
"depthTest":true,
"doubleSided":false,
"colorEmissive":[0,0,0],
"DbgName":"Les"
},{
"DbgIndex":1,
"blending":1,
"colorSpecular":[1,1,1],
"opacity":1,
"colorDiffuse":[0.287043,0.0523764,0.0102247],
"transparent":false,
"wireframe":false,
"DbgColor":15597568,
"depthWrite":true,
"specularCoef":50,
"visible":true,
"shading":"phong",
"depthTest":true,
"doubleSided":false,
"colorEmissive":[0,0,0],
"DbgName":"\u010crna"
},{
"DbgIndex":2,
"blending":1,
"colorSpecular":[1,1,1],
"opacity":1,
"colorDiffuse":[0.8,0.136903,0.018619],
"transparent":false,
"wireframe":false,
"DbgColor":60928,
"depthWrite":true,
"specularCoef":50,
"visible":true,
"shading":"phong",
"depthTest":true,
"doubleSided":false,
"colorEmissive":[0,0,0],
"DbgName":"Rjava"
}],
"metadata":{
"materials":3,
"uvs":0,
"generator":"io_three",
"type":"Geometry",
"vertices":276,
"normals":109,
"faces":241,
"version":3
},
"faces":[35,22,0,1,2,0,0...]
"uvs":[]
}
JSON 로더 :
var loader = new THREE.JSONLoader();
loader.load('samosteza.json', function (geometry, material) {
mesh = new THREE.Mesh(geometry, material);
mesh.scale.x = mesh.scale.y = mesh.scale.z = 30;
mesh.translation = THREE.GeometryUtils.center(geometry);
mesh.translateY(-150);
scene.add(mesh)
}, 'parket.jpg');
사람은 텍스처를 표시하는 방법을 알아? index.html 파일과 같은 폴더에 내 텍스처 ('parket.jpg')가 있습니다.
편집 : 난 그냥 질감이 표시,하지만 propperly 것을 발견
. 나는 나무의 질감을 가지고 있으며, 모두 갈색으로 보입니다. 나는 다른 텍스처로 텍스처를 변경하려했지만 항상 텍스처에 하나의 색상을 사용했습니다.
텍스처 :
아니요, 결과는 동일합니다. – kac26
"https://threejs.org/docs/index.html#api/loaders/JSONLoader"문서에 기반하여 세 번째 매개 변수가 없어야합니다 ... 또한 자료가있는 문서를 찾습니다 [0]. 소스를 다시 확인 하시겠습니까? 또한 위의 두 줄을 어디에 추가 했습니까? – raj
방금 텍스처가 표시되었지만 제대로 표시되지 않았 음을 알았습니다. 나는 나무의 질감을 가지고 있으며, 모두 갈색으로 보입니다. 나는 다른 텍스처로 텍스처를 변경하려했지만 항상 텍스처에 하나의 색상을 사용했습니다. – kac26