04 셰이더·머티리얼 - jes79/Unity-AI-Glossary-Playground GitHub Wiki

04 셰이더·머티리얼

렌더 파이프라인(URP/Built-in/HDRP)과 Shader Graph·HLSL 중 무엇으로 만들지 꼭 적으세요.

씬 20개 · 폴더 Assets/00_Scenes/04_Shader

기본 용어

번호 용어 쉽게 말하면 씬에서 보여 주는 것 구현 방식
0401 Shader / Material 그리는 규칙 / 그 규칙에 값을 넣은 것 셰이더 1개로 색만 다른 머티리얼 3개, Hue·셰이더 교체로 공유 관계 확인 런타임 데모
0402 Shader Graph 노드를 연결해 셰이더를 만드는 도구 Shader Graph 노드 레시피 4단계와 대응 HLSL을 단계별로 시연 설명 + 대체 구현
0403 Lit / Unlit 조명 영향 받음 / 안 받음 Lit/Unlit 나란히 조명 슬라이더로 비교, U로 표지판 Unlit 전환 런타임 데모
0404 Albedo(Base Map) / Normal Map 기본 색 텍스처 / 울퉁불퉁한 느낌 텍스처 생성한 벽돌 Albedo vs Albedo+Normal Map, 도는 점광원·Bump Scale 런타임 데모
0405 Metallic / Smoothness 금속 느낌 / 매끈함(반사) Metallic×Smoothness 5x5 구 표, 갑옷 0.9/0.7 런타임 데모
0406 Emission 스스로 빛나는 색 검 테두리 파란 HDR Emission 강도 3 + Bloom 런타임 데모
0407 Alpha / Transparent / Cutout 투명도 / 반투명 / 구멍 뚫기 잎 텍스처 Opaque/Transparent/Cutout 비교, Cutoff 슬라이더 런타임 데모
0408 UV / Tiling / Offset 텍스처 좌표 / 반복 횟수 / 이동 UV Offset을 시간에 따라 흘려 강·폭포 표현, Tiling 슬라이더 런타임 데모
0409 MaterialPropertyBlock 머티리얼 복제 없이 개별 색 변경 적 100마리 MaterialPropertyBlock 개별 색 vs material 복제 비교 런타임 데모

효과 셰이더

번호 용어 쉽게 말하면 씬에서 보여 주는 것 구현 방식
0410 디졸브 (Dissolve) 노이즈 모양으로 타들어가며 사라짐 1초 디졸브 + 주황 HDR 경계, 아래→위 모드 런타임 데모
0411 림 라이트 (Rim Light, Fresnel) 가장자리만 빛남 Fresnel 하늘색 림 라이트 ON/OFF 비교 런타임 데모
0412 아웃라인 (Outline) 외곽선 마우스 올린 아이템에 노란 아웃라인(inverted hull) 런타임 데모
0413 피격 플래시 (Hit Flash) 맞으면 하얗게 번쩍 클릭 시 0.1초 하얗게 번쩍(MPB) 런타임 데모
0414 툰 셰이딩 (Cel Shading) 만화처럼 단계로 끊긴 명암 URP 메인 라이트 기준 3단계 툰 셰이딩, Lit 비교 런타임 데모
0415 홀로그램 스캔라인+깜빡임+반투명 위로 흐르는 스캔라인·Fresnel·깜빡임 홀로그램 런타임 데모
0416 버텍스 애니메이션 (Vertex Displacement) 정점을 움직여 흔들림 표현 풀잎 5000개를 버텍스 셰이더로 바람에 흔듦 런타임 데모
0417 물 셰이더 (Water) 물결·깊이·거품 Depth로 얕은 곳 밝고 깊은 곳 어두운 물 + 거품 런타임 데모
0418 포스필드 / 쉴드 (Intersection) 물체와 닿는 경계가 빛나는 보호막 Depth Intersection으로 닿는 경계가 빛나는 쉴드 런타임 데모
0419 트라이플래너 (Triplanar) UV 없이 지형에 텍스처 입히기 회전하는 바위 위쪽에만 트라이플래너 이끼 런타임 데모
0420 그레이스케일 / 색상 반전 흑백·반전 빙결 파란 틴트, 흑백·반전·화면 전체 흑백 런타임 데모

항목별 상세

0401

