강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

언리얼컨설팅님의 프로필 이미지
언리얼컨설팅

작성한 질문수

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12

World, View 변환 행렬

좌표계 변환에 대해

해결된 질문

작성

·

427

0

좌표계 변환에 대해 궁금증이 생겨서 질문 남깁니다.

강의 초반부분에서 유니티 짱을 통해서 로컬좌표와 월드좌표계를 설명해주셨는데요,

이 부분에서 궁금증이 생긴게,

카메라 좌표계로 최종적으로 변환되어야할때,

각 물체들의 좌표값은 각각의 물체의 로컬 좌표계에서 카메라 좌표계로의 변환 행렬을 곱해서 카메라 좌표계의 좌표값을 얻어내는지,

아니면 이미 이전에 유니티의 Inspector에 있는 Transform 정보에 있는 World좌표계의 값으로 하는지 궁금합니다.

저는 개인적으로 후자일것 같은데, 후자가 좀 아쉽다고 느껴진건, 이미 한번 로컬좌표계에서 월드 좌표로 변환을 해줬는데, 또 번거롭게 거기서 카메라 좌표계로 바꿔준다는게 뭔가 좀 아쉽다는 생각이 들었습니다. 만약 그것이 최종 목적과도 같은 무언가였다면, 각각의 물체의 로컬좌표값을 카메라좌표 변환 행렬을 곱해서 처리했으면 어땠을까, 라는 생각이 들었습니다.

 

관련해서 선생님의 의견이 너무 궁금해서 못참고 올려봅니다ㅎ

퀴즈

게임 수학에서 스칼라(Scalar)와 벡터(Vector)의 주요 차이점은 무엇일까요?

스칼라는 방향만 있고 벡터는 크기만 있습니다.

스칼라는 크기만 있고 벡터는 크기와 방향 모두 가집니다.

스칼라는 2D 공간에 사용되고 벡터는 3D 공간에 사용됩니다.

스칼라는 행렬로 표현되고 벡터는 숫자로 표현됩니다.

답변 1

1

Rookiss님의 프로필 이미지
Rookiss
지식공유자

로컬 좌표를 넘기고 WVP 행렬을 쉐이더 쪽에서 곱하게 됩니다.
나중에 카메라 좌표계로 계산하는건 GPU한테 떠넘기게 되는데,
동일한 메쉬 정보를 갖는 물체가 100개가 있더라도, 각기 World 좌표는 다르겠죠.
이 경우 World 좌표까지 계산된 좌표를 일일히 GPU에 넘길 이유가 없습니다.

언리얼컨설팅님의 프로필 이미지
언리얼컨설팅

작성한 질문수

질문하기