<적용 ㅣ 사용할 uv png이미지>
3개 이상의 버텍스를 연결한 게 폴리곤
사각형처럼 보이지만 3각형 2개를 만들어 놔야한다
기능은 arraymesh와 surfacetool 방법 중에 후자로 할 것이다
var st = surfacetool.new() #선언
st.begine(Mesh.primitive_triangles) # 삼각형 폴리곤을 사용
st.set_normal(vector3(0,0,1))
st.set_uv( vector2(0,1) )
st.add_vertex( vector3(-1,-1,0))
st.set_normal(vector3(0,0,1))
st.set_uv( vector2(0,0) )
st.add_vertex( vector3(-1,1,0))
st.set_normal(vector3(0,0,1))
st.set_uv( vector2(1,0) )
st.add_vertex( vector3(1,1,0))
var mesh = st.commit() #적용
적용하면 이러한 모습이다
메모리 누수를 방지하기 위해 메쉬의 뒷면은 표시되지 않는다
그 앞 뒤는 버텍스를 연결하는 방향에 따라 바뀌게 되며
시계 방향으로는 앞면
반시계 방향은 뒷면에 표시되게 된다
만든 메쉬는 시계방향으로 해서 정면에 표시된다
그리고 버텍스를 그리는 순서는 자기 마음대로 해도 된다
순서 예)
1>2>3
2>3>1
3>1>2
모두 같은 삼각형 폴리곤이다
UV 적용
png 이미지 파일은 폴리곤의 크기에 상관 없이
x y 좌표 0~1까지 값으로 분할된다
x:0 , y:1 / 0,0 / 1,0
으로 값을 적용했기 때문에 위와 같이 폴리곤에 적용이 되는데
uv 순서는 폴리곤 순서에 맞춰 만들어야 한다
적용된 버텍스 좌표 ) -1 ,-1, 0 / -1, 1 ,0 / 1, 1, 0
적용된 UV 백터 좌표) 0,1 /0,0 / 1,0
이런 방식으로 나머지 폴리곤을 만들면 된다
'godot c#' 카테고리의 다른 글
godot) node (0) | 2024.07.10 |
---|---|
godot - 이미지 파일 가져오기 (0) | 2024.05.04 |
godot - 파티클 애니메이션 (0) | 2023.11.09 |
godot - collision 충돌 처리 (0) | 2023.10.22 |
godot - 시그널 (0) | 2023.10.14 |