Unity Chapter 11-22. 좀비 TPS 게임 만들기 : 영상미 Post Process, 최종 빌드
카테고리: Unity Lesson 1
태그: Unity Game Engine
인프런에 있는 이제민님의 레트로의 유니티 C# 게임 프로그래밍 에센스 강의를 듣고 정리한 필기입니다. 😀
🌜 [레트로의 유니티 C# 게임 프로그래밍 에센스] 강의 들으러 가기!
Chapter 11. 좀비 TPS 게임 만들기
Player Character
의 적용 사항들 오버라이딩 all 한번 해주기
🔔 Post Process
카메라에
후처리(Post Processing)
를 구현하자 👉 영상미 구현
- 게임 화면이 최종 출력되기 전에 카메라의 이미지 버퍼에 삽입하는 추가 처리.
- 어떤 엔진에서 하든 가장 마지막 렌더링 단계에서 적용됨
- 선택적으로 특정 오브젝트만 후처리 하는게 안됨
- 핸드폰으로 필터 씌워 사진찍을 때 하드웨어적으로 사진을 먼저 찍은 후 그 이후에 마지막에 필터를 씌워 영상 처리를 하는 원리와 같다.
Post Processing
패키지
유니티에서는
Post Processing
스택이 Package 패키지를 통해 제공이 된다.
- 강의자분께서 미리
Post Processing
패키지를 임포트 해두신 상태.- Window - Package Manager - Post Processing 에서 확인할 수 있다.
- 임포트를 하고 싶다면 Package Manager 에서 검색해서 설치하면 된다.
카메라 설정 변경하기
Main Camera
의 Rendering Path 을 Deferred로 변경해준다.- Edit - Project Settings - Graphics 에서 Rendering Path 확인 가능
- Forward와 Deferred의 차이
- 라이팅을 연산하는 방식이 다르고 Rendering Path가 몇번 일어나냐는 차이
- Deferred가 품질이 더 좋다. 정확하며 구현 방식이 간단하고 성능이 가벼움. 개수 제약 없이 광원 표현 가능
- Forward은 연산량이 많다
- 이 둘에 대한 더 자세한 차이는 나중에 조사해보자
Main Camera
의 MSAA 를 Off로 변경해준다.- Rendering Path가 Deferred 일때는 MSAA가 동작하지 않기 때문에 그냥 꺼준다.
Post Process Layer 컴포넌트 추가
카메라에게 Post Process를 반영해줌
Main Camera
에 Post Processing Layer 컴포넌트를 추가해준다.- 설정 그 자체를 가지고 있는 컴포넌트는 아니며 그저 카메라에 후처리를 반영해줄 뿐이다.
- Trigger에 기본적으로 설정이 되어있는
Main Camera
(자기 자신) 주변에 가까이 있는 Post Process Volume 오브젝트로부터 후처리 설정을 가져와서 자신이 붙어있는Main Camera
카메라 오브젝트에게 이를 반영한다. - Layer를 지정해주면 해당 Layer에 대해서만 Post Process Volume 오브젝트로부터 후처리 설정을 가져온다.
- 미리 강의자 분께서 만들어둔 Layer인 “Post-Process” 로 레이어를 변경해준다.
- Anti-Allasing 의 Mode는 FXAA로 해준다.
- 성능 저하가 가장 적고 연산이 빠름
Post-Process Volume 오브젝트 추가
Hierarchy - Create - 3D Object - Post-process Volume 추가
Post-process Volume
의 Box Collider 컴포넌트- Post Process Layer 컴포넌트의 Trigger에 할당 된 것(
Main Camera
)이 충돌하게 되면 후처리 설정이Main Camera
카메라 오브젝트에게 넘어가게 되는 원리다.
- Post Process Layer 컴포넌트의 Trigger에 할당 된 것(
- IsGlobal 을 체크해준다.
- 체크해주면 카메라가 굳이
Post-process Volume
의 Box Collider 영역에 도달하지 않아도 전체적으로 후처리 효과가 적용된다.
- 체크해주면 카메라가 굳이
- Leyer를 Post-process로 변경
- Post Process Layer 컴포넌트가
Post-process Volume
를 감지할 수 있도록.
- Post Process Layer 컴포넌트가
- Profile 옆에 New를 눌러 프로파일을 생성한다.
- 이 프로파일은 📂Assets/Scenes/Main_Profiles 에 저장된다.
- 그러나 이렇게 생성된 프로파일을 사용하지 않고 강의자 분께서 미리 만들어둔 프로파일을 사용할 것임
- 프로파일은
Main Profile
선택- 📂Assets/Post-process Profiles 에 있음
- 프로파일은
- 하단에 Add Effect를 눌러서 여러가지 효과들을 추가
- 예를 들어
- Bloom을 추가하면 오브젝트의 외곽선에 빛이 퍼지는 효과가 나타난다. 빛 산란 효과
- Intensity 를 조절해보면 오브젝트 외곽선에 뽀샤시한 효과가 나타나는 것을 볼 수 있다!
- Color Grading을 추가하면 오브젝트의 색상들을 한쪽 색상으로 몰아줄 수 있다.
- Tint에서 색상을 클릭하면 그 색상으로 오브젝트들의 색상이 변경되는 것을 볼 수 있다.
- Vignette 효과는 화면의 가장자리를 어둡게 해서 시네마틱한 효과를 준다.
- Screen Space of Reflections 효과는 화면상에서 빛을 반사하는 그림을 화면에서 얻어냄
- Depth of Field 효과는 초점이 맞지 않는 오브젝트는 흐려주게한다.
- Bloom을 추가하면 오브젝트의 외곽선에 빛이 퍼지는 효과가 나타난다. 빛 산란 효과
- 예를 들어
🔔 최종 빌드
배경 음악 추가
Game Manager
에 Audio Source 컴포넌트를 추가한 후 Loop 를 체크, 그리고 Clip으로 “Music”을 선택한다.
진짜 최종 빌드
File - Build Settings 에서 빌드
완강 했다. 끝!!
🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄
댓글 남기기