[총정리] 5가지 테마로 살펴본 유나이트 LA 2018

게임뉴스 | 윤서호 기자 | 댓글: 8개 |



유니티에서 진행하는 글로벌 개발자 축제, '유나이트 LA 2018'이 25일 막을 내렸다. 최초 3D 웹미디어 제작툴로 시작된 유니티는 어느 덧 세계 상용 엔진 시장에서 언리얼 엔진과 더불어 가장 많이 사용되는 엔진이자, 강력한 게임 엔진으로 인정받아왔다.

그 발전 과정을 매년 진행되는 유나이트 현장을 통해서 확인할 수 있었고, 이번 유나이트 LA 2018 현장에서도 확인할 수 있었다. 특히나 이번 유나이트 LA 2018에서는 유니티가 게임 엔진에 국한하지 않고 애니메이션, 영상 등 다양한 창작물에 활용될 수 있다는 가능성과 그에 관련된 기능들을 소개하는 시간을 가졌다. 아울러 게임 엔진으로서의 본질에 충실하기 위해 구글과 협력한다고 밝히기도 했다. 구글의 클라우드 기반이나, 광대한 데이터를 활용해 매치메이킹 방식에 개선을 가하고자 하는 것이다.

"상상을 현실로 만드는 것" 키노트 강연에서 존 리치텔로 CEO는 유니티 엔진의 존재 이유이자, 기업으로서 유니티가 추구하는 바를 이렇게 밝혔다. 영화와 애니메이션, 그래픽과 아티스트 툴, 머신 러닝과 AI, 모바일 비즈니스, 퍼포먼스/커넥티드 게임, 유니티 오토 테크, XR 기술 등 다방면에서 진행된 이번 유나이트 LA 2018에서 상상을 현실로 만들기 위해 유니티가 어떤 기술을 눈여겨보고 있으며, 어떤 식으로 발전해나갈 것인지 정리해보았다.


▣ '영상 제작툴'로서 유니티가 가진 잠재력은?


이번 유나이트 LA 2018에서 발표된 대표적인 기능인 유니티 시네캐스트 기능은 쉽게 말해 굉장히 많은 카메라를 하나의 케이스에 배치하고, 이를 통해 다각적인 영상 소스를 확보하는 기술이다. 기존의 카메라 촬영 방식은 카메라끼리 화각에 동선이 겹쳐질 수가 있어 하나의 대상을 여러 각도에서 촬영할 때 부득이하게 여러 번 촬영해야 했다.

하지만 유니티 시네캐스트를 활용하면 한 번에 모든 촬영이 가능하다. 실제 여러 대의 카메라를 사용하는 것이 아니기 때문에 카메라끼리 동선이 겹쳐지지 않고 소스를 확보할 수 있는 것이다. 이렇게 하나의 컷에서 여러 소스를 만들어낼 수 있는 기술은 다각도에서 응용이 가능하다. 게임 내 컷씬을 만들고 검토할 때나, 3D 애니메이션을 제작할 때, 때로는 하이라이트 장면이나 리플레이를 만들 때 등 다양하게 사용할 수 있는 것이다.

또한 유니티는 월트 디즈니와의 협업을 통해 '베이맥스 드림'이라는 애니메이션을 제작, 공개해왔다. 이번 유나이트 LA에서는 '빅 히어로'에 등장하는 로봇 '베이맥스'가 주인공인 이 애니메이션이 어떻게 유니티로 만들어지고, 실시간으로 재생하면서 수정이 이루어지는 과정도 소개했다.


메이드 위드 유니티 총괄 이자벨 라바는 리얼 타임 렌더링이 앞으로 애니메이션, 영상 업계에 큰 영향을 미칠 것이라고 강조했다. 애니메이션에 삽입되는 수천 개의 장면을 만들 때, 하루에 렌더링할 수 있는 프레임은 기존 방식에선 4프레임에 불과했다. 그렇지만 유니티 리얼 타임 렌더링을 통해서 렌더링이 몇 초 단위로 끝나버리면서 리드 타임이 줄어들게 되고, 이것이 업계에 큰 변화를 불러올 것이라는 것이다.

유니티의 또 다른 도전은 영상 매체에만 국한되지 않았다. 구매하고자 하는 자동차를 매장에 직접 가지 않아도 사전에 확인할 수 있도록 하는 '오토모티브' 기술도 유니티가 주목하고 있는 분야다. 이 기술은 단순히 실제 있는 자동차를 보여주는 것에 그치는 것이 아니라, 자동차에 옵션이나 색상에 변화를 주었을 때 어떤 식으로 변화가 발생하는지를 연산해서 영상으로 보여주는 것이다.

