前言:当前我们已经在场景中添加好了一个对象,并且渲染完成。
之前说过我们所看到的都是相机取景得到的,那么改变相机的位置就可以,得到不同的效果了。
代码ex:
camera.position(x,y,z);
每次改变相机位置后,再次渲染,便是我们常见的3d场景,但是我们不必要每次都超级麻烦的写一堆相机控制的代码THREEJS提供了常见的相机控制。
第一步,引入相机控制的文件
<script src="OrbitControls.js"/>
第二步 声明一个相机控制 并且实现它
var controls;
function initcontrols() {
controls=newTHREE.OrbitControls(camera,renderer.domElement);
}
initcontrols()
第三部 :问题来了,每次改变相机角色后都需要重新渲染,但是我们之前的渲染器都是单次执行的。
这里我们引入了一个新的东西,逐帧渲染。
function animate() {
requestAnimationFrame(animate)
renderer.render(scene,camera)
}
请求在每一帧都进行一次渲染。
本节代码 http://pan.baidu.com/s/1qXSQm52
网友评论