Shader / Material — 그리는 규칙 / 그 규칙에 값을 넣은 것

요청 예문: "이 셰이더로 색만 다른 머티리얼 3개를 만드는 법 알려줘."

  • 씬: Assets/00_Scenes/04_Shader/0401_ShaderMaterial.unity
  • 핵심 스크립트: ShaderMaterialDemo, SimpleLit.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0401_ShaderMaterial.cs
  • 구현 방식: 런타임 데모
  • 개념: 셰이더는 화면에 어떻게 그릴지 적어 둔 프로그램이고, 머티리얼은 그 셰이더에 색·텍스처 같은 값을 채워 넣은 에셋이다. 셰이더 하나에 머티리얼 여러 개를 만들어 쓰는 것이 기본 구조다.
  • 씬에서 보여 주는 것: 셰이더 1개로 색만 다른 머티리얼 3개, Hue·셰이더 교체로 공유 관계 확인
  • 확인 포인트: 셰이더 1개로 만든 색만 다른 머티리얼 3개를 보세요. Hue 를 바꾸면 해당 머티리얼만 변하고, 셰이더를 교체하면 세 개가 동시에 바뀝니다. 공유 관계가 이걸로 드러납니다.

0402

Shader Graph — 노드를 연결해 셰이더를 만드는 도구

요청 예문: "URP Shader Graph로 만드는 노드 순서를 단계별로 알려줘."

  • 씬: Assets/00_Scenes/04_Shader/0402_ShaderGraph.unity
  • 핵심 스크립트: ShaderGraphRecipeDemo, GraphEquivalent.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0402_ShaderGraph.cs
  • 구현 방식: 설명 + 대체 구현
  • 개념: 노드를 연결해 코드 없이 셰이더를 만드는 비주얼 도구. 결과는 HLSL 코드와 같으므로, 노드 구성을 알면 코드로도 쓸 수 있고 그 반대도 된다.
  • 씬에서 보여 주는 것: Shader Graph 노드 레시피 4단계와 대응 HLSL을 단계별로 시연
  • 확인 포인트: 노드 레시피 4단계와 각 단계에 대응하는 HLSL 코드를 번갈아 보세요. 같은 결과를 노드와 코드 두 방식으로 만든 것임을 확인할 수 있습니다.

0403

Lit / Unlit — 조명 영향 받음 / 안 받음

요청 예문: "UI처럼 항상 밝게 보이는 Unlit 셰이더로 바꿔줘."

  • 씬: Assets/00_Scenes/04_Shader/0403_LitUnlit.unity
  • 핵심 스크립트: LitUnlitDemo
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0403_LitUnlit.cs
  • 구현 방식: 런타임 데모
  • 개념: Lit 는 빛 계산을 하는 셰이더, Unlit 는 빛을 무시하고 지정한 색을 그대로 내는 셰이더. UI, 표지판, 이펙트처럼 조명과 무관해야 하는 것은 Unlit 이 맞고 성능도 싸다.
  • 씬에서 보여 주는 것: Lit/Unlit 나란히 조명 슬라이더로 비교, U로 표지판 Unlit 전환
  • 확인 포인트: 조명 슬라이더를 움직여 보세요. Lit 구는 밝기가 따라 변하는데 Unlit 구는 그대로입니다. U 로 표지판을 Unlit 으로 바꾸면 어두운 곳에서도 글자가 잘 보입니다.

0404

Albedo(Base Map) / Normal Map — 기본 색 텍스처 / 울퉁불퉁한 느낌 텍스처

요청 예문: "벽에 Normal Map을 넣어서 벽돌 요철이 보이게 해줘."

  • 씬: Assets/00_Scenes/04_Shader/0404_AlbedoNormalMap.unity
  • 핵심 스크립트: NormalMapDemo
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0404_AlbedoNormalMap.cs
  • 구현 방식: 런타임 데모
  • 개념: Albedo 는 표면의 기본 색 텍스처, Normal Map 은 표면의 요철 방향을 담아 빛 계산을 속여 입체감을 내는 텍스처. 폴리곤을 늘리지 않고 디테일을 얻는 표준 방법이다.
  • 씬에서 보여 주는 것: 생성한 벽돌 Albedo vs Albedo+Normal Map, 도는 점광원·Bump Scale
  • 확인 포인트: 도는 점광원 아래에서 Albedo 만 쓴 벽과 Normal Map 을 더한 벽을 비교해 보세요. 같은 평면인데 벽돌 홈에 그림자가 생겨 울퉁불퉁해 보입니다. Bump Scale 을 0 으로 내리면 사라집니다.

