버그 해결을 위한 모든 질문을 던져
0 votes
148 views
전체 빌보드는 카메라 변환행렬에서 회전변환 부분을 뽑아내서 역행렬을 취해서 월드행렬로 세팅하면 카메라 변환에서 회전 부분이 상쇄되어서 빌보드가 적용되는걸로 이해했습니다.

 

그런데 Y축 빌보드는 이해가 잘 안가는 부분이 있네요. 해골책에 보니, 뷰행렬에서 Y축 회전 행렬부분인  _11, _13, _31 _33 원소를 뽑아낸다고 하는데,  뷰행렬을 구해봤자, 뷰행렬의 회전행렬 부분이 만들어 질때는 X축, Y축, Z축 회전행렬들이 곱해져서 만들어지는 것이기 때문에 _11, _13, _31, _33 을 뽑아낸다고 해도 이미 Y축 만의 회전행렬이 아닌 X축, Y축, Z축 회전행렬들이 곱해져 있는것이기 때문에 Y축 회전 행렬이라고 할 수는 없지 않나요?

 

만약 카메라가 X축, Z축으로 회전 안했다면  저 방법대로 되겠지만, X축, Z축으로 회전했음에도 불구하고 저렇게 원소를 뽑아내도 되는건가요???
asked (2 point) , 148 views

1 답변

0 votes

 

일단, 

_11, _13, _31, _33 에는

모든축(xyz) 회전이 적용된 결과의  x, z 회전값만 들어 있습니다

y 회전값은 빠져있어요,

y 회전값은 _21, _23 인가 그렇습니다

 

모든 축 회전이 적용된 결과값 x z 맞고,

역행렬 변환하면서, x z 회전값만 무효화되고,

그속에 들어있는 y 회전값만을 살리는 방식이라고 보시면 됩니다,

 

저는 뭐 대충 이렇게 이해하고 있고,

 

더 정확하게는

역행렬 과정을 살펴보고,

카메라뷰 매트릭스 값과, 역행렬 결과값을 직접 비교해 보면

도움이 되실 겁니다

 

결론적으로, 

저도 빌보드 매트릭스를 여러군데 사용하고 있고,

3d 상에서 카메라가 모든 축에 대해서 어떤 회전을 하던지,

항상 잘 작동하는 빌보드 매트릭스 입니다

 

answered (28 point)
수정됨

버그 해결을 위해 도움을 구하고, 도움을 주세요. 우리는 그렇게 발전합니다.

throw bug 는 프로그래밍에 대한 전분야를 다룹니다. 질문,논의거리,팁,정보공유 모든 것이 가능합니다. 프로그래밍과 관련이 없는 내용은 환영받지 못합니다.

494 질문
648 answers
626 댓글
117,920 users