2017-12-14 7 views
1

first personコントロールをthree.jsシーンに追加しました。シーンの端が表示されないようにカメラのビューを制限したいと思います。マウス、W、A、S、D、および矢印コントロールを含むthree.jsライブラリのfirstpersoncontrols.jsを使用しています。コントロールでカメラビューをどのように制限できますか?私はすでに制御距離を制限しようとしました。ここ は、私がこれまでのカメラとコントロールに関するしているものです:Three.js- 3Dシーンでのカメラの表示を制限するにはどうすればよいですか?

camera = new THREE.PerspectiveCamera(55, window.innerWidth/window.innerHeight, 1, 20000); 
      camera.position.set(30, 30, 100); 
      // 
      controls = new THREE.FirstPersonControls(camera); 
         controls.movementSpeed = 100; 
         controls.enabled=true; 
         controls.maxDistance=50;//no change 
         controls.minDistance=10 
         controls.enablezoom=false; 

https://codepen.io/anon/pen/baNJGR

答えて

1

あなたのカメラが見るべきか広範囲に調整したい場合、あなたは近くと遠く、FOVを調整することができますパラメータ(PerspectiveCamera(fov、aspect、near、far))。

例えば、(codepen例でそれを試してみてください)、これらの値でカメラを作成してみてください、

camera = new THREE.PerspectiveCamera(50, window.innerWidth/window.innerHeight, 1, 200); 

あなたはカメラをシミュレートビューの幅を決定し、どの程度まで調整するこれまでのパラメータを変更するにはFOVを変更することができますカメラが見えるはずです。

+0

動作しませんでした。スカイボックスが歪んでいるか、飛行機がオフだった – redfelix

+0

これがあなたの望む結果かどうかわかりません。しかし、これをチェックしてくださいhttps://codepen.io/HariKrishnanV/pen/ypNZRy – HariV

+0

カメラはまだシーンから出ることができ、それはskyboxを歪ませます。 – redfelix

関連する問題