뿐만 아니라 2006년부터 머신 러닝 분야에서 일했던 호세 데 올리비에라가 자율 주행 자동차를 유니티로 만드는 과정을 소개하는 등, 단순히 영상을 보여주는 것에 그치지 않고 실제 사물에 기술을 적용하고자 하는 시도까지 엿볼 수 있었다.

▲ 유니티는 올해 오토테크 서밋을 개최하는 등, 자동차 관련 분야에 관심을 보이고 있기도 하다


▣ 클라우드 게임 프로세스, 렌더링 파이프라인 - 게임 엔진으로서 유니티의 발전

그렇다면 게임 엔진으로서 유니티는 앞으로 어떻게 발전할 것인가? 이 아젠다에 대해서 가장 처음 공개된 부분은 클라우드 게임 프로세스다. 네트워크 연결의 불안정함, 트래픽 문제는 멀티 플레이 게임에서 유저가 이탈하는 원인 중 하나다. 네트워크 기술이 발전한 나라에서는 이 문제가 체감이 안 될 수 있지만, 일부 국가에서는 네트워크 문제가 발발하기도 한다. 또한 트래픽 과부하는 문제는 네트워크가 발달한 곳에서도 얼마든지 발생할 수 있는 문제다.

이를 방지하기 위해 유니티는 구글 클라우드와 협업해 클라우드 컴퓨터 시스템을 구축하고 있다고 밝혔다. 유니티에서는 이를 '커넥티드 게임'이라고 소개하면서, 네트워크와 트래픽에 대한 부담을 클라우드 컴퓨터 시스템으로 덜어내, 네트워크의 불안정함이나 트래픽 과다로 인한 부하를 줄여나간다는 것이 '커넥티드 게임'의 핵심이라고 밝혔다.

또한 게임 엔진에서 가장 중요한 부분은 렌더링이다. 모델링에 효과나 애니메이션, 맵핑을 입히고 이를 엔진이나 프로그램 내에만 돌리는 것이 아니라 실제 게임이나 영상에 적용 가능하도록 하는 렌더링은 일반적으로 게임 개발에서 가장 오래 걸리면서 리드 타임을 줄이기 어려운 파트 중 하나로 손꼽힌다. 그래픽, 특수효과 등이 다양하게 적용될수록 이를 연산해서 렌더링을 처리하는 데 오래 걸리기 때문이다. 이 부분을 해결하기 위해서는 이펙트를 최소화하거나, 혹은 연산 능력을 높이는 수밖에 없다.



▲ 렌더링 문제를 해결하기 위한 파이프라인 구축이 이번 유나이트 LA 2018에서 이슈 중 하나였다

유니티에서 이번 유나이트 LA 2018에서 공개한 해결책은 렌더링 파이프라인이다. 유니티 엔진 자체적으로 영상 렌더링 파이프라인을 정비해 모바일에서 PC, 콘솔에 이르기까지 두루 섭렵할 수 있는 두 가지 렌더링 파이프라인을 만들어낸 것이다. 비교적 저사양의 하드웨어에서도 원활한 렌더링을 지원하는 LWRP(LightWeight Render Pipeline), 그리고 고사양의 하드웨어에서 이에 걸맞는 고성능의 비주얼을 뽑아내는 HDRP(High Definition Render Pipeline)이다.

이 두 파이프라인을 활용한 사례는 테크 데모 '메가시티'를 통해서 엿볼 수 있었다. 차량이 일상화된 미래 도시를 배경으로 만들어진 이 데모에는 총 450만의 메쉬 렌더링이 이뤄졌다. 또한 좌우 폭이 km 단위인 오픈 월드에, 자잘한 쉐도우 맵까지 적용됐음에도 불구하고 모바엘 환경에서도 깔끔한 60 프레임으로 구동되는 것을 엿볼 수 있었다. 이러한 대규모 프로젝트를 모바일에서도 무리없이 처리하는 모습은 앞으로 유니티 엔진으로 고사양의 게임을 더 쉽게 다양한 플랫폼으로 만들어낼 수 있는 가능성을 보여주었다.

▲ 뿐만 아니라 간단하게 고퀄리티 FPS 게임을 만들 수 있는 샘플까지도 발표됐다


▣ 유니티 엔진의 단점을 극복하고 한 단계 앞으로 나아가기 위한 기술, ECS