0405

Metallic / Smoothness — 금속 느낌 / 매끈함(반사)

요청 예문: "갑옷은 Metallic 0.9, Smoothness 0.7로 설정해줘."

  • 씬: Assets/00_Scenes/04_Shader/0405_MetallicSmoothness.unity
  • 핵심 스크립트: MetallicSmoothnessDemo
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0405_MetallicSmoothness.cs
  • 구현 방식: 런타임 데모
  • 개념: Metallic 은 금속처럼 주변을 반사할지, Smoothness 는 표면이 얼마나 매끈한지를 정하는 값. 이 두 값의 조합이 PBR 재질감의 거의 전부다.
  • 씬에서 보여 주는 것: Metallic×Smoothness 5x5 구 표, 갑옷 0.9/0.7
  • 확인 포인트: Metallic × Smoothness 5x5 구 표를 보세요. 오른쪽 위로 갈수록 거울처럼 되고 왼쪽 아래는 거친 플라스틱처럼 됩니다. 갑옷 구가 0.9/0.7 위치와 비슷한지 확인해 보세요.

0406

Emission — 스스로 빛나는 색

요청 예문: "검 테두리가 파랗게 빛나도록 Emission을 HDR 강도 3으로 넣어줘."

  • 씬: Assets/00_Scenes/04_Shader/0406_Emission.unity
  • 핵심 스크립트: EmissionDemo
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0406_Emission.cs
  • 구현 방식: 런타임 데모
  • 개념: 재질이 스스로 빛나는 색. 실제로 주변을 비추지는 않지만 Bloom 과 함께 쓰면 발광처럼 보인다. HDR 색으로 1 이상 값을 주는 것이 핵심이다.
  • 씬에서 보여 주는 것: 검 테두리 파란 HDR Emission 강도 3 + Bloom
  • 확인 포인트: 검 테두리가 파랗게 빛나는지 보세요. Emission 강도를 0 으로 내리면 평범한 색이 되고, Bloom 을 끄면 번짐만 사라지고 색은 남습니다.

0407

Alpha / Transparent / Cutout — 투명도 / 반투명 / 구멍 뚫기

요청 예문: "나뭇잎 텍스처를 Alpha Clipping(Cutout)으로 바꿔줘."

  • 씬: Assets/00_Scenes/04_Shader/0407_AlphaTransparentCutout.unity
  • 핵심 스크립트: AlphaModeDemo
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0407_AlphaTransparentCutout.cs
  • 구현 방식: 런타임 데모
  • 개념: 완전 불투명(Opaque), 반투명(Transparent), 알파 기준으로 잘라내기(Cutout) 세 가지 렌더링 방식. 나뭇잎·철망처럼 구멍이 많은 것은 Cutout 이 정렬 문제도 없고 싸다.
  • 씬에서 보여 주는 것: 잎 텍스처 Opaque/Transparent/Cutout 비교, Cutoff 슬라이더
  • 확인 포인트: 잎 텍스처를 세 방식으로 비교해 보세요. Opaque 는 배경이 사각형으로 남고, Transparent 는 겹칠 때 정렬이 흔들리고, Cutout 은 깔끔히 잘립니다. Cutoff 슬라이더로 잘리는 기준을 보세요.

0408

UV / Tiling / Offset — 텍스처 좌표 / 반복 횟수 / 이동

요청 예문: "UV Offset을 시간에 따라 움직여서 흐르는 물을 만들어줘."

  • 씬: Assets/00_Scenes/04_Shader/0408_UVTilingOffset.unity
  • 핵심 스크립트: UVScrollDemo
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0408_UVTilingOffset.cs
  • 구현 방식: 런타임 데모
  • 개념: UV 는 텍스처를 메시에 붙이는 좌표, Tiling 은 몇 번 반복할지, Offset 은 얼마나 밀지를 정하는 값. Offset 을 시간에 따라 바꾸면 흐르는 물·컨베이어 같은 움직임이 공짜로 나온다.
  • 씬에서 보여 주는 것: UV Offset을 시간에 따라 흘려 강·폭포 표현, Tiling 슬라이더
  • 확인 포인트: 강물의 텍스처가 계속 흐르는지 보세요. Tiling 을 올리면 물결이 촘촘해지고, Offset 변화 속도를 0 으로 하면 흐름이 멈춥니다.

