데이터 지향 기술 스택(DOTS)의 몇 가지 주요 업데이트에 대한 개요입니다. 유니티에서는 Unity의 핵심을 DOTS로 재구축함에 따라 지속적으로 새로운 패키지를 스택에 추가하고 있습니다. Unity 패키지 매니저에서 DOTS 패키지를 설치하여 시작하세요.
DOTS 샘플 프로젝트 지금 사용 가능
유나이트 코펜하겐 2019에서는 화이트 박스이자 여러 가지 새로운 DOTS 기술(Unity 피직스, 넷코드, 하이브리드 렌더러 및 전환 워크플로)이 함께 사용된 3인칭 슈팅 게임 데모를 보여주는 DOTS 샘플 프로젝트가 공개되었습니다.
DOTS 샘플은 단순한 환경으로 Unity 2019.3에서 DOTS 패키지가 멀티플레이어 슈팅 게임에서 어떻게 작동하는지 보여줍니다. 내부 테스트 프로젝트용으로 설계되었지만, 자유롭게 다운로드하여 실험해 보시기 바랍니다. Github에서 다운로드하실 수 있으며 모든 소스 코드 및 에셋이 포함되어 있습니다.
전환 워크플로(실험 기능)
새로운 DOTS 전환 워크플로를 사용하면 클릭 한 번으로 게임 오브젝트를 엔티티로 전환한 다음 기존 워크플로에 DOTS를 활용할 수 있습니다. 예를 들어 신속한 레벨 디자인 반복 작업을 위해 게임 오브젝트를 사용한 다음 런타임 시 이를 간단히 엔티티 표현으로 전환할 수 있습니다. 새로운 엔티티 프리뷰 인스펙터를 사용하면 게임 오브젝트가 DOTS 엔티티로 전환되는 방식을 확인할 수 있습니다.
이러한 전환 과정을 통해 게임 오브젝트와 기존 제작 워크플로 컨셉을 효율적이고 스트리밍 가능한 런타임 데이터로 손쉽게 전환할 수 있습니다. 신속하고 직관적인 워크플로가 하이퍼 ECS로 최적화되고 스트리밍 가능하여 방대한 성능상의 이점을 제공하는 런타임 데이터와 결합되어 에디터에서 게임 월드 작업 시 두 월드 모두에 최적화된 성능을 얻을 수 있습니다.
Unity 라이브 링크(실험 기능)
새로운 Unity 라이브 링크를 사용하면 에디터에서 스탠드얼론 플레이어를 실행하는 연결된 모든 기기에 변경 사항을 적용하고 반영된 변경 사항을 확인할 수 있습니다. 이전에는 실행 파일을 생성하고, 모든 에셋을 빌드하고 모든 스크립트를 빌드한 다음 이를 테스트하려는 기기에 매번 업로드해야 했지만, 이제는 실시간으로 테스트할 수 있습니다.
반복 속도는 게임 세계를 만든 다음 사용자 환경을 미세 조정하고 다듬는 과정의 핵심이기 때문에 실제 타겟 디바이스에서 게임과 실시간으로 인터랙션하는 것은 매우 중요합니다. Unity 라이브 링크는 기기상의 성능 피드백을 제공하므로 다양한 선택에 따른 기기상의 성능 결과를 직접 확인하고 디테일과 성능 간의 적절한 균형을 찾을 수 있습니다.
라이브 링크 빌드를 생성하고 나면 다음에 변경 사항을 적용할 때에는 씬을 저장하기만 하면 되며, Unity는 업데이트된 사항을 통합하여 이를 라이브 링크 플레이어로 전송합니다.
패키지 매니저에서 엔티티 패키지(프리뷰)를 설치하여 Unity 라이브 링크를 사용해 보세요.
Unity 애니메이션(실험 기능)
DOTS 기반 프로젝트를 위한 이 새로운 애니메이션 시스템은 애니메이션 블렌딩, IK, 루트 모션, 레이어, 마스킹 등과 같은 다양한 주요 애니메이션 기능을 제공합니다. 이 기능은 DOTS 샘플 프로젝트를 통해 실험 패키지로 제공됩니다.
Unity 피직스
DOTS 샘플 프로젝트는 충돌 검사와 공간 쿼리에 새로운 스테이트리스(stateless) Unity 피직스 시스템을 활용합니다. 이 엔진은 C#/HPC#으로 작성되어 버스트 컴파일러로 무엇을 구현할 수 있는지 보여줍니다. 새로운 물리 엔진 덕분에 플레이어, 환경 및 발사체에 대한 충돌 검사를 빠르고 정확하게 수행할 수 있을 뿐만 아니라 충돌 감지 관련 문제도 해결할 수 있습니다. 또한 Unity 피직스는 DOTS 샘플 프로젝트의 정확하고 성능이 뛰어난 발 위치 시스템과 같이 샘플 및 사용 사례의 캐릭터 컨트롤러를 강화합니다.
넷코드
DOTS 샘플에 사용되는 FPS 넷코드는 DOTS를 기반으로 구현되어 유사한 아키텍처를 사용한 네트워크 게임을 손쉽게 제작할 수 있습니다. 네트워크 친화적인 데이터 프로토콜 덕분에 FPS 넷코드는 클라이언트측 예측, 권한 서버 및 보간을 제공합니다. 팀 요한슨의 유나이트 강연에서 FPS 넷코드에 대한 소개를 확인하세요.
패키지 매니저에서 Unity 트랜스포트 및 Unity 넷코드 패키지를 설치하여 시작하세요.
DSPGraph 업데이트
유니티에서는 오디오 믹싱과 DOTS용 렌더링 시스템에 대한 작업도 계속하고 있습니다. 특히 성능 향상을 위해 새로운 로우레벨 오디오 엔진인 DSPGraph를 재작성했으며, 그래프 출력에는 영향을 주지 않는 하위 그래프를 실행하는 기능을 추가했습니다. 예를 들어 BPM을 계산하는 오디오 그래프 가운데 노드를 연결할 수 있지만, 오디오 신호에는 영향을 주지 않습니다.
DOTS 오디오 토론 포럼에 가입하여 질문을 하거나 오디오와 관련한 요청 사항을 알려주시기 바랍니다.