需要一些帮助才能将文件加载到three.js。我们正在使用Marvelous Designer应用程序创建3d模型,并使用three.js库在Web中显示它们。
问题是某些加载的对象有黑色纹理。我试图添加光,但这对我没有帮助。有时对象的一切都很好(意味着它有自然的颜色而不是黑色纹理) 例如:
两个对象都以相同的方式创建
这是我的代码:
controls = new THREE.OrbitControls(camera, container);
scene = new THREE.Scene();
var lighting = false;
var ambient = new THREE.AmbientLight(0xffffff, 1.0);
scene.add(ambient);
var keyLight = new THREE.DirectionalLight(new THREE.Color('hsl(30, 100%, 75%)'), 1.0);
keyLight.position.set(-100, 0, 100);
var fillLight = new THREE.DirectionalLight(new THREE.Color('hsl(240, 100%, 75%)'), 0.75);
fillLight.position.set(100, 0, 100);
var backLight = new THREE.DirectionalLight(0xffffff, 1.0);
backLight.position.set(100, 0, -100).normalize();
var mtlLoader = new THREE.MTLLoader();
mtlLoader.setBaseUrl(params.folder);
mtlLoader.setPath(params.folder);
mtlLoader.load(params.mtl, function (materials) {
materials.preload();
var objLoader = new THREE.OBJLoader();
objLoader.setMaterials(materials);
objLoader.setPath(params.folder);
objLoader.load(params.obj, function (object) {
scene.add(object);
}, onProgress, onError);
}, onProgress, onError);