我使用Three.js加载.obj + .mtl文件以在浏览器中查看3d模型。 目前刚开始,如果有人能帮到我,我会很高兴:)
我还不明白的两件事:
The model on which I am working(需要用鼠标拖动)
在场景的开头,对象是透明的,并且能够看到它需要拖动
如何更改对象的黑色? (下面有一张图片为黑色)
我的目标是让它看起来更多或更少like here in sketchfab
大部分代码来自脚本教程中的城堡示例ׂ(写在页面顶部)
我将不胜感激任何信息或指导。
答案 0 :(得分:0)
您是否尝试修改环境/定向光组件或添加它们?看起来你必须配置光照到模型的方式。
ambient = new THREE.AmbientLight(0xFFFFFA); //most black
scene.add( ambient );
var directionalLight = new THREE.DirectionalLight( 0xffeedd ); //to see shaders
directionalLight.position.set( 0, 0, 1 ).normalize(); //front of scene
scene.add( directionalLight );
您也可以在mtl文件上手动更改材质的Ks和Ke组件。一个常见的问题是它们默认配置如下:
Ks 0.0000 0.0000 0.0000
Ke 0.0000 0.0000 0.0000
他们可能会使用其他一些值,例如1而不是0,以便校正光反射。
您也可能有兴趣将obj置于场景中心,您可以通过设置模型负载上的位置来实现,如
var loader = new THREE.OBJMTLLoader();
loader.load( 'models/'mymodel.obj', 'textures/mymodel.mtl', function ( object ){
//after the load of your model you can modify it's initial position by
object.position.set(0,0,0); //in one step
object.position.y = -80; //or by separated components
scene.add(object);
});
或者您也可以通过
修改相机参数camera.position.z = 550 ; //for example
我希望你能做点什么。