디시인사이드 갤러리

마이너 갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[강좌/팁] VRChat 유저를 위한 잡다한 Shader 강좌 <4>

포동포도갤로그로 이동합니다. 2019.07.28 22:08:36
조회 8709 추천 20 댓글 4

==============================


이번에는 이전 강좌들에서 미처 소개하지 못한

많은 UTS 셰이더의 기능과 그 용도를 알아보고자 한다.


다른 셰이더들은 모든 기능을 단일 셰이더에 합쳐버리거나

Transparent, opaque정도만 구분하는데

유난히 UTS는 귀찮게시리 이것저것 다 구분해놔서

초보자들이 접근하기엔 어려운 감이 적지않아 있다.


역시 중요하지 않은 부분은 파란색 글씨로 처리했으니

알아서 넘어가줘도 좋다.






==============================


UTS(UnityChanToonShader)구분법




UTS가 유난히 셰이더가 많은 것은 사실이지만

잘 살펴보면 이름에 따른 특징이 있다. 한 번 살펴보자.


viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35bcb363001a5a016daeba230ae


잘 살펴봤더니 같은 단어가 많은 것을 볼 수 있는데

UTS의 작명은 인스타그램의 태그처럼 작명된거라

어떤 기능이 들어갔으면 그에 해당하는 기능의 이름이 붙는 것이다.

위 기능들은 이제 차차 설명하기로 하자.




==============================


1. AngelRing 사용법




감이 아직 안 잡힐테지만 먼저 가장 위의 AngelRing을 보자면


viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35b9c3461e65b688923abc5ced5


AngelRing안에 또 다른 셰이더들이 있을 것이다.

일단 Toon_ShadingGradeMap가 기본적인 셰이더이므로

이것을 선택해보자.




그럼 맷캡과 이미시브 탭 사이에 AngelRing 관련 탭이 있는 것을 볼 수 있다.


viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35b9d326426ad883c4ff48f04ff


AngelRing Projection으로 AngelRing을 활성화 시키고

AngelRing에 텍스쳐를 넣어 다음 색을 조절시킨 후

Offset U/V 스크롤 바로 텍스쳐의 위치를 조절한다.


Use α(alpha) channel as Clipping Mask는

AngelRing에 넣은 이미지가 반투명일 경우 활성화시키면 된다.







viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b452edbb0af595b6b60edd3c9f353a4d4dbd971c9a7b6bd6afde8d2c


메인 텍스쳐와 엔젤 링 텍스쳐는

같은 UV를 가진 모델의 이미지를 써야 한다.


이건 이미시브(에미션)나 맷캡마스크나

대부분의 셰이더 설정에 포함되는 이야기겠지만.




viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35bcb31643b5979d1e708eb91f3


잘 추가하면 머리카락에 엔젤링 텍스쳐가 생긴다.

각도에 따라 변형되는 모습.


VR환경에서 테스트 했는데

2개로 보이거나 이상하게 보이진 않았다.

다만 엔젤링 텍스쳐를 해당 모델에 맞게 직접 그려야하므로

정말 귀찮은 작업일 것 같다.








==============================


2. Helper 사용법




사용법은 간단하다.

해당 모델의 Materials의 갯수를 1개 추가해서

새로 만든 UTS Helper 셰이더를 추가한다.


viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b452edbb0af595b6b60edd3c9f353a4d12bcc4199d703887afde8d2c


그럼 해당 모델에 헬퍼 셰이더가 덧씌워지며

설정해둔 아웃라인(외곽선)이나 스탠실이 추가되게 된다.


왼쪽은 헬퍼 아웃라인을 씌우지 않은 모델이고

오른쪽은 헬퍼 마테리얼을 추가하여 씌운 모델.


근데 이 헬퍼가 쓸모없는게 아웃라인이랑 스탠실은

이미 많은 UTS셰이더에 포함된 기능이므로

VRChat사용자가 쓸 일은 없을 듯 하다.





==============================


