랜더링 파이프라인
https://rito15.github.io/posts/rendering-pipeline/
전역조명(Global Illumination)
-3D Geometry에서 직접 광원과 다른 물체에 반사된 간접 광원 및 그림자를 랜더링해 좀 더 사실적인 조명을 구현하는 것
조명 모드
-유니티에서 제공하는 조명은 Realtime, Mixed, Baked 세 가지가 있다.
Realtime
-실시간 조명 설정 : 씬에 직접 광을 적용해 매 프레임 조명연산 후 화면을 업데이트
Mixed
-Lighting Mode 옵션에 따라 달라진다.
Baked
-런타임 시 조명 연산 처리를 하지 않는 조명.
-정적인 물체에 전역조명과 그림자 생성/ 동적인 물체에는 Light Probe로 조명효과 적용
라이트 매핑(Lightmapping)
-씬에 배치된 모든 3D 모델에 영향을 미치는 조명을 텍스처로 미리 만드는 과정
+) 라이트맵(Lightmap) : 라이트 매핑을 통해 결과로 만들어진 텍스트 파일
UV mapping
- 프로젝트의 3d 모델링 프로세스에서 3D 모델의 표면을 텍스처 매핑을 위한 2d 이미지로 만드는 과정
Generate Lightmap UVs 옵션
-라이트 매핑을 적용하려면 외부에서 임포트한 3d 모델의 UV를 설정해야한다.
Contribute GI 플래그
-라이트매핑을 하려면 라이트 매퍼에 그 대상을 알려줘야한다.
=> Contribute GI 플래그를 체크하지 않으면 라이트 매핑 대상에서 제외된다.
라이팅 뷰
-Windows> Rendering > Lighting
-auto generate 옵션을 체크하고 베이크된 라이트맵은 캐시에 저장된다. 이 캐시를 GI Cache라 한다.
=> 체크하면 계속 바뀔때마다 새로 베이크해 느려지므로 주의하자.
-실행 파일에 라이트맵을 함께 배포하려면 auto generate 옵션을 끄고 수동으로 Bake해야한다. 캐시에 저장된 라이트맵은 실행파일에 저장되지 않고 유니티 에디터에서만 확인할 수 있기 때문이다.
Progressive 라이트매퍼
-Path tracing 기반의 라이트 매퍼로 라이트맵과 라이트 프로브를 점진적으로 베이크하는 기능을 제공
area Light는 실시간 조명이아니다.
간접조명 효과를 내는데 효과적이다.
라이트 프로브 - 라이트맵을 베이킹할때 해당 라이트 프로브에 주변부의 광원데이터를 미리 저장함
=>근처를 지나는 동적 객체에 광원 데이터를 전달해 해당 객체의 색상을 보간시켜 실시간 조명과 같은 효과를 내는 방식
'유니티 심화' 카테고리의 다른 글
Input System -Action, Binding (0) | 2023.08.31 |
---|---|
SceneManager클래스- LoadSceneAsync, LoadSceneMode.Additve/Single (0) | 2023.08.30 |
Raycast-총알 발사 로직 수정/ 동적 장애물-NavMeshobstacle (0) | 2023.08.29 |
(UI)생명 게이지 점수 구현 - PlayerPrefs로 저장 및 불러오기 (0) | 2023.08.29 |
Object Pooling 연습 - 총알 생성 (0) | 2023.08.28 |