유니티 : https://github.com/Unity-Technologies/2d-renderer-samples?utm_source=chatgpt.com
최신화가 안되어서. 최신화 할 겸 만들었습니다.
수정한 샘플 : https://github.com/MinByungGil/2d-renderer-samples
UNITY 2D RENDERER
씬으로 배우는 Unity 2D 조명과 화면 표현
Unity의 2D 조명은 빛 하나만 배치해서 완성하지 않습니다. 빛의 종류, 대상 레이어, 표면 방향, 재질, 후처리를 함께 설계합니다.
핵심 요약
한 장면, 한 가지 질문
각 씬은 하나의 렌더링 개념을 집중해서 보여 줍니다.
빛을 기능으로 확장
기본 조명을 Normal Map, Mask, Shadow, 후처리와 연결합니다.
한 번에 하나씩 비교
설정 하나만 바꾸고 화면 변화의 원인을 확인합니다.
이 글의 목표
배우는 내용
2D Light가 화면에 영향을 주는 과정을 이해합니다. 각 씬의 목적과 관찰 포인트도 함께 확인합니다.
얻는 결과
필요한 샘플 씬을 직접 고릅니다. 조명, 그림자, 재질, 카메라 설정을 비교하며 문제 원인을 찾습니다.
목차
프로젝트 결과물
이 프로젝트는 실행 가능한 씬 10개와 공유 기반 폴더 1개를 제공합니다. 각 씬은 독립적으로 열어 확인합니다.
Lights
빛의 종류, 표면 반응, 적용 범위를 비교합니다. 3개 씬을 제공합니다.
Shadows
하나의 그림자와 여러 그림자의 합성을 비교합니다. 2개 씬을 제공합니다.
Post Processing
Volume과 Bloom으로 최종 화면 분위기를 바꿉니다. 1개 씬을 제공합니다.
Shader Graph
재질 노드로 스프라이트 색상 흐름을 바꿉니다. 1개 씬을 제공합니다.
Pixel Perfect Camera
스프라이트, Tilemap, UI의 픽셀 표현을 비교합니다. 3개 씬을 제공합니다.
Common
URP Asset, 2D Renderer Data, 스프라이트와 Volume 설정을 공유합니다.
추천 학습 순서
- Common에서 공유 설정과 에셋 위치를 확인합니다.
- Lights에서 빛의 종류와 표면 반응을 살펴봅니다.
- Shadows에서 빛과 그림자의 관계를 비교합니다.
- Post Processing에서 화면 효과를 추가합니다.
- Shader Graph에서 재질 표현을 바꿉니다.
- Pixel Perfect Camera에서 최종 화면과 UI를 확인합니다.
Inspector에서 아래 순서로 질문하면 빛 문제를 빠르게 좁힐 수 있습니다.
폴더별 씬 상세 설명
Common/
Common/은 실행 씬을 모아 둔 폴더가 아닙니다. 다른 씬이 함께 사용하는 렌더링 설정과 시각 에셋을 보관합니다.
URP Asset과 2D Renderer Data를 보관합니다.
스프라이트, Normal Map, 외곽선, 쿠키를 보관합니다.
여러 씬이 참고하는 화면 효과 설정을 보관합니다.
공유 설정이 여러 씬의 기본 렌더링 흐름을 결정합니다.

Lights/
이 폴더는 2D Light를 세 단계로 설명합니다. 빛의 모양, 표면 반응, 조명 대상을 차례로 살펴봅니다.
1 Light Types
Assets/Samples/2D Renderer/Lights/1 Light Types.unity
다섯 종류의 2D Light가 빛의 모양과 범위를 바꾸는 방식을 비교합니다.
Global, Parametric, Freeform, Point, Sprite Light 2D를 한 화면에서 살펴봅니다.
배경과 스프라이트에 다섯 종류의 조명을 배치한 비교 씬입니다.
장면 목적에 맞는 Light 종류를 고르고 위치, 색, 강도를 조절합니다.
상세 설명
Global Light 2D는 넓은 영역에 기본 밝기를 만듭니다. Parametric Light 2D는 정해진 도형으로 빛을 만듭니다.
Freeform Light 2D는 점을 움직여 빛의 모양을 직접 만듭니다. Point Light 2D는 중심에서 사방으로 빛을 퍼뜨립니다.
Sprite Light 2D는 이미지 형태를 빛의 무늬로 사용합니다. 같은 스프라이트도 빛의 위치와 범위에 따라 다르게 보입니다.
추천 실험
- 각 Light를 하나씩 끄며 역할을 확인합니다.
- Light 위치를 바꾸며 조명 영역을 비교합니다.
- 색과 강도를 차례로 바꾸며 화면 변화를 기록합니다.