지금은 덜하지만, 한때 유니티는 개발자들에게 저사양, 소규모 프로젝트 지향 엔진이라는 평가를 듣기도 했다. 그 결정적인 이유는 멀티스레딩을 원활히 지원하지 않는다는 점이었다. 다수의 물리 연산 등을 코어 하나에서만 처리하기 때문에 과부하가 걸리기 쉽고, 이는 프레임 드랍 등 다양한 이슈와 직결되기 때문이었다.

이런 문제를 해결하기 위해서 유니티는 ECS(Entity Component System) 기술을 도입해왔다. ECS는 객체지향이 아닌 데이터 지향 시스템으로, 동작을 관여하는 스크립트가 객체마다 생성되었던 것을 1개로 줄려 인스턴싱 효과를 얻을 수 있는 시스템이다. 일반적으로 게임에 등장하는 객체는 각자 스크립트를 갖고 있다. '끊임없이 좌우로 움직인다'라던가, '플레이어 캐릭터를 향해 움직인다', 혹은 '특정 조건이 갖춰졌을 때 어떻게 반응한다'와 같은 스크립트다. 결국 이 명령어 덩어리가 게임을 만드는 근간이고, 게임을 만드는 과정 그 자체다.

문제는 게임의 사이즈가 커지고, 객체의 수가 증가할수록 스크립트도 그만큼 늘어나면서 프로세스 부하가 커진다. 이를 해결하기 위한 방법으로는 프로세스를 한 번에 처리할 수 있는 능력을 높이거나, 프로세스의 수 자체를 줄이는 일이다.

ECS는 그 중 후자에 속한다. 각 객체의 공통되는 데이터 영역을 걸러내, 조건에 부합할 경우 스크립트를 따르도록 만들기 때문이다. 기존의 방식이 바닥에 뿌려진 콩을 하나하나 손으로 주워 옮기는 작업이라면, ECS는 길다란 장대로 콩을 쓸어 옮기는 방식이다. 손에 비해 장대가 길듯 스크립트 하나의 크기는 커지겠지만, 해야 할 일은 확연히 줄어든다. 인간이 도구를 사용하면서 작업 효율성을 올렸듯, 게임 프로세스에 하나의 도구가 추가된 셈이다.



▲ 오브젝트가 많아지면 스크립트도 많아진다. ECS는 이를 효율적으로 처리하기 위한 도구인 셈

이번 유나이트 LA 2일차 실시간 스트리밍은 ECS의 일반 개요에서부터 스플라인 기반 AI 에이전트, 버스트 컴파일러, 디버거, API 등 ECS를 중심으로 편성이 되었다. ECS를 활용해서 어떻게 프로세스를 줄여나갈 수 있으며, 그 과정에서 발생할 수 있는 문제를 어떤 식으로 해결해나갔는지 설명하는 것이 주를 이룬 것이다.

과연 ECS가 유니티의 단점으로 지목되었던 프로세스 처리 능력을 해결해주면서 더 많은 일을 처리할 수 있는 밑바탕이 될 수 있을지 앞으로를 지켜볼 필요가 있어보인다.



▲ ECS는 유나이트 LA 2018 2일차 실시간 스트림의 핵심 키워드였다.


▣ 차세대 기술을 향한 유니티의 도전은 계속된다 - XR 세션

확장현실(Extended Reality), 줄여서 XR이라고 부르는 이 개념은 VR, AR, MR을 통칭해서 부르는 개념이다. 한때 오큘러스나 VIVE 등 VR의 상용화가 이루어지고, AR 게임인 포켓몬 GO가 성공을 거두면서 업계에서는 크게 관심이 부각되기 시작했다. 지금은 그때만큼이나 관심이 높진 않지만, 여전히 차세대의 콘텐츠와 연관된 기술로 손꼽히고 있으며 기술적인 연구도 지속적으로 이루어지고 있는 편이다.

유니티 랩스에서는 꾸준히 VR/AR, MR 콘텐츠 개발자들을 위한 기술을 개발해왔다. 3D 인터페이스로 2D 작업을 진행할 수 있도록 하는 에디터 VR 등이 그 사례다. 이번 유나이트 LA 2018에서는 획기적인 어떤 기술을 공개하기보다는, 개발자들이 유니티를 활용해 콘텐츠를 개발할 때 더 편해질 수 있도록 개선하는 방향으로 진행됐다.


