TECHARTNOMAD | TECHARTFLOWIO.COM

TECH.ART.FLOW.IO

[번역]캐릭터 카툰 렌더링(디퍼드 라이팅) 참고 사항

jplee 2024. 6. 3. 14:46

역자의 말.
2020년을 기점으로 원신 모바일 역시 유니티 2017 버전임에도 불구하고 엔진팀에서 자체적으로 모바일 디퍼드 렌더링 파이프라인을 구축하고 렌더링 패스 페러다임을 포워드 위주에서 디퍼드로 이동했습니다. 2021년 엔진팀과 함께 원신 안드로이드 빌드를 리버스엔지니어링 했을 때 모든 내용을 더 확실하게 확인 할 수 있었죠. 이후 최근 중국에서 출시 되는 다수의 게임들이 모바일 디퍼드 렌더링을 선택 하거나 또는 포워드 플러스를 선택 하는 경향이 많아졌다는 것은 확실한 것 같습니다.
 


저자

1.모바일 렌더링 제한 사항

시장의 일반 및 주류 모델에 따르면 GBuffer 수를 할당하기 위해 OpenGLes3 128Bit은 타일형 메모리를 준수합니다.

2.반투명 재질 분할

캐릭터 파트에 반투명 머티리얼이 필요한 경우 미리 DCC에서 머티리얼을 분할하여 별도로 렌더링합니다.。

3.GBuffer 할당 및 사용은 본문 처리를 위한 참조로만 사용됩니다.

GBuffer1.rgb=일반 포워드 렌더링 결과(캐릭터 스크린 스페이스 테두리 라이팅은 제외되며, 이는 디퍼드 라이팅에서 수행됩니다.);
GBuffer1.rgb=Nomral;
GBuffer1.a=SpecularAreaMask;
GBuffer2.a=ShadowAreaMask;
 
 
GBuffer2.r=RimAreaMask(강하고 약한 것을 약하고 약한 것을 구별하고 그 반대의 경우도 마찬가지입니다.);
GBuffer2.g=신체의 다른 부위 구분(Mask);
GBuffer2.b=결정을 기다립니다.。
 
GBuffer2.a=Pixel Local Storage(디퍼드라이트에서 머티리얼 ID마스크 구별하기)
GBuffer3=Depth/Stencil;
예를 들어 빛의 처리에서 얼굴, 머리카락, 몸, 피부는 여전히 큰 차이가 있으며, 같은 종류의 빛을 사용하여 얼굴과 턱의 일관성을 보장하기 위해 GBuffer2.g와 GBuffer2.a 얼굴과 몸의 피부 부분을 구분할 수 있습니다.

GBuffer2.a의 디퍼라이트 코드

4.디퍼드 라이트 프로세싱

기본 포워드 렌더링 결과는 이미 DefferdLight에서 얻었으며, 예를 들어 추가 조명 처리를 수행하는 것만 DefferdLight가 수행합니다:
지연 렌더링에서 화면 공간 가장자리 조명은 일반적으로 Pre-Z에서 다시 수행되지 않으며, GBuffer3에서 전체 화면 깊이를 얻습니다.
포인트 광원이 처리되며, GBuffer에서는 포워드 렌더링의 결과를 알베도, 노멀, ShadowAreaMask, 스페큘러 영역 마스크로 사용하여 추가 조명 효과를 계산합니다.
이 경우 포인트 라이트 결과물은 캐릭터의 과다 노출을 초래하며, 포인트 라이트 효과를 조정하는 방법은 TA와 아트 담당자가 계속 주시해야 합니다.
 

5. 메인라이트 직접 광원 처리。

5.1주변광과 관련된 몇 가지 문제

주 광원 조명은 왜 디퍼드라이팅에서 하지 않나요? 당연한 질문입니다. 보통 캐릭터 조명은 커스텀 주 광원 색상과 강도로 하고, 주변광은 그냥 꺼버립니다. 주변 조명을 받는 동적 캐릭터를 처리할 때 Unity의 LightProbe에는 문제가 있는데, 일반적으로 바디 부분의 노멀은 정상이지만 카툰 렌더링의 얼굴 노멀은 일반적으로 조금 더 이상하고 얼굴과 턱이 눈에 띄게 부서지는 경향이 있습니다.

5.2 SDF의 몇 가지 문제

현재 프로세스의 얼굴 SDF 그림자 제작 및 사용은 더 성숙해졌지만 수평 변경뿐만 아니라 얼굴이 장면 개체의 그림자를받지 못하고 수신도 추악해질 것입니다. 남성과 여성의 프로젝트 역할이 두 종류의 얼굴 만 사용하는 것을 고려할 수있는 경우 SDF 매핑 제작 프로세스의 현재 전체 각도 변경이 너무 복잡합니다.

캐릭터가 씬 오브젝트에서 그림자를 드리우지 않습니다.

캐릭터는 밤에 포인트 조명 효과를 받습니다.

밤에는 캐릭터에 포인트 조명 효과가 없습니다.

5.3캐릭터 다이렉트 라이팅

