유니티 6 배포되었다! 최근 이런 저런 일이 많아서 유니티를 많이 못 다뤘는데, 이번에 업데이트도 된 김에 어떤 게 바뀌었는지 알아보고자 글을 작성한다.

그냥 말 그대로 렌더링 성능이 향상 되었다고 한다. 아직 유니티의 렌더링 한계에 도달할 만큼의 고사양 게임을 직접 개발해본 경험은 없어서, 이 성능이 얼마나 향상됐는지 정확히는 모르겠다. 구체적으로는 URP, HDRP 양쪽에서 성능을 크게 향상 시켰다고 한다. (파이프라인의 최적화)
같은 기법들이 적용됐다고 하는데, 하나씩 나중에 다룰 수 있으면 좋겠다.
유니티 6에서 Multiplaye Center라는 허브를 통해 멀티 플레이어 플랫폼에 대한 여러 기능 지원을 해준다고 한다. 기존 유니티 5에서 멀티 게임을 제작해본 경험이 있는데, 유니티에서 제공하는 이 기능이 얼마나 효율적이고 구현이 간단할지가 궁금하긴 하다. 나중에 한 번 간단한 멀티 게임 만들면서 테스트 해보는 것도 좋을듯 하다.

멀티플레이어 위젯은 사전에 구성된 UI로, 설정 + 템플릿 커스터 마이징도 가능하고 로비, 세션 연결, 음성 채팅 등 다양한 기능을 쉽게 추가할 수 있다.
음성 채팅까지 쉽게 기능 추가를 할 수 있다는 점이 1인, 인디 개발자 입장에서는 굳이 서드 파티, 별도의 에셋을 추가하고 코드를 추가로 작성하는 방법보다 이 방법이 간단하고 효율적이면 적극적으로 사용할만 할 거 같다!
추가적으로 플레이 모드 시나리오를 사용해서 전용 서버를 빌드해서 Multyplay Hosting 서버에 바로 업로드하는 등 배포 단계를 구성할 수도 있다고 한다. 아직 이런 배포 과정과 서버 업로드까지는 해본 적이 없긴 한데, 아무튼 편해진 듯하다. 추가적으로 분산 권한이라는 기능을 넣어서 클라이언트 호스틍 게임에서 발생하는 여러 문제를 줄였다고 하는데, 이것도 관심이 좀 간다.

게임을 할 때 주로 방장 역할을 하다보니, 이런 저런 문제가 있었는데 실제 유저 입장에서는 좋은 기능인 것 같다.
쉽게 말하자면 먼저 Unity Web을 모바일 디바이스용 웹을 지원해준다. 이제 포켓 로그 같은 웹 게임을 유니티로도 개발해서 배포할 수 있다는 점이다. 이 부분에서는 대부분 웹 부문에서 한층 업그레이드 된 기능을 제공한다고 강조한다.

추자적으로 액세스할 수 있는 여러 플랫폼에 대해 각각 고유한 빌드 설정과 데이터를 사용하여 빌드 프로필을 생성하고 버전 관리 시스템을 사용할 수 있다고 한다. 다뤄본 적이 없어서 예상만 해보자면 아무래도 맥, 윈도우, 안드로이드와 같은 플랫폼에 따라 별도의 빌드가 가능하도록 해준 것 같다.

APV, 적응적 프로브 볼륨으로 프로브 배치를 자동화해 간접 분산광을 더 빠르게 수정할 수 있도록 프로세스를 간소화했다고 한다. 자세한 설명은 아래와 같다.
APV는 스카이 오클루전 및 시나리오 블렌딩을 통해 매끄러운 전환을 가능하게 하는 놀라운 조명 효과로 비주얼을 향상시킵니다. Unity의 새로운 조명 베이킹 아키텍처는 이제 메모리가 낮은 GPU를 사용하는 디바이스에서도 효율적으로 실행되도록 최적화된 조명 데이터 생성 기능을 제공합니다.
이 부분이 유니티6에서 가장 기대했던 부분이다. Unity Sentis 베타 기간 동안 여러 기능들을 제공한다고 한다.


이제 멍청한 컴퓨터라는 소리를 못하게 될 수도 있다.
대표적으로 문명6라던가..

이 외에도 GPU, CPU 성능 최적화나 UI 툴킷 개선을 통한 UI 개발 가속화 같은 업데이트가 진행됐다고 한다!

리소스 별로 그래픽 메모리를 프로파일링 기능

유니티6가 전반적으로 여러 기능들도 업데이트하고 최적화 이슈도 개선한 것도 좋았는데 아쉬웠던 거는 게임 개발이 주인 개발자 입장에서는 생성형 AI인 Unity Muse가 좀 더 궁금했는데 Sentis의 베타만 제공해준다는 점이 아쉽긴 했다. 아무튼 한 번 해봐야할듯? Unity Sentis를 한 번 다뤄보고 싶기는 하다!