是否可以将两种材质分配到一个已使用JSONLoader加载的网格?带JSONLoader的多种材质?
我在搅拌机中制作了一个简单的字符并将其导出为three.js格式,其中包含变形目标和UV。
我试图给人体分配纯色材料,并将图片分配给我角色的头部(http://touhou.ru/dev/webgl-test-stackoverflow/kourindouhime.jpg),但在加载网格和材质后,我得到一个灰色网格。
这里的量产版我的项目(使用WASD移动,当你看到一个灰色的玩家网你会被控制,这正是我在谈论的东西):http://touhou.ru/dev/webgl-test-stackoverflow/
而这里的路我正在使用JSONLoader加载网格和材质:
var player_loader = new THREE.JSONLoader();
player_loader.load("running_babe.js", function(geo, material) {
material[0].morphTargets = true;
material[1].morphTargets = true;
var materials = new THREE.MeshFaceMaterial(material);
player = new THREE.Mesh(geo, materials);
scene.add(player);
});
我做错了什么?
更新:问题出在我的出口。现在第二种材料看起来如此:
{
"DbgColor" : 15597568,
"DbgIndex" : 1,
"DbgName" : "Material.001",
"blending" : "NormalBlending",
"colorAmbient" : [0.6400000190734865, 0.6400000190734865, 0.6400000190734865],
"colorDiffuse" : [0.6400000190734865, 0.6400000190734865, 0.6400000190734865],
"colorSpecular" : [0.5, 0.5, 0.5],
"depthTest" : true,
"depthWrite" : true,
"mapDiffuse" : "kourindouhime.jpg",
"mapDiffuseWrap" : ["repeat", "repeat"],
"shading" : "Lambert",
"specularCoef" : 50,
"transparency" : 1.0,
"transparent" : false,
"vertexColors" : false
}
它的工作原理非常好。感谢你们。
非常感谢您指出这一点! – 2013-02-18 14:50:47