我有一个带增强现实的Three.js项目,现在我尝试加载带纹理的模型.出于某种原因,我的模型是黑色的,我没有纹理.我在blender中检查了框以导出图像,我也看到在t-rex(我正在使用的模型)的.js文件中它列出了纹理,但是我的应用程序不会加载它.
编辑(添加代码) 我用来加载模型的代码:
new THREE.JSONLoader().load("models/trex.json", function(geometry) {
var material = new THREE.MeshFaceMaterial();
var dino = new THREE.Mesh(geometry, material);
dino.position.z = -50;
dino.scale.x = dino.scale.y = dino.scale.z = 2;
dino.updateMatrix();
dino.overdraw = true;
marker.object3d.add(dino);
});
Run Code Online (Sandbox Code Playgroud)
我将它添加到标记对象,因为我正在使用标记,如果我显示标记我想在标记上(或在其上方)绘制trex.
trex模型与此相同,但我在blender中打开它并使用最新版本的blender到three.js导出器:http://alteredqualia.com/three/examples/webgl_trex.html
我的trex.json文件看起来像这样:
{
"metadata" :
{
"formatVersion" : 3.1,
"generatedBy" : "Blender 2.63 Exporter",
"vertices" : 23273,
"faces" : 23268,
"normals" : 20842,
"colors" : 0,
"uvs" : [11497],
"materials" : 1,
"morphTargets" : 0,
"bones" : 0
},
"scale" : 0.0500,
"materials": …Run Code Online (Sandbox Code Playgroud)