book/31-game-wuthering-waves-deep-dive.md

N/A

31. 게임 심화: 명조(Wuthering Waves)

명조의 공개 기술 단서와 역분석 패턴을 URP 관점으로 재구성한 문서

31. 게임 심화: 명조(Wuthering Waves)

[B] 이 문서는 명조의 “특정 구현”을 복제하는 글이 아니라, 공개된 단서(OFF)와 반복되는 역분석 패턴(B)을 URP에서 재현 가능한 설계 규칙으로 바꿔 적는 문서입니다.

  • [A/B] 읽는 목적: “명조처럼 보이게”가 아니라, “필드 + 캐릭터가 같이 있는 게임에서 NPR 룩을 무너뜨리지 않는 계약”을 확보
  • [B] 핵심 키워드: 하이브리드(배경 효율 vs 캐릭터 제어), face/hair/outline의 강한 제약, temporal(velocity) 안정화

목적

  • [A] 공식 발표(UFSH/인터뷰) 기반 단서를 URP 설계로 변환한다.
  • [B] 커뮤니티 역분석의 반복 기술을 분해한다.

증거 등급 요약(A/B/C)

  • [A] one-pass defer 계열, TAAU, velocity, hybrid 경로 단서
  • [B] Face SDF, LUT 분할, hair highlight, outline 패턴
  • [C] 내부 버퍼/정확한 패스 순서

핵심 개념

서론: “오픈 월드 + 근접 캐릭터”는 렌더링 목표가 충돌한다

  • [A/B] 월드는 광원 수/면적/원거리 가시성이 중요하고, 캐릭터는 얼굴/헤어/실루엣 일관성이 중요하다.
  • [B] 그래서 단일 경로(완전 PBR 또는 완전 toon)로는 둘 중 하나가 무너지는 경우가 많고, 하이브리드로 수렴한다.

개론: 공개 단서로 고정되는 ‘맥락’만 먼저 잠근다

  • [A] OFF(공식)로 고정 가능한 건 보통 “플랫폼/엔진/기능 방향성”이다. 수식/버퍼 포맷까지 확정되지 않는다.
  • [A/B] 따라서 이 문서는 아래 2단계로 기록한다.
  • [A/B] 1) OFF로 “방향성”을 잠근다(예: temporal/리프로젝션 중요, 하이브리드 필요성).
  • [B] 2) B로 “반복 패턴”을 잠근다(예: face SDF + head space, dual-lobe hair, LUT 패킹, 다색 outline).

분석 관점

  • [A/B] 명조 계열 관찰의 핵심은 월드와 캐릭터의 목적 함수가 다르다는 점이다. 월드는 광량/스케일 효율이 우선이고, 캐릭터는 얼굴/헤어의 일관성이 우선이다.
  • [A/B] deferred 성향 단서가 존재해도 캐릭터 구간은 forward 성격의 선택 제어가 필요해 하이브리드 구조로 수렴한다.
  • [B] Face SDF, Hair Flow, LUT 분할은 독립 효과가 아니라 근접 카메라에서 표정과 실루엣을 보존하기 위한 연동 전략으로 해석해야 한다.

구현 해석 포인트

  • [A] temporal 계층(T012)을 후순위로 두면 라인/하이라이트가 먼저 무너져 전체 스타일이 붕괴한다.
  • [C] 패스 순서가 비공개인 구간은 확정 대신 후보 순서를 병기하고, 회귀 테스트로 범위를 좁히는 접근이 안전하다.

심화: URP 전이 로드맵(추천 순서)

  • [B] 0단계(기본 계약): 20장의 pass 계약을 만족하는 Lit 호환 셰이더(18장)부터 확보한다.
  • [B] 1단계(룩의 뼈대): T001(램프+ID) + T005(LUT 패킹)으로 “부위별 반응”을 고정한다.
  • [B] 2단계(얼굴/헤어): T002(Face SDF) + T003(Hair lobe/flow)로 근접 카메라 안정성을 만든다.
  • [B] 3단계(실루엣): T006/T007(다색 outline/선폭) + T008(rim/edge)로 가독성을 고정한다.
  • [A/B] 4단계(시간축): T012(velocity 기반 temporal)로 잔상/플리커를 최종 정리한다.
  • [A/B] 5단계(파이프라인): 프로젝트 규모/플랫폼에 따라 T013/T014로 월드 효율을 분리한다.

기술 포인트 매핑

번호 기술 포인트 등급
1 Hybrid PBR+NPR A
2 One-pass defer 최적화 방향 A
3 캐릭터 velocity 강조 A/B
4 Face SDF 좌우 flip B
5 LUT 기반 재질 분할 B
6 Hair flow spec B
7 Depth/ID rim/outline B
8 AA/톤 순서 민감성 A/B
9 식생 imposter/billboard A/B

결론: 이 문서에서 ‘확정’해야 하는 문장

  • [A/B] 명조를 따라갈 때 가장 먼저 고정할 것은 “특정 수식”이 아니라, 캐릭터 룩을 고정하기 위한 데이터/패스/temporal 계약이다.
  • [B] 구현은 35~46의 기술 문서로 분해해 적용하고, 47 매트릭스에서 우선순위를 확정한다.

URP 매핑 포인트

설계 해석

  • [A/B] T013 적용 기준은 순수 성능이 아니라 캐릭터 룩 고정 가능성이다.

  • [B] T002/T003/T006는 캐릭터 머티리얼 계약과 함께 배치하고 T012는 포스트 마지막 단계에서 안정화한다.

  • [A/B] T013: 불투명과 캐릭터 특수 경로 분리

  • [B] T002/T001/T003/T006 적용

  • [A/B] T012: MotionVectors pass 보장

실패 패턴/오해

  • [B] 얼굴 SDF를 월드축 기준으로 계산
  • [B] LUT 축/행 정의 혼동
  • [A/B] velocity 누락으로 ghost 증가

실무 체크리스트

Sources (섹션 단위 인용)

공식

역분석

보조