2 Normal Map
Assets/Samples/2D Renderer/Lights/2 Normal Map.unity
Normal Map이 표면 방향을 알려 주고 조명이 명암을 계산합니다.
Normal Map을 연결한 스프라이트와 일반 스프라이트의 차이를 비교합니다.
GlowRocks B와 배경에 Freeform Light를 비추는 비교 씬입니다.
2D 그림에 표면 명암과 입체감을 추가하는 방법을 이해합니다.
상세 설명
Normal Map은 표면이 어느 방향을 향하는지 색으로 저장합니다. 2D Light는 그 방향 정보를 사용해 밝기와 명암을 계산합니다.
빛을 움직이면 표면의 밝은 부분과 어두운 부분도 움직입니다. Normal Map을 끄면 표면 반응이 단순해집니다.
관련 텍스처는 Common/Sprites/GlowRocks B_n.png입니다. 같은 Light를 Normal Map 사용 전후에 비춰 결과를 비교하세요.

3 Masks
Assets/Samples/2D Renderer/Lights/3 Masks.unity
Light Mask는 빛의 대상을 고릅니다. Blend Style은 빛의 합성 방식을 고릅니다.
배경과 오브젝트에 서로 다른 조명을 적용하는 방법을 비교합니다.
Global Light 2D, Key Light, Rim Light를 한 씬에 배치합니다.
Sorting Layer별 조명과 주 조명, 외곽 조명을 설계합니다.
상세 설명
Global Light 2D는 Background 레이어를 비춥니다. Key Light와 Rim Light는 Space Junk 레이어를 비춥니다.
Light Inspector의 Apply To Sorting Layers가 조명 대상을 고릅니다. 오브젝트가 빛 영역 안에 있어도 레이어가 다르면 빛을 받지 않습니다.
Key Light는 기본 합성을 사용합니다. Rim Light는 두 번째 Rim Blend Style을 사용해 오브젝트 외곽을 강조합니다.
Rim Light는 외곽선을 자동으로 그리지 않습니다. 대상 레이어, 조명 영역, 보조 텍스처를 모두 확인해야 합니다.
추천 실험
- Global, Key, Rim Light를 차례로 끕니다.
- Key Light의 대상 Sorting Layer를 해제합니다.
- Rim Light의 Blend Style을 바꾸고 결과를 비교합니다.

Shadows/
이 폴더는 빛이 만드는 어두운 영역을 설명합니다. 하나의 그림자부터 여러 그림자의 합성까지 비교합니다.
1 Shadows
Assets/Samples/2D Renderer/Shadows/1 Shadows.unity
하나의 2D Light와 Shadow Caster가 만드는 기본 그림자를 살펴봅니다.
빛과 오브젝트의 위치가 그림자 방향과 길이에 미치는 영향을 확인합니다.
Rock과 Parametric Light가 만드는 단일 그림자 씬입니다.
Shadow Caster를 연결하고 그림자 경계를 비교합니다.
상세 설명
Shadow Caster는 스프라이트가 그림자를 만드는 경계를 정의합니다. 빛과 Rock의 상대 위치가 그림자 방향을 결정합니다.
빛과 Rock 사이의 거리는 그림자 길이에 영향을 줍니다. Light와 Rock을 옮기며 그림자 변화를 관찰하세요.

2 Shadow Composite
Assets/Samples/2D Renderer/Shadows/2 Shadow Composite.unity
여러 Rock 오브젝트가 만든 그림자를 하나의 빛 아래에서 합칩니다.
그림자 영역이 겹칠 때 최종 화면이 달라지는 과정을 확인합니다.
여러 Rock과 Shadow Caster를 배치한 합성 그림자 씬입니다.
오브젝트 배치로 그림자 모양을 바꾸고 각 기여도를 확인합니다.
상세 설명
여러 Rock의 그림자 영역이 겹치면 최종 그림자 모양도 달라집니다. Rock과 Light의 위치를 한 번에 하나씩 바꾸세요.
개별 Shadow Caster를 끄면 해당 Rock의 기여를 확인할 수 있습니다. 이 씬은 그림자를 조명 결과의 조각으로 이해하도록 돕습니다.

Post Processing/
이 폴더는 조명 결과에 화면 효과를 추가하는 방법을 설명합니다.
1 Post Processing
Assets/Samples/2D Renderer/Post Processing/1 Post Processing.unity
Volume이 2D 조명 장면에 후처리 효과를 추가합니다.
Bloom이 밝은 영역과 전체 화면 분위기를 바꾸는 과정을 확인합니다.
GlowRocks B와 조명 영역에 Bloom Profile을 적용한 씬입니다.
조명과 후처리의 역할을 나누고 화면 분위기를 설계합니다.
상세 설명
2D Light는 장면 안의 빛과 색을 만듭니다. Post Processing은 완성된 화면에 추가 효과를 계산합니다.
Profiles/Bloom Profile.asset은 Bloom 설정을 담습니다. Bloom은 밝은 영역 주변에 부드러운 빛 번짐을 만듭니다.
먼저 Volume 효과를 끕니다. 다음에 Bloom을 켜고 같은 장면을 비교합니다. 마지막으로 효과 강도를 조절합니다.