0409

MaterialPropertyBlock — 머티리얼 복제 없이 개별 색 변경

요청 예문: "적 100마리 색을 MaterialPropertyBlock으로 각각 다르게 바꿔줘."

  • 씬: Assets/00_Scenes/04_Shader/0409_MaterialPropertyBlock.unity
  • 핵심 스크립트: PropertyBlockDemo
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0409_MaterialPropertyBlock.cs
  • 구현 방식: 런타임 데모
  • 개념: 머티리얼을 복제하지 않고 오브젝트별로 셰이더 값만 다르게 넘기는 방법. renderer.material 에 값을 쓰면 머티리얼이 인스턴스로 복제되어 배칭이 깨지는데, 이걸 피할 수 있다.
  • 씬에서 보여 주는 것: 적 100마리 MaterialPropertyBlock 개별 색 vs material 복제 비교
  • 확인 포인트: 적 100마리가 각자 다른 색인데 머티리얼 수가 늘지 않는지 보세요. material 복제 방식으로 바꾸면 같은 화면인데 머티리얼 개수와 Batches 가 치솟습니다.

0410

디졸브 (Dissolve) — 노이즈 모양으로 타들어가며 사라짐

요청 예문: "죽으면 1초 동안 디졸브되고 경계가 주황색으로 빛나게 해줘."

  • 씬: Assets/00_Scenes/04_Shader/0410_Dissolve.unity
  • 핵심 스크립트: DissolveDemo, Dissolve.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0410_Dissolve.cs
  • 구현 방식: 런타임 데모
  • 개념: 노이즈 텍스처의 밝기를 기준값과 비교해 잘라내며, 기준값을 시간에 따라 올려 타들어가듯 사라지게 하는 셰이더. 경계에 밝은 색을 더하면 불타는 느낌이 난다.
  • 씬에서 보여 주는 것: 1초 디졸브 + 주황 HDR 경계, 아래→위 모드
  • 확인 포인트: 디졸브를 실행해 1초 동안 아래에서 위로 사라지는지, 사라지는 경계선이 주황색으로 빛나는지 보세요. 모드를 바꾸면 전체가 균일하게 사라지는 방식과 비교됩니다.

0411

림 라이트 (Rim Light, Fresnel) — 가장자리만 빛남

요청 예문: "Fresnel로 캐릭터 외곽에 하늘색 림 라이트를 넣어줘."

  • 씬: Assets/00_Scenes/04_Shader/0411_RimLight.unity
  • 핵심 스크립트: RimLightDemo, RimLight.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0411_RimLight.cs
  • 구현 방식: 런타임 데모
  • 개념: 보는 방향과 표면 방향의 각도 차(Fresnel)를 구해 가장자리만 밝게 만드는 효과. 캐릭터를 배경에서 떼어 보이게 하거나 SF·마법 느낌을 줄 때 쓴다.
  • 씬에서 보여 주는 것: Fresnel 하늘색 림 라이트 ON/OFF 비교
  • 확인 포인트: 구를 돌려 보며 가장자리만 하늘색으로 빛나는지 확인하고, ON/OFF 로 비교해 보세요. 정면은 거의 변하지 않고 테두리만 밝아지는 것이 Fresnel 특징입니다.

0412

아웃라인 (Outline) — 외곽선

요청 예문: "마우스를 올린 아이템에 노란 아웃라인을 표시해줘."

  • 씬: Assets/00_Scenes/04_Shader/0412_Outline.unity
  • 핵심 스크립트: OutlineHoverDemo, Outline.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0412_Outline.cs
  • 구현 방식: 런타임 데모
  • 개념: 물체 외곽에 선을 그리는 기법. 여기서 쓰는 inverted hull 방식은 메시를 조금 부풀려 뒷면만 단색으로 한 번 더 그려 테두리를 만든다. 선택 표시·만화풍 연출에 쓴다.
  • 씬에서 보여 주는 것: 마우스 올린 아이템에 노란 아웃라인(inverted hull)
  • 확인 포인트: 아이템에 마우스를 올려 노란 테두리가 생기는지 보세요. 테두리 두께는 부풀리는 양이라서 모델이 작을수록 상대적으로 두꺼워 보입니다.