3. Moblie, NoOutline 사용법


따로 사진으로 설명할 필요가 없는게

모바일 셰이더는 실시관 광원에 적게 반응하여

연산을 줄일 수 있는 비교적 가벼운 셰이더고


NoOutline 셰이더는 외곽선 기능을 설정할 탭이 제거된 셰이더다.


그것 말고는 셰이더의 내부 기능은

3강에서 설명했던 것과 동일하다.



==============================


3. Tessellation 사용법




viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35bca333011f79d99f04fc813eb


비교적 무거운 기능으로

매시의 정점 등을 수정하는 용도로써

저폴리 매시를 부드럽게 만든다고는 하는데

이걸 딱히 VRChat에서 쓸 일은 없을 듯 하다.



Edge Length: 거리에 따라 매시를 나눔. 값이 클 수록 나눈 타일이 커짐.


Phong Strength: 타일을 당기는 정도.

작을수록 안으로 당겨지고 클 수록 밖으로 밀어냄


Extrusion Amount: 나눠진 타일의 크기를 조절함.



viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35bcd60669c68b8cbbeb712521b


viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35b9137674fb4d455e57988dee9


움짤로 봐도 이걸 어디에 써먹을지 감이 안 잡힌다.


테셀레이션 기능 자체가 워낙 무겁고

테러 셰이더에 자주 쓰다보니

VRChat에선 안 쓰는게 좋을 것 같다.





==============================


4. StencilMask와 StencilOut



사진 제한이 걸려서 여기서 설명하기엔 어렵다.

셰이더에 레이어를 추가한다고 생각하면 된다.



viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35bc830340cad26b879b65a0e02


Stencil No. 가 있는데

해당 칸에 번호를 쓰면 같은 번호의 스탠실 셰이더와

서로 간섭할 수 있게 된다.


이 기능은 이전 강좌의

https://gall.dcinside.com/mgallery/board/view/?id=vr&no=224722&search_head=50&page=1

에서, '2. 눈썹이나 눈이 머리카락을 뚫고 보이게 만들기'를 보면 된다.






==============================


5. DoubleShadeWithFeather와 ShadingGradeMap의 차이점



viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35b9c3631f64ea61c745b1bcaeb


UTS를 크게 두 개로 나누자면

DoubleShadeWithFeather와 ShadingGradeMap으로 나눠지는데

그 둘의 차이점을 보고자 한다.




viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b452edbb0af595b6b60edd3c9f353a4d17e5c342907a6c85afde8d2c


보여지는 모습엔 딱히 차이점은 없지만

음영 관련 설정이 다르다.


ShadeGradeMap가 좀 더 세분화적인 설정이 가능한데





viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b452edbb0af595b6b60edd3c9f353a4d40b5921c912d68d8afde8d2c


이 부분이 다르다,


오른쪽 더블쉐이드의 경우

1st Shade Position Map: 첫 번째 음영에 고정시킬 그림자를 넣는다.

2nd Shade Position Map: 두 번째 음영에 고정시킬 그림자를 넣는다.


BaseColor Step: Base Color(기본 색상)와 Shade Color사이의 경계를 설정한다.


Base/Shade Feather: 기본 색상과 음영 색상 사이의 경계를 부드럽게 한다.


ShadeColor Step: 1st Shade Color(첫 번째 음영)와 2nd Shade Color(두 번째 음영)의 경계를 설정한다.

2nd Shade Color를 사용하지 않으면 0으로 설정한다.


1st / 2nd_Shades Feather: 1st와 2nd사이 음영의 경계를 부드럽게 한다.






왼쪽 쉐이딩의 경우

Shading Grade Map: 음영에 해당 텍스쳐의 그림자를 덧씌움

ShadingGradeMap Level: Shading Grade Map의 크기

Blur Level of ShadingGradeMap: Shading Grade Map의 흐림 강도


1st ShadeColor Step: 기본 색상과 첫 번째 음영 색상 사이의 그라데이션을

