직각 장면에서 사용하기 위해 THREE.PerspectiveCamera를 사용하고 있습니다. 이것은 THREE.OrthogonalCamera이 특정 유형의 상호 작용에 잘 맞지 않았기 때문입니다. 나는 또한 세 가지 TrackballControls를 사용하고 있습니다. 장면을 확대/축소하고 패닝하는 것은 지금까지 사용자에게 좋았지 만 이제는 프로그램으로 객체를 이동해야한다는 것을 알게되었고 카메라의 x 위치를 설정하는 것은 카메라의 x 위치를 변경하는 것이 아니라 적용됩니다 나도 원하지 않는 관점.THREE.PerspectiveCamera로 비 - 패닝 패닝
지도에서 Z 축을 내려다 보면서 내 원근 카메라를 X 및 Y 축을 따라 2D 평면 (예 :지도 패닝)으로 이동하려고합니다.
THREE.PerspectiveCamera의 경우 "camera.position.x + = 1000"으로 설정하면 카메라가 x 축을 따라 1000만큼 이동하지만 카메라를 회전하여 뷰에 원근감을 적용하고 2D 장면이 왜곡되어 보입니다 . 카메라의 회전 및 4 원 값이 변경되었음을 확인했습니다.
는 (0,0,5000)에서초기 camera.position은 다음과 같다 :
이어서 camera.position.x = 1000이 설정 같다 :
이 문제는이 질문에 언급되어 있습니다 : Moving camera on a perspective map, 나는이 SO 질문에 다루어 졌다고 생각합니다 : Three.js & OrbitControls.js - pan camera parallel to ground plane (like Google Earth).
매트릭스와 3D 영사법으로는별로 좋지 않습니다.하지만 솔루션이 자신의 작업에 포함되어 있다는 것을 알고 있습니다. 나는 또한 내 주위에지도를 드래그하면 현재 이으로 올바르게 패닝되었음을 알 수 있습니다. - so the solution may also be embedded in the panning code in THREE.TrackballControls,하지만 이해할 수 없습니다.
누군가 나를 THREE.PerspectiveCamera와 함께 비 시각적 "패닝"을 달성하도록 도울 수 있습니까?
카메라 위치만큼 카메라를 이동해야합니까? – GuyGood
알 겠어 ... 나도 그걸 시도해보고 알게 해. – dps27a
잠깐, 목표물을 회전시키는 거니? 카메라가 – dps27a