Threes.js入门篇之6 - 场景漫游

THREE.js 支持两种形式的漫游,第一人称漫游(First Person) 和 飞行(Fly),可以分别参考 example 下的 “misc_fps.html” 和 “misc_controls_fly.html”。


一. 第一人称漫游

       例子中的效果是这样的,通过 【ASDW】控制平移,通过【←↑↓→】控制朝向(try 一下)。

       漫游主要是通过 camera 的参数调整来进行控制,请参考代码!

        

二. Fly

       Fly模式提供了一个飞行控制器(FlyControls.js),参考漫游器设置代码:

[html]  view plain  copy
  1. // 漫游器设置    
  2. controls = new THREE.FlyControls( camera );  
  3.   
  4. controls.movementSpeed = 0.1;  
  5. controls.domElement = container;  
  6. controls.rollSpeed = Math.PI / 24;  
  7. controls.autoForward = false;  
  8. controls.dragToLook = false;  
       通过 controls 的 update 完成控制更新:

[html]  view plain  copy
  1. controls.update( delta );  


       THREE.js 封装的漫游器基本上能满足大多数情况下的使用,建议在其基础上进行修改以满足个性化设置,当然如果不想仅停留在用的阶段的话,可以写一个自己的控制器。这更能加深熟练应用!

猜你喜欢

转载自blog.csdn.net/allenjiao/article/details/79557903
今日推荐