화면에 오브젝트를 그리는 과정을 제어하는 시스템
- Shader: 작은 단위의 처리. 각각의 색상을 계산하기 위한 수학적 계산 및 알고리즘 포함
- Mesh : 개체의 모양 정의
- Texture : 비트 맵 이미지.
- Material : Texture에 대한 참조, 타일링 정보, 색상, 색조 등 표면을 랜더링하는 방법 정의. Shader에 따라 옵션이 정해짐
유니티의 Rendering Pipeline
- Built-in : default 렌더 파이프라인, 커스텀 확장에 제한적
- SRP : 스크립트로 렌더리을 제어하고 커스터마이징 기능
a. URP
b. HDRP
URP : Universal Render Pipeline
Cross-Platform Compatibility: URP는 유니티가 지원하는 모든 플랫폼에서 동작하도록 설계
Performance and Scalability: 성능 및 확장성을 목표로 설계
저사양 장치에서도 뛰어난 성능을 제공하도록 최적화
그래픽 설정을 쉽게 조절할 수 있어 다양한 장치에 적합하게 스케일링 할 수 있음
Modern Rendering Features: 현대적인 렌더링 기술을 제공
주요 라이트 유형, 표준 쉐이딩 모델, 환경 리플렉션 등이 포함
Customizability: 사용자 정의 렌더링 파이프라인을 생성할 수 있도록 해주는 유연성을 제공
특정 게임 또는 프로젝트에 필요한 고유한 렌더링 기능을 추가할 수 있음
Graphics Quality: 높은 그래픽 품질을 제공
향상된 라이트 모델, 표면 쉐이딩, 포스트 프로세싱 효과 등을 사용하여 획득
Simplicity: 유니티의 기존 렌더링 시스템에 비해 사용하기 쉬움
그래픽 설정을 단순화하고, 초기 설정을 쉽게 하도록 도와주는 도구가 포함
셰이더 그래프, VFX 그래프 제공
주요 기능과 특징
캐릭터 이동: 캐릭터 컨트롤러는 단순한 이동을 쉽게 구현할 수 있도록 메서드 제공
주로 이동 방향과 이동 속력을 설정
중력 적용 : Rigidbody의 물리를 활용하지 않기 때문에, 중력과 점프 기능 등을 직접 개발
충돌 처리 : 물리 엔진을 사용하지 않고, 캐릭터의 충돌을 감지하고 처리
다른 Collider와의 충돌을 통제하고 경사로와의 상호작용 등을 지원
바닥 검출 : 캐릭터가 바닥 위에 놓이도록 바닥 검출을 처리
바닥과의 거리, 표면 노멀 등을 고려하여 캐릭터의 높이를 조절하거나 점프를 가능하게 함
움직임 제한 : 움직임을 제한하는 기능 제공
지정된 영역 내에서만 움직이도록 하거나, 지형의 경사를 따라 이동할 수 있도록 설정할 수 있음