Skip to content

서브서피스 스캐터링(SSS)에 의한 스킨 셰이더(7)~서브서피스 스캐터링(SSS)과 스킨 셰이더(5)

[칼럼 핵심 요약]
국소적인 피하 산란은 어떻게든 나름대로 재현할 수 있었다. 그렇다면, 대국적인 피하 산란은 어떻게 취급하면 좋을까. 대국적인 피하 산란이란, 광원으로부터의 빛이 직접적으로 3D모델 전체에 미치는 서브서피스 스캐터링(SSS)을 말한다.

🌐 원문 링크: 表面下散乱によるスキンシェーダ(7)~表面下散乱とスキンシェーダ(5) (Mynavi News)
📅 원문 발행일: 2009-05-15 | ✍️ 저자: 西川善司 (니시카와 젠지 / Zenji Nishikawa)

NOTE

💡 현대 그래픽스 관점에서의 발전사 (Modern Retrospective)

  • 스크린 공간 SSS (SSSS): Jorge Jimenez 등이 제안한 화면 공간 분리 가능 서브서피스 스캐터링(Separable SSSS) 기법이 정립되면서 피부 렌더링의 성능 효율이 비약적으로 상승했습니다.
  • 다층 표면 모델 (Multi-layer SSS): 표피(Epidermis), 진피(Dermis), 피하지방층으로 세분화된 빛 흡수/산란 계수를 개별 프로파일링하여 영화 CG 수준의 디지털 휴먼 렌더링이 실시간으로 구현됩니다.

📖 본문 해설

[원문 리드문] > 국소적인 피하 산란은 어떻게든 나름대로 재현할 수 있었다. 그렇다면, 대국적인 피하 산란은 어떻게 취급하면 좋을까. 대국적인 피하 산란이란, 광원으로부터의 빛이 직접적으로 3D모델 전체에 미치는 서브서피스 스캐터링(SSS)을 말한다.

대국적 피하 산란은 어떻게 다루는가?

국소적인 피하 산란은 어떻게든 나름대로 재현할 수 있었다. 그렇다면, 대국적인 피하 산란은 어떻게 취급하면 좋을까.

국소적인 피하 산란이란 피부상의 픽셀에 들어온 빛에 대한 광산란을 말한다.

한편, 대국적인 피하산란이란, 시점과 광원이 상대하는 관계에 있어, 그 사이에 3D얼굴 모델이 있는 것 같은… 즉, 대국적인 피하 산란은 광원으로부터의 빛이 직접 3D 모델 전체에 미치는 서브서피스 스캐터링(SSS)을 말한다.

예를 들어 귀와 같은 두께가 없는 부위는, 빛이 역광의 앵글로 귀가 빛을 차폐하고 있는 것 같은 경우에서도, 빛이 귀를 침투해 이쪽으로 뚫려 오고, 음영상은 "음"이 되어 있는 부분에도 살짝 밝아진다. 이것은 피부가 투명도는 낮지만 반투명 재질이기 때문에 일어나는 현상이며, 이것도 피하 산란 현상의 하나이다.

2D 공간 기반의 보카시에 의한 피하 산란 테크닉에서는, 인체 그 자체(얼굴 그 자체)로 차폐하고 있는 건너편의 빛에 대한 산란에는 대처할 수 없다. 이 대국적인 피하 산란에 대해서는, 인체(얼굴)의 두께 정보를 렌더링해 그 두께에 따른 「빛의 번짐」을 부가해 주는 것으로 대처할 수 있다고 하고 있다.

NVIDIA는, 이 렌더링의 구조를 반투명 섀도우 맵(TSM:Translucent Shadow Maps)이라고 부르고 있지만, 이 생각은 NVIDIA GeForce 7800용의 데모 「Luna」로 활용된 테크닉과 같다.

이 방법에서는, 우선, 캐릭터 모델의 두께를 산출한다. 계산 방법은 광원으로부터의 깊이 정보와 시점으로부터의 깊이 정보의 차이를 취함으로써 얻어진다.

렌더링시에는 그 픽셀에 대응하는, 광원 방향까지의 거리, 광원 방향으로의 두께 정보를 참조하여, 그 "두께값"에 따른 광량이 누설되도록 픽셀색을 결정한다. 구체적으로는 두께값이 작으면, 얇다는 것이므로, 배후의 빛이 이쪽에 투과해 나온다고 밝게 한다. 반대로, 두께값이 클수록, 두껍다고 하는 것으로 빛의 투과량은 작아지고, 어느 두께 이상은 이쪽에는 전혀 투과해 오지 않는다……라고 하는 것으로 한다. (계속)

시점에서 보면, 광원으로부터의 빛을 차단하고 있는 차폐물의 두께를 구할 때에는, 광원으로부터의 3D 오브젝트 배면까지의 깊이와, 시점으로부터 3D 오브젝트 전면까지의 깊이의 차로 구한다시점에서 보면, 광원으로부터의 빛을 차단하고 있는 차폐물의 두께를 구할 때에는, 광원으로부터의 3D 오브젝트 배면까지의 깊이와, 시점으로부터 3D 오브젝트 전면까지의 깊이의 차로 구한다

그렇게 구한 두께 정보를 가시화한 것 (영상은 NVIDIA의 데모 "Luna"의 메이킹 영상 중에서)그렇게 구한 두께 정보를 가시화한 것 (영상은 NVIDIA의 데모 "Luna"의 메이킹 영상 중에서)

그 정보를 바탕으로, 배후에서 이쪽으로 투과해 오는 빛의 양을 의사적으로 구한다그 정보를 바탕으로, 배후에서 이쪽으로 투과해 오는 빛의 양을 의사적으로 구한다

(트라이Z 니시카와 젠지)


🔗 연관 지식 베이스 (Wiki)

Based on Zenji Nishikawa's 3D Graphics Maniax series. Translated & Knowledge-Based for Korean Game Developers.