30. 서브컬쳐 렌더링 기술 택소노미
이 문서는 28~48 시리즈의 “용어 사전”이 아니라, 구현을 가능한 한 빨리 닫기 위한 작업 단위 표준(T-ID) 입니다. [B]
- [B] 같은 효과 이름(예: “카툰 쉐이딩”)도 입력 데이터가 다르면 구현/디버깅 지점이 완전히 달라진다.
- [B] 따라서 본 시리즈는 “효과”보다 “입력 계약 + 패스 계약 + 시간축 계약”을 먼저 고정하고, 이를 T-ID로 번호화한다.
목적
- [A/B] 반복되는 기술을 공통 용어(T-ID)로 정리한다.
- [A] 게임 문서(31~34)와 기술 문서(35~46)를 연결한다.
증거 등급 요약(A/B/C)
A: 공식 발표로 확인되는 파이프라인 단서B: 역분석에서 반복되는 구현 패턴C: 가설/실험 후보
핵심 개념
서론: T-ID가 없으면 문서가 ‘룩 설명’으로 붕괴한다
- [B] “어떤 게임은 outline이 예쁘다”는 구현 힌트가 아니다. 어떤 입력으로 어떤 패스에서 어떤 결함을 피했는지를 알아야 재현된다.
- [B] T-ID는 그 질문을 강제로 고정한다: “이 기술은 무엇을 입력으로 받아, 어디에서 적용하며, 무엇이 자주 깨지는가?”
개론: T-ID -> 문서 링크(빠른 이동)
| T-ID | 기술 | 대응 문서 | 한줄 요약 |
|---|---|---|---|
| T001 | Ramp + Material ID | 35장 | NdotL을 램프 + 부위 ID로 구간화해 스타일을 고정 |
| T002 | Face SDF + Head Space | 36장 | 헤드 로컬 축 기준으로 얼굴 명암 기준을 고정 |
| T003 | Hair Lobe + Flow | 37장 | dual-lobe/flow로 헤어 하이라이트 방향성과 리듬 제어 |
| T006/T007 | Multi-Color Outline + Line Width | 38장 | 마스크 기반 다색 외곽선 + 거리/FOV 기반 선폭 안정화 |
| T004 | Eye Parallax/Refraction | 39장 | 다층 눈 + 저비용 시차/굴절 근사 |
| T009 | Bangs Shadow + Stencil | 40장 | 스텐실로 앞머리/얼굴 레이어 충돌을 제어 |
| T010 | Character Selective Grade | 41장 | 캐릭터 마스크 기반 선택 보정으로 가독성 유지 |
| T008 | Depth Rim + Screen Edge | 42장 | rim(저주파) + edge(고주파) 결합으로 실루엣 강화 |
| T012 | Temporal Stability(TAA/Velocity) | 43장 | velocity + clamp로 hard step/라인의 잔상 억제 |
| T011 | OIT Transparent Path | 44장 | Weighted Blended OIT로 투명 정렬 문제 완화 |
| T013 | Hybrid Forward/Deferred | 45장 | 월드 효율 + 캐릭터 제어를 파이프라인에서 분리 |
| T005 | Material LUT Packing | 46장 | 부위별 파라미터를 LUT로 패킹해 운영/성능 안정화 |
| T014 | Platform Tiering | 45장, 47장 | 플랫폼별 해상도/패스/샘플 수로 룩을 유지하며 비용 통제 |
분류 이론 프레임
- [A/B] 택소노미는 효과 이름보다 입력 데이터 계약을 기준으로 분류해야 재현성이 올라간다. 같은 외형이라도 입력이
Depth인지Material ID인지에 따라 실패 지점이 달라진다. - [B] 1차 축은 조명 반응(
T001~T005), 2차 축은 실루엣/가독성(T006~T010), 3차 축은 시간축/파이프라인(T011~T014)으로 정의한다. - [A/B] 이 구조를 쓰면 게임 문서(31~34)에서 "무엇을 썼는가"보다 "왜 필요한가"를 역추적할 수 있다.
분석 단위 정의
-
[B] T-ID 하나는
아트 입력 + 셰이더 함수 + 패스 위치를 함께 가진 최소 구현 단위로 본다. -
[C] 내부 엔진 정보가 부족한 경우에도 최소 단위 기준으로 가설을 분리하면 단정 오류를 줄일 수 있다.
-
T001Ramp + Material ID -
T002Face SDF + Head Space -
T003Hair Lobe + Flow -
T004Eye Parallax/Refraction -
T005Material LUT Packing -
T006Multi-Color Outline -
T007Distance-based Line Width -
T008Depth Rim/Screen Edge -
T009Bangs Shadow + Stencil -
T010Character Selective Grade -
T011OIT Transparent Path -
T012Temporal Stability(TAA/Velocity) -
T013Hybrid Forward-Deferred -
T014Platform Tiering
심화: T-ID를 문서에 “붙이는” 규칙(운영용)
- [B] 각 기술 문서는 최소한 아래 4줄을 명시해야 한다.
- [B] 입력 계약: 어떤 텍스처/버퍼를 어떤 색공간/필터/정밀도로 읽는가
- [B] 패스 계약: 어떤 LightMode/RendererFeature 위치가 필요한가(DepthNormals/MotionVectors 포함)
- [B] 관측 결과: 어떤 장면에서 이득이 가장 큰가(근접/원경/네온/야간)
- [B] 실패 패턴: 가장 흔한 결함 2~3개 + 디버깅 포인트
결론: 추천 적용 순서(기승전결로 쌓기)
- [B] 1단계(룩의 뼈대): T001, T002, T003, T005
- [B] 2단계(가독성/레이어): T006/T007, T009, T010, T008
- [A/B] 3단계(시간축/파이프라인): T012, T011, T013, T014
URP 매핑 포인트
설계 해석
-
[A/B] URP 매핑의 핵심은 기능 추가가 아니라 계약 고정이다. 예를 들어
T012는MotionVectorspass가 없으면 품질이 급격히 붕괴한다. -
[B] 문서 간 상호참조는
T-ID -> 35~46장링크를 기준으로 유지하고, 게임 문서는 채택 우선순위 중심으로 기술한다. -
[A] T001~T005: HLSL 함수/텍스처 계약
-
[A/B] T006~T010: RendererFeature/추가 패스
-
[A/B] T011~T014: RenderGraph/Temporal/플랫폼 설정
실패 패턴/오해
- [B] 같은 용어라도 입력 채널 계약 차이를 무시.
- [A] temporal 기술을 후순위로 미뤄 최종 품질 붕괴.