앞서 언급한 렌더링 기술의 발전 또한 XR 기술에 큰 영향을 미치는 것 중 하나다. VR, AR로 구현된 오브젝트들에 몰입을 하도록 하려면 현실에 가까운 라이팅과 쉐도우맵, 뎁스 마스크가 적용이 되어야 한다. 즉 렌더링에 시간이 오래 걸리는 요소들이 적용된다는 것이다. 기존의 게임은 화면의 잘 안 보이는 구석 오브젝트들의 퀄리티를 낮추는 식으로 리드 타임을 줄였지만, VR과 AR은 360도 전방위에서 보이기 때문에 이런 방식으로는 한계가 있었다. 그래서 대체로 현재까지 출시된 VR, AR 게임들의 오브젝트들의 퀄리티는 높지 않은 편이었다. 그 퀄리티로 오브젝트들을 렌더링하기엔, 시간 대비 효율이 좋지 않았기 때문이다. 그래서 이번 유나이트 LA 2018에서 발표된 렌더링 파이프라인과 렌더링 방식 개선은 XR 기술 세션에서도 한 자리를 차지했다.

기반 기술의 발전으로 인한 XR 기술의 발전뿐만 아니라, XR 기술 그 자체의 발전도 유나이트 LA에서 언급됐다. 그중 하나가 구글의 새로운 AR 플랫폼인 ARCore 앱과 ARKit 기기를 활용해 더 쉽게 AR 콘텐츠를 만들어가는 것이다. 이번 유나이트 LA에서 댄 밀러 에반젤리스트가 ARCore의 개념을 소개하고 구글의 매튜 스몰 소프트웨어 엔지니어가 XR 기술 강연을 통해서 구글 ARCore앱을 활용해 콘텐츠를 어떻게 만들어가는지 과정을 소개했다.

▲ 유니티는 구글의 ARCore와 연결해 AR 콘텐츠를 더 풍부하게 만들어가고자 한다


▣ 유니티-구글의 파트너십, 앞으로 어떤 시너지가 나올까?

앞서 사례로 든 것들을 잘 보면, 이번 유나이트 LA에서 유니티는 유달리 구글과 협력해서 진행하고 있는 것이 많다는 것을 알 수 있다. AR 분야에서 구글의 ARCore를 활용하는 방안이나, 구글 클라우드와 협력해서 클라우드 컴퓨터 시스템을 구축하는 '커넥티드 게임' 프로젝트 모두 다 구글이 연결되어있다.

여기에 멀티플레이 게임의 핵심 요소인 '매치메이킹'에도 구글이 껴있다. 기존 매치메이킹은 게임에 접속하는 플레이어와 데이터 센터에서 제공하는 게임 서버, 그 사이에 별도의 매치메이킹 서버를 놓아 유저들과 게임 서버를 잇는 방식이었다. 이 방식은 직관적이지만, 플레이어가 많아질수록 과부하가 심해진다는 단점을 안고 있었다.



▲ 유니티와 구글이 함께 시도하고 있는 새로운 매치메이킹 방식

이 문제를 해결하기 위해 유니티에서 선택한 것은, 구글이 갖고 있는 클라우드 기술과 모델을 매치메이킹에 적용하는 것이었다. 구글은 이미 예전에 오픈 소스 프로젝트인 '쿠버네트 프로젝트'를 시도하면서 클라우드 기반 방식으로 이 문제를 해결하고자 했던 적이 있기 때문이다.

이번에 개편된 모델, '오픈 소스 매치메이킹'에서는 기존 매치메이킹 로직을 담당할 오케스트레이터를 중심에 두고, 양 옆에 프론트 API와 백엔드 API를 붙여서 플레이어와 게임 서버의 응답을 담당하게 했다. 이 모든 것이 오픈 소스이기 때문에 유저가 입맛대로 수정하는 것이 가능하다. 이를 어렵게 여길 유저를 위해서 미리 커스텀된 구글은 매치메이커 커스텀 로직을 도입, 번거로움을 줄였다.

이미 지난 26일 오픈 소스 매치메이킹의 알파테스트가 진행되면서, 유니티와 구글의 협력 프로젝트의 1차 결과물이 도출되고 있다. 게임 엔진 그 이상을 향해 나아가고 있는 유니티의 지향점을 알 수 있던 유나이트 LA, 그 후에도 이어지고 있는 유니티의 또 다른 시도를 눈여겨볼 필요는 있어보인다.

댓글

새로고침
새로고침

기사 목록

1 2 3 4 5