2024. 5. 3. 17:38 godot c#

 

 

 

<적용 ㅣ 사용할 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

 

 

 

 





카테고리 글 더보기