2017-12-14 2 views
1

first person 컨트롤을 three.js 장면에 추가했습니다. 장면의 끝이 보이지 않도록 카메라보기를 제한하고 싶습니다. 마우스, W, A, S, D 및 화살표 컨트롤을 포함하는 three.js 라이브러리의 firstpersoncontrols.js를 사용하고 있습니다. 컨트롤로 카메라 뷰를 제한하는 방법은 무엇입니까? 나는 이미 통제 거리를 제한하려고 시도했다. 당신이 당신의 카메라를보고하는 방법을 널리 조정하려면 다음 근처까지, FOV 조정할 수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

: 여기 는 지금까지 카메라와 제어에 관한 한 무엇인가 매개 변수 (PerspectiveCamera (fov, aspect, near, far)).

예를 들어,이 값합니다 (codepen 예에 그것을 시도) 카메라를 만들어보십시오,

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

당신은 카메라 시뮬레이션 뷰의 폭을 결정하고 얼마나 조정까지 매개 변수를 변경하려면 FOV를 변경할 수 있습니다 카메라가보아야한다.

+0

작동하지 않았습니다. skybox가 왜곡되었거나 비행기가 꺼져 있었음 – redfelix

+0

이것이 원하는 결과인지 아닌지 나는 모른다. 그러나 이것을 확인하십시오 https://codepen.io/HariKrishnanV/pen/ypNZRy – HariV

+0

카메라가 여전히 장면을 벗어날 수 있으며 스카이 박스를 왜곡시킵니다. – redfelix

관련 문제