2013-03-25 2 views
0

나는 내 대상을 가져 와서 다른 곳에 넣는 일련의 변형을 가지고 있습니다. 필자는 GL/ES의 프로그래밍 가능한 파이프 라인에 이러한 변환을 수동으로 곱하고 있습니다. 나는 멀리 떨어진 임의의 점들을 돌면서 번역을하고 있는데, 내가 원하는 곳에 마침내 위치를 지정하는 데 문제가 없는데, 나는 이것을 알고 싶다. 어떻게이 위치의 최종 3D 벡터 좌표를 추출 할 수 있는지 알고 싶다. 변형.?벡터 좌표 후 행렬 곱셈 받기

this question이 제안하는 옵션 중 하나는 시작 위치에 최종 행렬을 곱하고 그 결과 벡터를 최종 좌표로 유지하는 것입니다. 그렇다면이 변환 전에 객체의 원점을 나타내는 데 사용하는 벡터는 무엇입니까? 원점 (0, 0, 0)으로 행렬을 곱하면 0의 벡터가됩니다.

답변

0

놀라운 솔루션입니다.

I 모든 행렬 곱셈에 의해 생성 된 최종 변환하는 행렬 M있는 경우에, 단순히 의해 M 의해 변형 물체의 중심을 찾을 수

M * vector(0,0,0,1) // creates a 4D vector, where the first three, x,y,z are the coordinates 

이것은 쉽게 done manually 인 암호.

질문에 누락 된 핵심 요소는이 곱셈에 사용할 정확한 벡터입니다.

+0

결과는 단순히 행렬의 4 번째 열입니다 ... – JasonD

+0

오른쪽! 그 점을 지적 해 주셔서 감사합니다. 또는 행 벡터 및 행 주요 방향을 사용하는 경우 행렬의 네 번째 행. – johnbakers