유니티에서 Mesh란 뭘까?
Mesh란 정점(Vertex), 삼각형(triangle), uv를 담은 구조체이다
GPU는 이 Mesh데이터를 이용하여 그래픽을 구성하며 이 데이터를 중심으로 다양한 처리과정을 거쳐 우리 눈에 보이는 화면이 그려지는 것!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
그래서 컴퓨터 그래픽 특히 게임 그래픽에는 삼각형이 기본이 됩니다.
위에서 말한 메시의 구성 요소들을 하나씩 알아보자면
- 정점
3D 공간 상의 좌표를 가진 점이며 메시를 구성하는 기본 단위 중 하나.
이 점들이 모여 선을 만들고 그 선들이 면을 만든다.
- uv
3D 모델(메시) 표면에 2D 텍스쳐 즉 이미지를 입히기 위한 2차원 좌표계로
U(가로),V(세로) 축을 사용해 3d모델의 각 면들을 2D 공간에서 펼쳐주는 역할을 함.
이것이 무ㅜㅜㅜㅜㅜㅜㅜ슨 말이냐?
텍스쳐의 어느 부분을 모델의 어느 부분에 표시해줄 것인가를 정해주는 정보를 말함.
- 삼각형
사실 삼각형보단 triangle, 또는 폴리곤이라고 더 많이 부르긴 하지만 폴리곤은 다각형 전체를 포함해서 말하는 거기 때문에 대부분 triangle이라고 부른다.
Mesh안에 속성으로 triangles라는 속성이 있는데 이는 메시 구성할 때 어떤 점들로 트라이앵글을 그릴지를 나타내는 속성이다.
자세한건 아래 적용한 버전에서 확인하시고, 그럼 왜 굳이 삼각형을 기반으로 Mesh를 구성할까?
그냥 한꺼번에 칠각형, 팔각형 하면 안되나? 싶긴 하다
이유는 간단하게, 컴퓨터 그래픽에서 삼각형이 가장 안정적이면서 계산하기 쉬운 "기본 단위"이기 때문이다.
이 때문에 유니티 메시도 삼각형을 기본 단위로 깔고 들어가는겨.
이제 한번 유니티에서 코드를 짜보자.

우선, 메시를 만들기 위해 컴포넌트 2개를 붙어줘야한다.
1. Mesh Filter
메시의 모양을 메시 렌더러에게 전달하기 위한 컴포넌트이다.
3DObject 중에서 Cube를 꺼내면 메시 필터에 Cube라는 모양을 가진 메시가 들어가 있을 것이다.
2. Mesh Renderer
말그대로 메시 필터가 전달해준 모양을 토대로 화면 상에 그려주는 친구다.
여러 속성들이 있는데 하나하나 알아보기는 귀찮고 글로 작성하기도 귀찮으니 패스함.
아무튼 메시 필터에 들어갈 메시는 코드로 구현해줄꺼고 렌더러에는 일단 아무 머티리얼도 안 넣어보겠습니다.

우선 텍스쳐를 입혀보진 않고 삼각형 메시만 한번 그려보겠습니다.


실행하면 매우 잘 나온다.

그림을 보면 버텍스값을 넣은대로 잘 그려진 걸 볼 수 있다.
하지만 지금보면 보라색으로 삼각형이 나오는데 머티리얼을 안 넣었기 때문이다.

아무 머티리얼을 만든 뒤 실행 시켜보면 적용한 머티리얼과는 다르게 그냥 검은색으로 나온다.

이 무슨 날벼락 같은 상황인가. 이제 uv를 설정해줄 때가 되었다.

이렇게 설정하면 이런 식으로 나오는데


텍스쳐의 좌표계는 왼쪽 아래 모서리가 (0,0)부터 오른쪽 위 모서리가 (1,1)이므로 uv에 정점이 텍스쳐의 어느부분을 가리킬건지에 대한 텍스쳐 좌표를 담아준대로 나오는 것이다.
이를 응용하여 사각형도 함 만들어보자면


(매우 잘 나오는 모습)
이상으로 메시에 대해서 간단하게 알아봤습니다 활용처가 꽤 많으니 재밌는거 많이 만들 수 있겠네요.
'개발관련 > 유니티' 카테고리의 다른 글
| [유니티] RenderPipeline과 RenderPipeline Converter🤓 (0) | 2026.04.28 |
|---|---|
| [유니티] 지터링과 시네머신 브레인의 속성을 이용한 해결법🤓 (0) | 2026.03.06 |