BaseMap의 색 속성 과 동일하게 설정


1st ShadeColor Feather: 기본 색상과 첫 번째 음영 색상 사이의 경계를

흐리게 처리하는 강도

2nd ShadeColor Step: 1 차 및 2 차 쉐이드 사이의 간격을 설정


2nd ShadeColor Feather: 첫 번째와 두 번째 쉐이드 컬러 사이의 경계를

흐리게 처리하는 강도











viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b452edbb0af595b6b60edd3c9f353a4d44e693499a2c60d4afde8d2c

viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b452edbb0af595b6b60edd3c9f353a4d4cb6931ecd713dd9afde8d2c


DoubleShadeWithFeather는

ShadingMap을 2개 넣을 수 있는 장점이 있으나

ShadingMap의 흐림 강도는

텍스쳐로 조절해야하는 단점이 있고


ShadingGradeMap은 ShadingMap 설정이 간편하고

음영 설정은 세분화 되어있지만

세부적인 셰이딩은 어렵다는 단점이 있다.






==============================


6. Clipping과 TransClipping





~Clipping이 붙은 셰이더는

컷아웃 셰이더라고 생각하면 된다.


viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b452edbb0af595b6b60edd3c9f353a4d41e09843987f3f83afde8d2c


viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35bcf35374bd04b6be3598b4f93


베이스 맵에 클리핑 마스크를 덧씌워

투명화 시킬 부분과 그렇지 않을 부분을 추가한 형태.


클리핑 레벨로 어느 정도의 투명도가 되었을 때

완전히 투명하게 처리할 건지 기준을 설정할 수 있다.





~TransClipping이 붙은 셰이더는

컷아웃+트랜스패런드(Transparent) 셰이더라고 생각하면 된다.


컷아웃 기능에 투명한 물체를 만들 수 있는 기능까지 추가한거다.


viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b452edbb0af595b6b60edd3c9f353a4d45b2c34999783883afde8d2c

Transparent Level로 투명도를 조절할 수 있다.



viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35b9d31663e5c4b1d6d17841eee


Use α(alpha) channel as Clipping Mask는

클리핑 마스크에 넣은 이미지가 반투명일 경우 활성화시키면 된다.






==============================


7. 마지막 정리, UTS셰이더의 구분


viewimage.php?id=3baf&no=24b0d769e1d32ca73ced86fa11d02831e41c69f3746fbcbfa1c0f37f99645c3b35b417b8ea6cf393bdb90dd35b9c3631f64ea61c745b1bcaeb


다시 한 번 이 셰이더를 살펴보자.

쓸모 없다고 판정되는건 빼버리고

그 용도를 정리하자면


기본적으로 아바타 바디에 사용하는 셰이더는

Toon_DoubleShadeWithFeather,

Toon_ShadingGradeMap

이 두가지 셰이더


AngelRing: 특정 하이라이트 텍스쳐를 추가할 때 사용

Moblie: 조금 가벼운 셰이더를 원할 때 사용

NoOutline: 외곽선 설정이 없는 셰이더


~DoubleShadeWithFeather: 음영에 생길 그림자를 세부조절할 수 있는 셰이더

~ShadingGradeMap: 음영에 생길 그림자를 간편하게 조절할 수 있는 셰이더

(사실 음영 그림자를 안 쓸거라면 둘 중 아무거나 써도 상관없다)


~Clipping: 컷아웃 기능이 생긴 셰이더

~TransClipping: 컷아웃에 투명도 기능이 생긴 셰이더


~StencilMask: 레이어를 지정하고 같은 레이어에서 배경이 될 셰이더

~StencilOut: 레이어를 지정하고 같은 레이어에서 먼저 우선순위로 보여지는 셰이더





이렇게 구분하면 된다.

위 태그가 들어있으면 위의 기능을 가졌다고 생각하면 되겠다.







==============================


VRChat 유저를 위한 잡다한 Shader 강좌1 기초와 아바타의 음영 설정