Shader Graph/
이 폴더는 재질이 화면 색을 바꾸는 과정을 설명합니다.
1 Shader Graph
Assets/Samples/2D Renderer/Shader Graph/1 Shader Graph.unity
Shader Graph 재질이 2D Lit Sprite의 색상 표현을 바꿉니다.
기본 재질과 색상 반전 재질의 차이를 비교합니다.
Rock에 Invert Color 재질을 연결한 비교 씬입니다.
노드를 연결해 재질 색상 흐름을 만들고 조명과 함께 비교합니다.
상세 설명
Shader Graph는 코드를 직접 작성하지 않고 재질 흐름을 구성합니다. Invert Color 그래프는 입력 색상의 반대 색상을 출력합니다.
2D Lit Sprite는 재질과 조명 결과를 함께 화면에 그립니다. 따라서 같은 조명도 재질에 따라 다른 색을 보여 줍니다.
Materials/Invert Color.mat와 Shader Graphs/Invert Color.shadergraph를 차례로 확인하세요.

Pixel Perfect Camera/
이 폴더는 화면을 픽셀 격자에 맞추는 방법을 비교합니다. 조명보다 카메라, 스프라이트, 타일, UI 표현을 다룹니다.
1 SpriteRenderer Examples
Assets/Samples/2D Renderer/Pixel Perfect Camera/1 SpriteRenderer/1 SpriteRenderer Examples.unity
SpriteRenderer 이동 사례를 두 카메라로 비교합니다.
오브젝트 이동 방식이 픽셀 정합과 화면 가장자리에 미치는 영향을 확인합니다.
정지, 부모 이동, 애니메이션, 물리, 스크립트 이동 사례를 배치합니다.
일반 카메라와 Pixel Perfect Camera의 차이를 설명합니다.
상세 설명
장면은 Stationary, Animated, Physically Controlled 같은 사례를 제공합니다. 각 사례는 서로 다른 이동 방식을 보여 줍니다.
화면의 Pixel Perfect 토글로 두 카메라를 전환합니다. 정지 오브젝트와 이동 오브젝트의 가장자리를 차례로 비교하세요.

2 Tilemap Examples
Assets/Samples/2D Renderer/Pixel Perfect Camera/2 Tilemap/2 Tilemap Examples.unity
Dungeon과 애니메이션 Water Tilemap을 두 카메라로 비교합니다.
타일 경계와 카메라 이동이 픽셀 정합에 미치는 영향을 확인합니다.
던전, 물 타일, 로봇 캐릭터를 배치한 이동형 비교 씬입니다.
타일 경계, 카메라 추적, Rule Tile 결과를 함께 관찰합니다.
상세 설명
Dungeon은 Rule Tile로 만든 던전 타일을 보여 줍니다. Water는 애니메이션 타일로 만든 물 표현을 보여 줍니다.
실행 중 방향키로 로봇 캐릭터를 움직입니다. Pixel Perfect 토글로 카메라를 바꾸고 타일 경계를 비교하세요.

3 UI Scaling Example
Assets/Samples/2D Renderer/Pixel Perfect Camera/3 UI Scaling Example/3 UI Scaling Example.unity
기준 해상도에 맞춰 카메라와 UI 크기를 비교합니다.
화면 크기와 종횡비가 UI 배치에 미치는 영향을 확인합니다.
기준 해상도 320 x 180과 Screen Space - Camera UI를 사용하는 씬입니다.
UI 크기, Crop Frame, Custom Canvas Scaler의 역할을 비교합니다.
상세 설명
Game 뷰의 해상도와 종횡비를 바꾸며 UI를 비교합니다. Canvas의 기존 Canvas Scaler를 끄고 Custom Canvas Scaler를 확인합니다.
Pixel Perfect Camera의 Crop Frame X/Y 설정도 함께 살펴봅니다. Screen Space - Camera 조건에서 UI 배치와 잘림을 비교하세요.

장면을 확인하는 실험 규칙
빛이 보이지 않을 때 확인할 순서
- 스프라이트의 Sorting Layer를 확인합니다.
- Light의
Apply To Sorting Layers를 확인합니다. - Light가 오브젝트를 실제로 덮는지 확인합니다.
- Light의 Intensity가 0에 가깝지 않은지 확인합니다.
- 스프라이트가 2D Renderer용 재질과 셰이더를 사용하는지 확인합니다.
용어 사전
'Unity > 이론' 카테고리의 다른 글
| Unity Learn 정식 오픈 (0) | 2022.09.02 |
|---|













