02.23

신승빈·2023년 2월 23일
0

KGCA 수업

목록 보기
113/128

TCI

World Coordinate base

Min-Map, Cell size, Vertex Postion을 이용해 UV를 계산하여 Map에 Texture를 까는 방법

Projection Coorinate base

투영좌표를 기준으로 사용할 경우 화면 전체에 Texture가 깔리는 효과가 발생하는데, Map의 위치가 존재하는 곳만 Rendering
일종의 Masking된 구멍을 통해 Texture를 바라보는 느낌

Camera Coordinate base

Reflection Vector를 주로 사용한다고 하는데, 용도를 모르겠음

Multi Texture를 Shader로 넘기는 방법

Texture2D    g_txTex  : register(t0);
Texture2D    g_txTex1 : register(t1);
Texture2D    g_txTex2 : register(t2);
Texture2D    g_txTex3 : register(t3);
Texture2D    g_txTex4 : register(t4);
Texture2D    g_txTex5 : register(t5);
Texture2D    g_txTexArray[16] : register(t6);

Texture Register의 개수가 최대 32개 인데 이런 방식이라면 그 이상도 전달할 수 있지 않을까?

Reference : https://learn.microsoft.com/en-us/windows/win32/direct3d11/overviews-direct3d-11-resources-limits

Tiling

Single Tiling

Tile(Map의 Leaf Node) 1개마다 직접 Texture를 지정하는 방식

Auto Tiling

Auto Tiling 예시 사이트 : https://kayanworld.tistory.com/201

Single Tiling과는 다르게 Tile을 Mouse로 지나가면 자연스럽게 해당 위치에 어울리는 Texture를 선택하는 기술

1개의 Tile을 위와 같이 분리한 후, 1장의 Tile Set을 총 16장의 조합에 맞는 이미지 생성

7번

5번

이제 Mouse를 지나가면 Pick된 지점에 해당하는 Tile에 적절한 값을 가산

주로 2D에서 쉽게 Map을 구성할 수 있음
3D환경에서도 담장을 만든다던가 하는 상황에서는 사용이 가능하지 않을까?

단, 이 경우 Tile이 공유하는 교점의 UV값이 모두 다르므로 Tile마다 서로 다른 VB를 보유해야 함
또한, Height Map같이 Tile의 Vertex를 조작해야 하는 경우 주변에 위치한 Tile의 모든 Vertex를 함께 조작해야 함
Map 전체가 사용하는 VB를 1개를 가진 후 Tile마다 VB를 Pointing하는 VB'을 사용한다면 쉽게 조작할 수 있지 않을까?

IB는 공유 가능하다는건 꽤 재미있는 부분(IB는 Vertex간의 연결 순서에 대한 정보만을 담고있으므로 각 Tile이 동일한 방식으로 생성되었다면 IB는 공유가 가능하다)
LOD를 고려한다면 더 유용한 점

Splatting Tiling

Reference : https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sorkelf&logNo=40151055590

Auto Tiling

Splatting Auto Tiling의 경우 아래와 같이 편심된 지점에 Texture를 지정할 수 없음

Splatting의 경우 Resource Texture가 칠해질 위치만을 지정하는 Mask Texture를 생성
Mask Texture의 RGBA 값을 Resource Texture에 대응하여 Blending 작업 수행
Mask Texture 1장당 최대 4장의 Resource Texture 사용 가능

읽어볼만한 기술 번역 사이트

https://scahp.tistory.com/

FBX 관련 사이트

https://download.autodesk.com/us/fbx/20102/fbx_sdk_help/index.html?url=WS73099cc142f487551fea285e1221e4f9ff8-3bde.htm,topicNumber=d0e6331
https://help.autodesk.com/view/FBX/2019/ENU/
https://blog.naver.com/lifeisforu/80105357896

profile
이상을 길잡이 삼아 로망을 추구합니다.

0개의 댓글