https://gall.dcinside.com/mgallery/board/view/?id=vr&no=218156&exception_mode=recommend&page=1



VRChat 유저를 위한 잡다한 Shader 강좌2 Standard Shader와 자주 쓰는 옵션

https://gall.dcinside.com/mgallery/board/view/?id=vr&no=219638&search_head=50&page=1



VRChat 유저를 위한 잡다한 Shader 강좌3 기본적인 UTS셰이더 옵션

https://gall.dcinside.com/mgallery/board/view/?id=vr&no=224722&search_head=50&page=1






추천 비추천

20

고정닉 11

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
- 설문 잘못한 것보다 더 욕먹은 것 같은 스타는? 운영자 26/04/06 - -
- AD 게임에 진심인 당신을 위해~!! 운영자 26/03/05 - -
5031960 공지 VRChat 마이너 갤러리 운영 2026.03.23 [1]
ㅇㅇ갤로그로 이동합니다.
25.09.19 19271 2
5546381 공지 ❗❗노예 호출기❗❗ [17]
조개껍데기갤로그로 이동합니다.
26.04.04 2098 3
5441769 공지 징집 및 종신 파딱 가이드 라인 [3]
눈바로갤로그로 이동합니다.
26.02.20 4444 7
5441624 공지 번개 / 교류회 가이드 라인
눈바로갤로그로 이동합니다.
26.02.20 2302 6
5031964 공지 갤러리 정보글 시트 1.43 [3]
ㅇㅇ갤로그로 이동합니다.
25.09.19 18759 6
4682090 공지 VRChat 마이너 갤러리 내 저격 관련 세부 운영 25. 5. 1. [1]
ㅇㅇ갤로그로 이동합니다.
25.04.29 20645 10
3697933 공지 VRChat 마이너 갤러리 커미션 공지 [46]
눈바로갤로그로 이동합니다.
24.02.24 62315 20
5286765 공지 VRChat VR 기기 입문 가이드 (25.12.22. 작성)
백야ㅿ갤로그로 이동합니다.
25.12.22 5436 11
2964409 공지 아바타 안보이면 질문을 하지말고 이 글 보셈 (230521 내용추가) [16]
고희원갤로그로 이동합니다.
23.04.26 115320 44
2514607 공지 초임 징병 파딱을 위한 마이너 갤러리 관리 안내 초안 [23]
먀먀나나갤로그로 이동합니다.
22.12.05 120362 36
5569416 바보 남자가 남자를 질투하는게임
봄머장갤로그로 이동합니다.
01:42 11 0
5569415 바보 고백 후기 [4]
ㅇㅇ(223.39)
01:41 25 0
5569414 바보 자러갑시다 [2]
ㅇㅇ갤로그로 이동합니다.
01:41 19 0
5569413 바보 오늘 장 왜 이렇냐 (주식장 아님) [1]
그래열심히해라갤로그로 이동합니다.
01:40 21 0
5569412 바보 카린 만지고싶다 [4]
무코우갤로그로 이동합니다.
01:39 32 0
5569411 바보 나 친구 두명 닉을 자꾸 반대로 부른다 [6]
메멘토모리갤로그로 이동합니다.
01:38 46 0
5569410 바보 허걱허걱슨 [5]
ㅇㅇ갤로그로 이동합니다.
01:37 42 0
5569409 바보 겜창지인 묵언인데 남자한테 고백 몇번 받았던데
와티갤로그로 이동합니다.
01:36 34 0
5569408 바보 그래서 나 어카냐고 시발 [17]
ㅇㅇ(223.39)
01:36 75 0
5569407 바보 님블뉴런이 나보고 이리 그만하라나봐 [1]
레테갤로그로 이동합니다.
01:35 38 0
5569406 바보 잘자 브붕 [3]
밀냥이갤로그로 이동합니다.
01:34 30 0
5569405 바보 브챗 접속빈도를 높이기 위해서 필요한게 뭘까 [13]
AVI갤로그로 이동합니다.
01:34 55 0
5569404 바보 브붕아 나 자로갈께... [13]
루블갤로그로 이동합니다.
01:33 56 0
5569403 바보 짐볼? [2]
와티갤로그로 이동합니다.
01:32 33 0
5569402 바보 샤워 밖에 안 했는데 쿠퍼액이 질질... [11]
그래열심히해라갤로그로 이동합니다.
01:32 61 0
5569401 바보 누가 짐볼로 허리흔드는 브붕이임 [2]
봄머장갤로그로 이동합니다.
01:32 30 0
5569400 바보 씨발 남자한테 고백받음;;; [26]
ㅇㅇ(223.39)
01:30 126 3
5569399 바보 아무리바도월투랑쓰번은 못 가겟어 [6]
Ryo갤로그로 이동합니다.
01:29 43 0
5569398 바보 유니티 그만하고 브챗해야지 [2]
삐랑갤로그로 이동합니다.
01:29 34 0
5569397 바보 이게그 프랑스1위 버터랑 계약한 한국까까 [4]
ㅇㅇ갤로그로 이동합니다.
01:29 40 0
5569396 바보 브붕이랑 맞짱뜨고싶네 [13]
ㅇㅇ갤로그로 이동합니다.
01:29 57 0
5569395 바보 걔 귀엽고 같이 노는것도 좋은데 [2]
ㅇㅇ(106.101)
01:28 48 0
5569394 바보 감정도 장난감처럼 느껴질 때가 있어 [6]
와티갤로그로 이동합니다.
01:28 43 0
5569393 바보 서로 상호애착을 가진 친구 1명이 주황불친구 100명보다 나아 [12]
AVI갤로그로 이동합니다.
01:26 66 0
5569392 바보 나 졸려 [12]
푸너갤로그로 이동합니다.
01:26 63 0
5569391 바보 나도 우울해 [12]
봄머장갤로그로 이동합니다.
01:25 56 0
5569390 바보 자려고 했는데 잠이 안와 [7]
비엔이갤로그로 이동합니다.
01:24 50 0
5569389 바보 나 안취한줄알앗는데 존1나 취햇엇네 [2]
Genshin갤로그로 이동합니다.
01:23 37 0
5569387 바보 나랑 취향 똑같은 친구 4명정도만 잇으면좋겟다 [7]
논-갤로그로 이동합니다.
01:23 50 0
5569386 바보 쓰감 이쁜애 봐서 기분조음 [6]
그루셋갤로그로 이동합니다.
01:22 53 0
5569385 바보 나만 진심이었고 [1]
ㅇㅇ(211.234)
01:22 40 0
5569384 바보 랜매 잘 안가는게 [2]
토쿵갤로그로 이동합니다.
01:21 43 0
5569383 바보 우울한 유동아
와티갤로그로 이동합니다.
01:19 38 0
5569382 바보 브챗에서 인맥욕심 버린뒤로 행복해짐 [4]
_법사_갤로그로 이동합니다.
01:19 59 0
5569381 바보 어젠 그거했대.... [6]
SenYan갤로그로 이동합니다.
01:19 51 0
5569380 바보 즐겅ㅇ운 랜매후기 [6]
난춘갤로그로 이동합니다.
01:17 60 0
5569379 바보 랜매에서좋은사람만나서월투하고사진찍고재밋게놀앗어ㅋㅋ [4]
닝닝즈갤로그로 이동합니다.
01:17 49 1
5569378 바보 아아아 씨발 그냥 좆같은게 한둘이 아니구만 [1]
ㅇㅇ(211.234)
01:15 61 0
5569377 바보 졸리면 ㅈㄴ 어지러운거 나만그럼? [8]
ㅇㅇ갤로그로 이동합니다.
01:15 48 0
5569376 바보 커마에선 미의 기준이 되게 중요하구나 [5]
_유우코갤로그로 이동합니다.
01:15 59 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2