Let's Girin!
[Unity] 2D 쉐이더 본문
※ 유니티 코리아에서 2023년 7월 19일 강의된 내용을 정리하였습니다.
출처) https://www.youtube.com/watch?v=8-KkseDSXeI&list=WL&index=3&t=151s
* Shader
● 렌더링된 그래픽을 제어하는데 사용되는 프로그래밍 코드.
● 그래픽 데이터의 음영과 색상을 계산하여 다양한 재질을 표현하는 계산 방법.
● 객체의 머테리얼을 커스터마이징 가능.
1. Rendering Pipeline & Shader
* Graphics Buffer
● 그래픽 데이터를 저장하는 메모리 공간.
● 데이터를 임시로 저장하고 처리하는데 사용.
[ Vertex Buffer ]
- 정점 데이터( 위치, 색상, 텍스처 좌표 등)를 저장.
[ Index Buffer ]
- 정점을 연결하여 기본 도형을 생성하는데 사용.
Vertex Buffer + Index Buffer => Mesh
* Pixel Shader
● 렌더링되는 객체의 픽셀 생삭 값을 계산.
● 하나의 점을 그려줌
Shader ⊂ Matefial
● 머테리얼은 쉐이더와 결합하여 렌더링 속성을 설정.
● 머테리얼은 쉐이더의 인스턴스로서, 쉐이더의 파라미터 값을 조절.
● 텍스처, 색상, 반사, 투명도 등
Vertex Shader Vs Pixel Shader
[ Vertex Shader ]
● 모델을 월드 공간에서 뷰 공간으로 변환
● 이동, 회전, 크기 변환
[ Pixel Shader ]
● 정점에서 보간된 데이터를 기반으로 각 픽셀의 색상 값을 계산
● 색상, 빛, 그림자 처리
2. Vector
● 3D 공간에서 위치, 크기, 방향 정보를 나타내는 데이터
● 벡터를 사용하여 오브젝트의 수학적 연산을 수행
* UV
● UV는 텍스처 매핑을 위한 좌표
● 각 정점에 대한 2D 텍스처 매핑 위치를 지정하는 좌표로서, 0에서 1사이의 값을 가짐
3. 2D Shader Graph
[ 사용방법 ]
방법1) Asset -> Create -> Shader -> Visual Effect Graph -> Shader Graph 생성
방법2) Asset -> Create -> Shader -> PBR Graph -> Shader Graph 생성
'Unity' 카테고리의 다른 글
[Unity] 최적화 - System.Diagnostics.Conditional (0) | 2023.11.22 |
---|---|
[Unity] 최적화 - Yield return new (1) | 2023.11.02 |
[Unity] 쉐이더와 비주얼 이펙트 (1) | 2023.10.12 |
[Unity] URP/HDRP/SRP (1) | 2023.07.24 |
[Unity] 데이터베이스 서버 만들기 (0) | 2023.05.17 |