0413

피격 플래시 (Hit Flash) — 맞으면 하얗게 번쩍

요청 예문: "피격 시 0.1초 하얗게 번쩍이는 Hit Flash 셰이더를 만들어줘."

  • 씬: Assets/00_Scenes/04_Shader/0413_HitFlash.unity
  • 핵심 스크립트: HitFlashDemo, HitFlash.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0413_HitFlash.cs
  • 구현 방식: 런타임 데모
  • 개념: 피격 순간 재질 색을 짧게 흰색으로 덮어 번쩍이게 하는 연출. 애니메이션이나 파티클 없이도 맞았다는 사실을 즉시 전달해 가성비가 가장 좋다.
  • 씬에서 보여 주는 것: 클릭 시 0.1초 하얗게 번쩍(MPB)
  • 확인 포인트: 적을 클릭해 0.1초 동안 하얗게 번쩍이고 바로 원래 색으로 돌아오는지 보세요. MaterialPropertyBlock 으로 적용하므로 여러 적을 연달아 때려도 머티리얼이 늘지 않습니다.

0414

툰 셰이딩 (Cel Shading) — 만화처럼 단계로 끊긴 명암

요청 예문: "명암을 3단계로 끊는 툰 셰이더를 URP용으로 만들어줘."

  • 씬: Assets/00_Scenes/04_Shader/0414_CelShading.unity
  • 핵심 스크립트: ToonShadingDemo, Toon.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0414_CelShading.cs
  • 구현 방식: 런타임 데모
  • 개념: 빛의 세기를 그대로 쓰지 않고 몇 단계로 끊어 만화 같은 명암을 만드는 셰이더. 단계 수와 경계의 부드러움이 스타일을 결정한다.
  • 씬에서 보여 주는 것: URP 메인 라이트 기준 3단계 툰 셰이딩, Lit 비교
  • 확인 포인트: 툰 구와 일반 Lit 구를 비교해 보세요. 툰 쪽은 밝음/중간/어두움 3단계로 뚝 끊기고, Lit 쪽은 매끄럽게 이어집니다. 조명을 돌리면 경계선도 함께 돕니다.

0415

홀로그램 — 스캔라인+깜빡임+반투명

요청 예문: "스캔라인이 위로 흐르는 홀로그램 셰이더를 만들어줘."

  • 씬: Assets/00_Scenes/04_Shader/0415_Hologram.unity
  • 핵심 스크립트: HologramDemo, Hologram.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0415_Hologram.cs
  • 구현 방식: 런타임 데모
  • 개념: 반투명 + 흐르는 스캔라인 + 가장자리 발광 + 깜빡임을 겹쳐 입체 영상처럼 보이게 하는 셰이더. SF UI, 유령, 미리보기 표시에 쓴다.
  • 씬에서 보여 주는 것: 위로 흐르는 스캔라인·Fresnel·깜빡임 홀로그램
  • 확인 포인트: 스캔라인이 위로 흐르고 테두리가 밝고 불규칙하게 깜빡이는지 보세요. 뒤쪽 물체가 비쳐 보이는 반투명도 함께 확인해 보세요.

0416

버텍스 애니메이션 (Vertex Displacement) — 정점을 움직여 흔들림 표현

요청 예문: "바람에 풀이 흔들리도록 버텍스 셰이더를 만들어줘."

  • 씬: Assets/00_Scenes/04_Shader/0416_VertexDisplacement.unity
  • 핵심 스크립트: GrassWindDemo, GrassWind.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0416_VertexDisplacement.cs
  • 구현 방식: 런타임 데모
  • 개념: 정점 위치를 셰이더에서 밀어 모양을 바꾸는 기법. CPU 가 아니라 GPU 가 처리하므로 풀·깃발·물결처럼 수천 개를 흔들어도 거의 공짜다.
  • 씬에서 보여 주는 것: 풀잎 5000개를 버텍스 셰이더로 바람에 흔듦
  • 확인 포인트: 풀잎 5000개가 바람에 흔들리는지 보세요. 아래쪽 뿌리는 고정이고 위쪽만 휘는지, 그러면서도 프레임이 떨어지지 않는지 함께 보세요.

