나는 학교에서 z 축이 있다는 것을 배웠다. Blender와 같은 모델링 소프트웨어에서도 동일합니다. 그러나 많은 게임에서 y 축이 올라갑니다.
이유가 무엇입니까?
나는 학교에서 z 축이 있다는 것을 배웠다. Blender와 같은 모델링 소프트웨어에서도 동일합니다. 그러나 많은 게임에서 y 축이 올라갑니다.
이유가 무엇입니까?
답변:
좌표축의 방향은 결정 평면이 다른 여러 영역에서 이월 된 것으로 생각하고 X / Y는 그 결정 평면과 정렬되었습니다. 일부 응용 분야에서는 접지면이 가장 중요하므로 X / Y는 접지 였고 Z는 그에 수직이되었습니다. 그러나 게임의 경우 결정적인 평면은 일반적으로 화면입니다 (특히 물론 2D 였을 때 3D로 전환하기 시작했을 때). 따라서 X / Y는 화면이었습니다.
가장 큰 두 가지 3D 아트 도구 인 3ds Max와 Maya의 차이점을 확인할 수 있습니다. Z 축은 건축 도구에서 자랐기 때문에 3ds Max로, Y 축은 영화 제작 도구에서 자랐기 때문에 Maya에서 올랐습니다.
특정 도구를 학교에서 배운 것과 비교할 때 알아야 할 중요한 것은 도구가 모두 임의적이라는 것입니다. 모든 좌표가 일관되게 유지되고 다른 좌표계간에 올바르게 변환되는 한 축이 가리키는 방법은 중요하지 않습니다.
3D로 만들 수 있었던 모든 것이 화면 공간 회전 큐브 또는 시차 스크롤 또는 이와 유사한 것이었던 시절부터 대부분 레거시입니다. 이러한 응용에서 X와 Y는 스크린 평면의 축이므로 Z는 "깊이"였습니다. 데모가 더욱 발전함에 따라 원래의 규칙은 그대로 유지되었습니다.
정확히 오늘날의 게임에 Y가 세로 축으로 표시되는 이유에 대해서는 차이를 설명하지 않는 저조한 자습서가 많이 있습니다. 일반적으로 X 및 Y 축에 기본 이동 평면을 두는 것이 가장 유용합니다 (대부분의 2D 계산에는 코드에서 축 교체가 필요하지 않음). 대부분의 사이드 스크롤러의 경우 스크린면 (X / Y)과 자연스럽게 일치합니다. 어드벤처 게임 등의 경우 X / Y는 게임 내 맵, 게임 패드 컨트롤, 지형 높이 맵 및 기타 여러 가지 사항에 완벽하게 매핑되므로 수평면 (중력 방향에 수직)으로 훌륭하게 작동합니다.
제가 Y = 위 / 아래로 수집 한 한 Z = 깊이는 중력이 항상 (-Y) 방향 인 물리를 기반 으로하며, 3D를 추가하면 기본 을 바꾸고 싶지 않다는 것을 의미합니다 . 깊이가되었습니다.
Z = 위 / 아래 방법에서는 수학자에게 되돌아갑니다. Z 축이 확장되었을 때 테이블에 평평한 용지에 X / Y가 그려 졌기 때문에 X / Y가 용지에서 나오기 때문에 올라갔습니다. 많은 엔지니어도이 규칙을 사용합니다.
주어진 도구가 사용하는 규칙과 관련하여 Maya 및 Unity에는 Y-up이 있습니다 (물리적 배경을 가진 사람이 설계했을 것입니다). 3DsMax와 Unreal에는 Z-up (수학자 / 엔지니어가 설계 한 것)이 있습니다. 그러나 일관성있는 시스템을 사용해야했기 때문에 이것들은 언젠가는 분할 된 결정일 수 있다고 말할 수 있습니다.
이 질문은 모델링 도구에 초점을 맞추고 게임 개발 Q & A 사이트에 있습니다. 내보낼 좌표계를 조사하고 그 좌표계를 준수하는지 확인하십시오.
또한 일부 시스템은 축 시스템이 하드 세트이고 영구적이며 다른 시스템은 수정할 수 있음을 알고 있습니다 (블렌더 및 언리얼에서 변경 될 수 있지만 오해 할 수 있음).
게임에 사용되는 좌표계는 모니터의 치수를 기반으로하기 때문입니다. 컴퓨터가 무언가를 렌더링하면 왼쪽 상단에서 시작하여 [0, 0]의 x 및 y 좌표를 제공합니다. 렌더링이 화면의 오른쪽으로 진행됨에 따라 렌더링이 아래로 이동하면 x 값이 증가하고 y 값이 증가합니다. 좌표계는 기본적으로 2D 공간의 좌표계입니다. 단 원점은 화면 중앙이 아니라 왼쪽 위 모서리에 있습니다.
3DsMax 및 Maya와 같은 3D 패키지에서는 중요한 것에 따라 x 및 y 좌표에 대한 자체 정의가 있습니다. 3DsMax는 건축 설계를 기반으로합니다. 2D 평면에 회로도를 그리면 y가 올라갑니다. 애니메이션에 주로 사용되는 Maya에서는지면이 x, y이고 높이가 z입니다.