2012-09-18 5 views
0

은 내가 3DS에서 실제 뷰포트 행렬을 얻고있다다이렉트 X 11에서보기 매트릭스 - 이상한 변환

다이렉트 X 11을 기반으로 3ds 맥스로 렌더링 플러그인을 쓰고 있어요 최대, 그 반전 외모 후 : [수신 Ry가 R, 오른쪽 위로 U 들면 D 아이디 방향 P위한 RZ] [UX는 우이 우스] [의 Dx의 Dy을 Dz] [Py를 PX 년 Pz]

  • 위치이다.

나는 (내가 rastertek 자습서에 내놓고 오전 : http://www.rastertek.com/dx11tut04.html) 다이렉트 이 뷰 행렬을 적용하고 을하지만 기본적으로 동일한 구조를 가지고 3ds 맥스, 에서이 뷰 행렬을 사용하고 대신 자신에게 뷰 매트릭스를 만드는 : [수신 Ry가 Rz가 0] [UX는 우이 우스 0] [의 Dx의 Dy을 Dz 0] 제 모든 것을 [PX Py를 년 Pz 1]

는 확인 보이기 때문에 최대 뷰포트의 뷰와 렌더링보기 DirectX 창은 거의 동일하게 보입니다. 그러나 최대 뷰포트 및 DirectX 창에서의 변환은 동일하지 않습니다. 내가 DirectX에서 카메라 위치를 최대로 움직일 때 DirectX의 카메라 타겟이 대신 움직이며, 카메라 타겟 (또는 회전 카메라)을 움직일 때 DirectX의 카메라 위치가 최대로 움직이는 것처럼 보입니다.

첫째, 나는부터, 방향 및 위치를 차지

나는 finnaly 해결책을 발견

답변

0

... 나는 3 일을 알아낼 수 없습니다 ... 돕는

덕분에 ... 3ds 맥스 매트릭스는 수동으로 실시 뷰 매트릭스를 생성하지만 사용 : 다음 ...

를 대신 대부분의 문제를 해결 D3DXMatrixPerspectiveFovLH 및 D3DXMatrixLookAtLH 의 D3DXMatrixLookAtRH 및 (투영 행렬) D3DXMatrixPerspectiveFovRH, I는 3DS 맥스 행렬 동안 업데이트되지 않는다는 것을 주목 카메라를 패닝 (위치 만 업데이트되었습니다.), 뷰 매트릭스의 벡터를보기 위해 "위치 방향"을 사용했습니다 ...