Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript webGL e.js:将相机指向.obj模型_Javascript_Three.js - Fatal编程技术网

Javascript webGL e.js:将相机指向.obj模型

Javascript webGL e.js:将相机指向.obj模型,javascript,three.js,Javascript,Three.js,我正在努力研究如何将相机直接对准obj模型。我故意将obj模型移离中心,以便在实现此目标时,它将在帧中居中。我试过使用camera.lookAt(object.position)aftercamera=new THREE.PerspectiveCamera(45,window.innerWidth/window.innerHeight,12000)但不幸的是,这只是呈现一个黑屏 var容器,stats; 摄像机、场景、渲染器; //var mouseX=0,mouseY=0; var wind

我正在努力研究如何将相机直接对准obj模型。我故意将obj模型移离中心,以便在实现此目标时,它将在帧中居中。我试过使用
camera.lookAt(object.position)
after
camera=new THREE.PerspectiveCamera(45,window.innerWidth/window.innerHeight,12000)但不幸的是,这只是呈现一个黑屏


var容器,stats;
摄像机、场景、渲染器;
//var mouseX=0,mouseY=0;
var windowHalfX=window.innerWidth/2;
var windowHalfY=window.innerHeight/2;
init();
制作动画();
函数init(){
container=document.createElement('div');
文件.正文.附件(容器);
摄像头=新的三个透视摄像头(45,window.innerWidth/window.innerHeight,12000);
摄像机位置z=300;
摄像机位置x=100;
摄像机位置y=500
//场面
场景=新的三个。场景();
var环境光=新的三个环境光(0x4444);
场景。添加(环境光);
var方向灯=新的三个方向灯(0xffeedd);
directionalLight.position.set(0,0,1).normalize();
场景。添加(方向光);
//模型
var onProgress=函数(xhr){
if(xhr.Length可计算){
var percentComplete=xhr.loaded/xhr.total*100;
log(Math.round(完成百分比,2)+'%download');
}
};
var onError=函数(xhr){
};
添加(/\.dds$/i,新的三个.DDSLoader());
var loader=new THREE.OBJMTLLoader();
loader.load('obj/male02/male02.obj','obj/male02/male02_dds.mtl',函数(对象){
object.position.y=-80;
object.position.x=-80;
object.position.z=-80;
场景。添加(对象);
},onProgress,onError);
//
renderer=new THREE.WebGLRenderer();
renderer.setPixelRatio(window.devicePixelRatio);
renderer.setSize(window.innerWidth、window.innerHeight);
container.appendChild(renderer.doElement);
//document.addEventListener('mousemove',onDocumentMouseMove,false);
//
addEventListener('resize',onWindowResize,false);
}
函数onWindowResize(){
windowHalfX=window.innerWidth/2;
windowHalfY=window.innerHeight/2;
camera.aspect=window.innerWidth/window.innerHeight;
camera.updateProjectMatrix();
renderer.setSize(window.innerWidth、window.innerHeight);
}
函数animate(){
请求动画帧(动画);
render();
}
函数render(){
摄像机。注视(场景。位置);
渲染器。渲染(场景、摄影机);
}

这里您将相机指向场景位置。。你永远不会动。镜头内。注视(场景。位置);如果您让代码在某个地方实时运行,例如作为JSFIDLE,那么尝试提供帮助会容易得多。随着经验的增加,我一定会上传到JSFIDLE。非常感谢您的回答-是的,我不需要看场景,而是物体(camera.lookAt(object.position););更重要的是,在“scene.add(object);”&},onProgress,onError)之间的var loader函数上下文中;现在它工作了,谢谢你的帮助