0417

물 셰이더 (Water) — 물결·깊이·거품

요청 예문: "Depth로 얕은 곳은 밝고 깊은 곳은 어두운 물 셰이더를 만들어줘."

  • 씬: Assets/00_Scenes/04_Shader/0417_WaterShader.unity
  • 핵심 스크립트: WaterDepthDemo, Water.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0417_WaterShader.cs
  • 구현 방식: 런타임 데모
  • 개념: 깊이(Depth)로 물 밑 거리를 알아내 얕은 곳은 밝고 투명하게, 깊은 곳은 어둡게 칠하고 경계에 거품을 더하는 셰이더. 물결은 보통 UV 흐름과 법선 왜곡으로 만든다.
  • 씬에서 보여 주는 것: Depth로 얕은 곳 밝고 깊은 곳 어두운 물 + 거품
  • 확인 포인트: 물에 들어간 물체 주변에 거품 선이 생기는지, 얕은 가장자리가 밝고 가운데가 어두운지 보세요. 물결이 멈추지 않고 계속 흐르는지도 보세요.

0418

포스필드 / 쉴드 (Intersection) — 물체와 닿는 경계가 빛나는 보호막

요청 예문: "Depth Intersection으로 닿는 부분이 빛나는 쉴드 셰이더를 만들어줘."

  • 씬: Assets/00_Scenes/04_Shader/0418_ForceFieldShield.unity
  • 핵심 스크립트: ShieldDemo, Shield.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0418_ForceFieldShield.cs
  • 구현 방식: 런타임 데모
  • 개념: 깊이 비교로 다른 물체와 닿는 경계를 찾아 그 부분만 밝게 칠하는 셰이더. 보호막·결계·마법 장벽처럼 물체와 교차하는 면을 강조할 때 쓴다.
  • 씬에서 보여 주는 것: Depth Intersection으로 닿는 경계가 빛나는 쉴드
  • 확인 포인트: 쉴드 안으로 물체를 통과시켜 보세요. 쉴드 표면과 물체가 닿는 테두리만 밝게 빛나고, 떨어지면 사라집니다.

0419

트라이플래너 (Triplanar) — UV 없이 지형에 텍스처 입히기

요청 예문: "바위에 트라이플래너 매핑으로 이끼 텍스처를 위쪽에만 입혀줘."

  • 씬: Assets/00_Scenes/04_Shader/0419_Triplanar.unity
  • 핵심 스크립트: TriplanarDemo, TriplanarMoss.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0419_Triplanar.cs
  • 구현 방식: 런타임 데모
  • 개념: UV 좌표 대신 월드 좌표를 X/Y/Z 세 방향에서 투사해 텍스처를 입히는 기법. UV 가 없거나 늘어나는 지형·바위에 이음새 없이 텍스처를 바를 수 있다.
  • 씬에서 보여 주는 것: 회전하는 바위 위쪽에만 트라이플래너 이끼
  • 확인 포인트: 바위를 회전시켜 보세요. 위를 향한 면에만 이끼가 끼고, 회전해도 이끼가 위쪽 면을 따라갑니다. 텍스처가 늘어나거나 이음새가 보이지 않는지도 보세요.

0420

그레이스케일 / 색상 반전 — 흑백·반전

요청 예문: "얼음 상태가 되면 캐릭터를 파란색 계열로 틴트해줘."

  • 씬: Assets/00_Scenes/04_Shader/0420_GrayscaleInvert.unity
  • 핵심 스크립트: ColorEffectsDemo, ColorEffects.shader
  • 빌더: Assets/01_Scripts/Editor/Scenes/04_Shader/Build0420_GrayscaleInvert.cs
  • 구현 방식: 런타임 데모
  • 개념: 색의 밝기만 남겨 흑백으로 만들거나 색을 뒤집는 간단한 색 변환. 사망·회상·빙결 같은 상태 표현이나 화면 전체 연출에 쓴다.
  • 씬에서 보여 주는 것: 빙결 파란 틴트, 흑백·반전·화면 전체 흑백
  • 확인 포인트: 흑백·반전·빙결 틴트를 차례로 적용해 보세요. 오브젝트 하나만 바꾸는 경우와 화면 전체에 거는 경우의 차이도 함께 보세요.