GDC 2015에서 모토무라 준야가 현재 대부분의 2차 3D 카툰 렌더링 프로젝트에 사용되는 세트의 변형인 길티기어 Xrd-SIGN과 이를 제작하는 캐릭터의 비용이 치솟을 정도로 병적인 모토무라 라인에 대해 이야기했습니다.
캐릭터의 밝은 부분과 어두운 부분을 구분하기 위한 리맵, 금속 효과 렌더링을 위한 매트캡, 캐릭터의 선형감을 높이기 위한 혼무라 선과 행 등 캐릭터에 사용된 매핑이 다소 파격적인데, 그 이유는 바로 디퍼드라이팅에서 메인 광원 렌더링을 하기 때문입니다.
PC라면 그 많은 정보를 브레인스토밍하여 GBuffer에 모두 집어넣는 것이 가능하겠지만 어리석게 느껴지는 것은 사실입니다.

포인트 광원 효과의 금속 부분

포인트 조명 효과가 없는 금속 부품
 

6.캐릭터 모델링

6.1혼무라선 정보

혼무라 라인은 간단합니다. 즉, UV가 절단되고, 곧게 펴는 과정의 절단 부분이 도면 위에 수평 및 수직 검은 선 (4-6 픽셀의 검은 선)으로 매핑되고, 배치를위한 UV 정렬 검은 선이 모델의 양쪽에 배치되어야하며, 3D 소프트웨어 재료 디스플레이에서 캐릭터의 역할을 가까이 당기거나 멀리 당기면 윤곽선의 효과를 고정밀하게 표시 할 수 있으며, 모자이크가 나타나지 않습니다.
혼무라 라인 생산의 장점: 생산된 모델은 캐릭터 정확도 문제를 최대한 보장할 수 있습니다.
혼 무라 라인 생산의 단점 : 제작자의 경우 캐릭터 모델 자체의 경우 카드 라인과 표면 수, 특히 불규칙한 장소에 대한 수요가 강하기 때문에 경험이 더 풍부해야하며 원하는 효과를 얻기 위해 UV를 더 심각하게 늘려야하는 곳이 많기 때문에 제작자의 경험이 더 풍부해야합니다.
캐릭터 요구 사항을 얻은 후 먼저 전체 원본 도면을보고 쿼리 목록을 작성하고 질문하면 답변 해 드리겠습니다. (애니메이션 영화)를 찾기 위해 많은 수의 참조 도면을 수행해야하며 더 많은 참조를 찾아야합니다.
1W5에 가까운 체형(간이 아픈 체형)을 위한 혼무라 라인은 다음과 같습니다.
 

1W5 면에 가까운 바디의 혼무라 라인
의류 접기 구조의 생산, 의류 라인 카드의 모든 접기, 캐릭터 접기 방향을 빗질 할 필요가 없으며, 카드 라인 생산을위한 큰 의류 구조 (혼 무라 라인 생산 순서), 작은 의류 그림자 접기를 선택하면지도 상단에 직접 그릴 수 있습니다.

혼무라 라인과 행
 
 

6.2배선 정보

선은 만화가들이 사용하는 그리기 방법으로, 만화 스타일에서 특정 효과를 만드는 데 매우 효과적일 수 있습니다.

 

6.3헤어 리소스 및 하이라이트 렌더링
저는 개인적으로 머리카락에 대한 카지야 하이라이트는 레이어를 추가하는 방법으로 멀티 레이어 하이라이트에만 사용할 수 있다고 생각합니다. 이 손으로 그린 스타일의 하이라이트와 원근 변화를 따라가려면 매핑 UV의 Y 축에 영향을 줄 수 있는 뷰디르를 설정하고 뷰디르를 사용하면 이 히트 스트레이트 UV 하이라이트 확장 헤어 오프셋을 볼 수 있습니다.
 

UV 스트레이트 헤어 하이라이트 매핑
 
우수한 모델 배선은 서브 UV 및 텍스처 생성을 훨씬 쉽게 할 수 있으며, 배선은 균일하고 합리적이어야 하며 선이 매끄러워야 합니다.

전두부 헤어 트리트먼트

앞머리가 앞머리 모양 또는 몇 개의 머리카락이 나타나면 머리카락 흐름을 위해 애니메이션하기 쉬운 한 가닥의 머리카락을 만드는 데주의를 기울이십시오.

헤어 그룹화

머리 모발 생산의 뒷면과 측면, 적절한 그룹화 생산은 모발 생산에 도움이 될뿐만 아니라 후속 UV, 질감 생산을 용이하게합니다.

비유체 지오메트리 사용 금지

헤어 UV 스트레이트닝 하이라이트 영역 매핑
 

7.SDF 매핑

이전에는 9장으로만 SDF를 했을 때 결과가 예상과 달랐는데, 코 쪽이 모두 밝을 때는 코 쪽을 어둡게, 모두 어두울 때는 코 쪽을 밝게 하고 싶었습니다.


10张SDF过渡

 

순수한 광택 표면에도 어두운 영역이 있습니다.
순수한 다크에도 밝게

눈, 앞머리 그림자, 부유하는 눈썹, 캐릭터 블룸, 고정밀 캐릭터 그림자 점프 2P

가 있습니다.
 

원문기사

https://zhuanlan.zhihu.com/p/700806210?utm_id=0&utm_psn=1780701669116289024

zhuanlan.zhihu.com