직선과 높이가0인 평면과의 교차점 구하기 3D 관련
2010.07.13 10:19 Edit
3차원 공간에서 직선벡터와 높이가(y축이) 0인 평면과의 교차점이 필요해졌다.
정확히 말하자면 카메라 Orbit 회전을 시켜야 하는데
중심점을 고정으로 설정하면 패닝을 하면서 Orbit을 시킬때 좀 어색해 보이기 때문에,
여기저기 찾아본 결과 (내가 수학에 약해서) 간단한 수학 공식을 하나 발견할 수 있었다.
카메라 위치 vCamPosition 과 카메라가 바라보는 방향벡터 vCamDirection 을 가지고 구해야 하는데,
평면과의 교차점은
vIntersec = ( (vCamPosition.x / vCamDirection.x) - (vCamPosition.y / vCamDirection.y),
0,
(vCamPosition.z / vCamDirection.z) - (vCamPosition.y / vCamDirection.y))
라고 하는데,,, 잘 구해지지 않았다...
나는 솔찍히 수학공식만 보고는 이해가 가지 않았고 -_-;; 그냥 무식한 방법으로 구했다.
그냥 카메라 위치에서 카메라의 전방벡터의 방향으로 벡터길이를 무한연장시키면서
높이가 0인 좌표를 찾아갔다;;;;
카메라의 위치에 따라서 벡터 증가량에 변화를 조금 주니... 15번 내외의 반복 계산량이 나온다
그렇게 구하니까 계산량도 적고 나름 나쁘지 않구나 싶다 ㅎㅎ
- [2011/12/07] [안드로이드] 페이퍼 카메라 (1695)
- [2011/08/03] LG '옵티머스 3D' 성능이 스마트폰 중 최고? (17500, 4) *1
- [2011/07/28] 7월 28일 추천글감: 전국민 개인정보를 공용정보로 바꿔버린 네이트-싸이월드, 네티즌들 '부글' (1744)
- [2010/07/30] 화제작 3D 슈팅 아이폰 게임 '뉴턴캐논볼' (573)
- [2011/06/21] "애플의 `카메라 촬영 차단 기술`을 반대합니다" (2255)
