그래픽스

쉐이더 그래프 샘플씬 뜯어보기전 공부목적

유니티세상 2025. 6. 30. 15:57

이건 왜 이렇게 만들었을까?라는 질문하기 

기능 + 시각적 목표 + 기술적 이유

다 뜯어보지 말것! 나의 목적을 기억하자

공감과 왜가 제일 중요하다

 

나의 공부목적

앞으로 직접 효과를 만들기 위해 패턴과 구조를 내 것으로 만들기 위해서

이걸 내 프로젝트에 어떻게 응용할 수 있지?를 기준으로 분석예정

 

이 샘플씬이 보여주려는 핵심은 무엇인가?
무엇을 기반으로 효과가 변화하지
서로 다른 텍스처/속성을 어떻게 자연스럽게 섞고 있나?
시각적 리얼리티에 직접 영향을 주는 요소들은 어디서 조절되고 있나?
UV 처리 / 텍스처 샘플링 / 마스킹 / 출력" 등 기능별 블록이 명확히 보이나?

 

1. 이 샘플의 목적이 뭔가?

-> 어떤것을 표현하려고 했던건지, 무슨 효과를 보여주려고 하는 건지 파악

 

2. 각 영역이 하는 일 시각적으로 나누기

1)

Shader Graph 구조 분할

섹션 하는 일
UV 조작 위치에 따라 마스크를 씌우거나 움직이는 연산 (예: 시간, 거리, 좌표 기반)
Texture 샘플링 Albedo, Normal, Metallic 등 실질적인 재질 느낌
Blending / Mask 서로 다른 재질을 섞는 비율 조절 (Lerp, Mask, Step 등)
출력 연결 Fragment와 Vertex로 결과 전달

 

2) 

다 보지 말기!. 보통 핵심 노드 몇 개로 대부분의 특성이 결정됨

  • Lerp (보간)

  • Step / Smoothstep (마스킹)

  • Sample Texture 2D (질감 정보 추출)

  • Multiply, Add 등 수학 노드

  • Split, Swizzle (벡터에서 x, y, z 따기)

 “이 Lerp는 뭘 기준으로 섞고 있지?” → 그 기준 값을 따라가 보면 핵심 로직이 나와요.

 

 

3) 구체적 예시

Height Mask

U 좌표를 높이 마스크로 사용해 재질 블렌딩 비율을 정해요.

U값이 작을수록(왼쪽) 돌이 보이고, 클수록(오른쪽) 금이 보입니다.

즉, 점점 금속이 올라오는 느낌을 좌표값으로 조절하는 거예요.

 

Normal Blending

두 텍스처의 노멀맵을 자연스럽게 섞는 구간이에요.

금속과 돌의 표면 거칠기를 각각 표현한 뒤, 높이 마스크 기반으로 섞습니다.

 

MOHS

금속(Metallic), 거칠기(Roughness), 반사(Smoothness) 같은 PBR 속성들을 조절하는 영역입니다.

역시 높이 기반으로 블렌딩하여 재질 전환이 자연스럽게 이뤄지도록 합니다.

요소 감각적으로 떠올릴 이미지
Height Mask 금속이 돌 표면을 덮으며 천천히 올라오는 장면
Normal Blending 돌의 거친 표면과 금속의 매끄러운 면이 서서히 전환되는 느낌
MOHS 거칠던 돌길이 점점 빛나고 반사되며 금속 느낌이 나는 재질 변화

 

 

3. “이렇게 보여야 해”라는 감각을 떠올리기

(쉐이더는 감각의 영역임, 어떤식으로 보여줄지)

 

감각-> 기술적으로 표현하기

 

유저는 게임에서 바닥에서 금이 솟아오르는 듯한 시각적 변화를 봅니다.

이걸 위해 U 좌표로 재질이 점점 바뀌는 그라디언트 마스크를 만들고,

동시에 표면 질감, 반사, 광택 등도 같이 변화시키는 거예요.



4. 테스트

실제씬 테스트 및 응용 !

 




 

 

https://unity.com/kr/blog/engine-platform/shader-graph-feature-examples-2022-lts?utm_source=chatgpt.com