THREE.js 支持两种形式的漫游,第一人称漫游(First Person) 和 飞行(Fly),可以分别参考 example 下的 “misc_fps.html” 和 “misc_controls_fly.html”。
一. 第一人称漫游
例子中的效果是这样的,通过 【ASDW】控制平移,通过【←↑↓→】控制朝向(try 一下)。
漫游主要是通过 camera 的参数调整来进行控制,请参考代码!
二. Fly
Fly模式提供了一个飞行控制器(FlyControls.js),参考漫游器设置代码:
// 漫游器设置
controls = new THREE.FlyControls( camera );
controls.movementSpeed = 0.1;
controls.domElement = container;
controls.rollSpeed = Math.PI / 24;
controls.autoForward = false;
controls.dragToLook = false; 通过 controls 的 update 完成控制更新:
controls.update( delta );
THREE.js 封装的漫游器基本上能满足大多数情况下的使用,建议在其基础上进行修改以满足个性化设置,当然如果不想仅停留在用的阶段的话,可以写一个自己的控制器。这更能加深熟练应用!
转载请注明原文地址: https://ju.6miu.com/read-25944.html