Unity Chapter 11-22. 좀비 TPS 게임 만들기 : 영상미 Post Process, 최종 빌드

Date:     Updated:

카테고리:

태그:

인프런에 있는 이제민님의 레트로의 유니티 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 확인 가능
    • ForwardDeferred의 차이
      • 라이팅을 연산하는 방식이 다르고 Rendering Path가 몇번 일어나냐는 차이
      • Deferred가 품질이 더 좋다. 정확하며 구현 방식이 간단하고 성능이 가벼움. 개수 제약 없이 광원 표현 가능
        • Forward은 연산량이 많다
      • 이 둘에 대한 더 자세한 차이는 나중에 조사해보자
  • Main Camera의 MSAA 를 Off로 변경해준다.
    • Rendering Path가 Deferred 일때는 MSAA가 동작하지 않기 때문에 그냥 꺼준다.

Post Process Layer 컴포넌트 추가

카메라에게 Post Process를 반영해줌

image

  • 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 추가

image

  • Post-process Volume의 Box Collider 컴포넌트
    • Post Process Layer 컴포넌트의 Trigger에 할당 된 것(Main Camera)이 충돌하게 되면 후처리 설정이 Main Camera 카메라 오브젝트에게 넘어가게 되는 원리다.
  • IsGlobal 을 체크해준다.
    • 체크해주면 카메라가 굳이 Post-process Volume의 Box Collider 영역에 도달하지 않아도 전체적으로 후처리 효과가 적용된다.
  • Leyer를 Post-process로 변경
    • Post Process Layer 컴포넌트가 Post-process Volume를 감지할 수 있도록.
  • 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 효과는 초점이 맞지 않는 오브젝트는 흐려주게한다.

image


🔔 최종 빌드

배경 음악 추가

Game Manager에 Audio Source 컴포넌트를 추가한 후 Loop 를 체크, 그리고 Clip으로 “Music”을 선택한다.

진짜 최종 빌드

File - Build Settings 에서 빌드

완강 했다. 끝!!



🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우 
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄

맨 위로 이동하기


Unity Lesson 1 카테고리 내 다른 글 보러가기

댓글 남기기