본문

뉴스 기사

[기사 제목]

언리얼을 활용한 멀티 플랫폼 최적화, '카트라이더: 드리프트' 실전 사례

조회수 10206 | 루리웹 | 입력 2022.09.28 (20:00:00)
[기사 본문]

지난 27일부터 오는 30일까지 총 4일 간 자사가 개발하는 언리얼 엔진의 기술 및 개발 노하우를 공유하는 행사, '언리얼 서밋 온라인 2022'은 27일 공통, 28일 게임, 29일 영화·TV·애니메이션, 30일 건축 & 자동차 등 주제를 나눠 강연을 진행하고 있다. 금일(28일)은 게임과 관련된 다양한 강연을 들어볼 수 있었다.

 
이중 눈에 띄는 것이 있었다면 올해 말 출시가 예정된 캐주얼 레이싱 게임 '카트라이더: 드리프트'를 소재로 언리얼 엔진을 활용한 게임 최적화 강연이다. 카트라이더: 드리프트는 PC, 모바일, 콘솔 등 다양한 플랫폼을 지원하는 만큼 게임 최적화가 핵심이다. 강연에서는 상세한 현장 사례와 함께 풀 크로스 플레이 환경 구축을 위한 다양한 최적화 노하우를 엿볼 수 있었다.


카트_0014_레이어 4.jpg


카트_0015_레이어 3.jpg

 

해당 강연은 니트로 스튜디오의 강길전 개발자가 맡았다. 본고에서는 최적화에 관심 있는 개발자 및 아티스트는 물론, 게이머도 흥미로울 만한 핵심 내용만 발췌하여 가볍게 소개해보고자 한다.


2004년에 출시한 크레이지레이싱 카트라이더는 2005년부터 e-스포츠를 시작해 국내 e-스포츠 종목 중 최장수 리그 타이틀을 가지고 있으며, PC 회원 수 합산 누적 3억 8천만 명, 국내 한정 인구 절반 이상인 3천 2백만 명이 게임을 즐겼을 정도로 많은 사랑을 받아오고 있다.


카트_0017_레이어 1.jpg

 
카트라이더: 드리프트는 그 크레이지레이싱 카트라이더를 언리얼 엔진으로 새롭게 재해석하고, '풀 크로스 플레이'를 더한 게임이다. 풀 크로스 플레이란 PC, 모바일, 콘솔 등 다양한 기기를 지원하며, 어느 기기로 즐겨도 부족함 없는 크로스 플레이 경험을 제공하는 환경을 말한다.


풀 크로스 플레이 환경을 제공하기 위해서는 최적화가 중요하다. 흔히 최적화란 '프레임'을 높이는 작업이라고 생각하는 경우가 많은데, 꼭 그것만이 목표인 것은 아니다. 강길전 개발자는 "프레임은 최적화 작업의 목표 중 하나일 뿐, 정확한 정의라고 말하긴 어렵다."라며 "초당 5천만 프레임이 나오는 어플리케이션보다 유저들에게 향상된 경험과 재미를 제공하는 것이 중요하다."고 설명했다.


카트_0013_레이어 5.jpg


카트_0012_레이어 6.jpg


카트_0011_레이어 7.jpg


강길전 개발자는 게임 최적화 작업을 "맞춤 양복을 재단하는 일"이라고 표현했다. 각 프로젝트의 성향과 목표에 따라 다르게 진행되어야 한다는 뜻이다. 카트라이더: 드리프트의 경우 다양한 플랫폼에서 함께 즐길 수 있는 '멀티 플랫폼 풀 크로스 플레이'를 목표로 했다. 성능에 대한 예산을 분배해서 어느 수준의 디바이스까지 지원이 가능할 지 조율해 나갔으며, 기기별 목표 프레임을 정해 최초 PC와 Xbox를 시작으로 플레이스테이션, IOS와 안드로이드 까지 지원 플랫폼을 확장했다.


풀 크로스 플레이 환경을 목표로 할 때 가장 신경써야 할 것은 각 플랫폼 별 유불리 논쟁이다. 플랫폼별로 달라지는 조작감, 프레임, 인풋랙 등으로 다양한 유불리 논쟁이 터지기 마련인데, 카트라이더: 드리프트 같은 e-스포츠화를 목표로 하는 게임은 특히 유불리 논쟁으로 인한 공정성 이슈 민감하게 반응할 필요가 있다.


카트_0010_레이어 8.jpg


특히 PC와 안드로이드의 경우 기기 메이커가 다양하기 때문에 같은 플랫폼이라도 폭 넓은 성능 차이가 존재한다. 때문에 본격적인 최적화 작업 이전에 최대한 다양한 디바이스 환경에서 프로파일링과 QA를 진행하는 것이 중요하다.


개발팀이 정한 카트라이더: 드리프트의 최소사양은 아래와 같다. 각 플랫폼별로 최소사양이 천차만별인 것을 볼 수 있는데, 이는 각 디바이스마다 성능 분포가 다른 만큼 저사양이라고 무조건 낮은 옵션으로 통일해서 사용하는 것이 아니라 각 플랫폼별 디바이스에 맞춰 별도 개발했기 때문이다.


카트_0009_레이어 9.jpg


최적화를 진행하려면 먼저 어느 스레드에서 언제 병목현상이 발생하는지 확인할 필요가 있다. 카트라이더: 드리프트의 경우 팀 대다수가 처리 시간 통계를 확인할 수 있는 'Stat UnitGraph'를 활용해 프로파일링을 지원해 PC와 콘솔 기준 드로우는 400개, 한 화면에 800만 폴리곤이 넘지 않으면 된다는 것을 확인할 수 있었다. 비교적 성능 제한이 큰 모바일의 경우 한 화면에 50만 폴리곤을 넘지 않아야 했다.


카트_0008_레이어 10.jpg

 
원래 카트라이더: 드리프트 프로젝트는 PC와 콘솔 플랫폼을 감안하여 개발됐는데, 나중에 모바일이 추가됐다. 이 같은 경우를 예를 들어 플랫폼의 추가로 최적화 작업 방향이 바뀐 사례도 소개됐다.


먼저 로비 그래픽이다. 로비에서는 비교적 프레임이 중요하지 않기 때문에 인벤토리나 상점 등을 통해 퀄리티 높은 캐릭터나 카트바디를 보여줘 사용자에게 시각적 만족감을 줄 수 있는 장소였고, 그만큼 그래픽 우선으로 작업이 진행돼 최적화가 인게임에 비해 덜 진행됐던 부분이 있었다. 하지만 모바일 플랫폼을 추가하게 되면서 문제가 생겼다. 인게임 외 발열을 조절하고 배터리를 절약할 수 있는 '휴식 시간'을 만들어 내야 했기 때문이다. 보통 발열과 배터리 소모가 심한 게임은 이러한 휴식 시간이 존재하지 않거나 짧아서다.


카트_0001_레이어 17.jpg


카트라이더: 드리프트는 모바일 플랫폼 추가를 위해 로비 그래픽과 UI를 최적화할 필요가 있었다. 이처럼 크로스 플랫폼을 감안하여 개발할 때는 연산 성능 외적인 문제도 충분히 고려하여 최적화해야 한다. 관련하여 강길전 개발자는 "최적화의 핵심은 어느 타이밍에 병목이 발생하는지 추적하는 것이다. 다양한 디바이스에서 보다 많은 테스트를 진행하는 것이 중요하다."라고 설명했다.


병목현상이 일어나는 좀 더 정확한 위치를 찾아낼 때는 '언리얼 인사이트(Unreal Insight)'가 큰 도움이 된다. 언리얼 인사이트는 언리얼 엔진과 통합된, 게임 내 데이터를 수집, 분석하고 시각화하는 단독 프로파일링 시스템이다. 어떤 스레드에서 병목현상이 일어나는지 상세하게 확인할 수 있으며, CPU, GPU, 에셋 로드 시간, 네트워크 부하 등을 별도로 추적할 수 있다.


카트_0007_레이어 11.jpg


특히 언리얼 엔진의 경우 Nullrhi(Null Rendering Hardware Interface)를 제공해 렌더링 없이 클라이언트를 실행, 로컬에서 쾌적하게 8인 데디케이티드 서버 테스트를 진행할 수 있다. 최종적으로 최적화 결과를 확인할 때는 각각 해당 디바이스에서 직접 테스트를 하는 것이 중요하지만, 팀 규모가 클 때는 각 작업자의 속도가 팀 전체 프로젝트 진행 속도를 추월하는 종종 경우가 생기기 때문에, 많은 인원이 최적화에 관심을 갖고 빠른 확인을 할 수 있는 이러한 옵션을 이용하면 좋다.


카트_0006_레이어 12.jpg


병목현상 지점을 확인했다면 본격적인 최적화 작업이 시작된다. 카트라이더: 드리프트는 정해진 경로로 주행하는 레이싱 게임 특성상 한 화면에 필요한 메쉬 수가 제한되고 컬링해야 할 요소가 적어서 게임 스레드 최적화에 집중했으며, 비교적 성능이 제한된 모바일 플랫폼을 위해 LOD(Level of Detail) 등 기술을 활용해 저사양 환경에서는 폴리곤을 50만으로 제한하는 등 프로젝트 특성과 디바이스에 맞춰 최적화 작업을 진행했다.


최적화 핵심 전략은 필요한 기능을 필요한 시간에만 처리하는 것이다. 이를 위해 화이트 리스트를 만들어 관리할 필요가 있다. 예를 들어 카트라이더: 드리프트에는 아이템전과 스피드전이 있다. 아이템전은 부스터를 포함해 모든 아이템이 포함된 모드이며, 스피드전은 아이템 중 부스터 밖에 사용하지 않는 모드다. 스피드전은 '스피드전 = 전체아이템 - 아이템전'이 되선 안되고 '스피드전 += 부스터'가 되어야 한다. 이처럼 컴포넌트 단위로 기능을 분리해 필요한 곳에만 객체를 생성해주는 방식으로 최적화를 이루게 된다.


카트_0005_레이어 13.jpg


카트_0004_레이어 14.jpg


카트_0003_레이어 15.jpg


이러한 방식은 서버 최적화에도 응용할 수 있다. 게임플레이에 실제 영향을 주지 않는 연출이나 장식 요소는 유저가 직접 그래픽을 보는 클라이언트에서는 실행되도, 서버에서는 굳이 실행될 필요가 없다. 서버는 오브젝트의 움직임을 감지할 수 있는 최소한의 그래픽, 메쉬의 충돌 데이터 등만 감지할 수 있으면 되며, 애초에 이러한 요소들을 포함하지 많으면 통해 CPU 리소스나 용량을 아낄 수 있다.


카트_0002_레이어 16.jpg


강길전 개발자는 관련하여 "특정한 기술을 사용하는 자체보다 개발하고 있는 프로젝트의 특성에 대한 이해와 그에 따른 맞춤 적용 방안이 중요하다."며 "팀 구성원 전체가 최적화에 관심을 가지고 자주 프로파일링하고 개발 중인 프로젝트 특성에 따른 이해와 그에 따른 맞춤 적용 방안이 중요하다."고 강조했다.


이 밖에도 강연에서는 풀 크로스 플레이 환경 구현 및 게임 최적화에 대한 다양한 기술적 설명을 들어볼 수 있었다. 게임 최적화에 관심이 있는 개발자라면 언리얼 서밋 온라인 2022 DAY 2 게임 '카트라이더: 드리프트 멀티 플랫폼을 위한 최적화 드라이브'에 주목하도록 하자. 강연은 언리얼 엔진 공식 유튜브에 업로드 될 예정이다.


카트_0000_레이어 18.jpg


안민균 기자   ahnmg@ruliweb.com




관련게임정보 목록

카트라이더: 드리프트

기     종

온라인/아이폰/안드로이드/PS4/XBOX ONE

발 매 일

장     르

캐주얼 레이싱

가     격

제 작 사

니트로 스튜디오

기     타







댓글

목록보기

댓글 | 19
1


(5149023)
27.120.***.***

BEST
나름 재밌었는데 매판마다 매칭하는게 귀찮았음;; 한판한판 금방 끝나는편인데 매칭이 맥을 끊는 느낌
22.09.28 20:14

(516520)
211.185.***.***

BEST
오랜만에 러쉬 들어갔더니 아주 극혐이였음. 무슨 이벤트가 10개넘게 뜨고 각각 재화가 다른데 얻으려면 뭐 할거 엄청 많고 템도 다 기간제에 영구템같은건 없음. 이벤트가 너무많아서 화면에 개정신없게 엄청많이 떠있고 와 진짜 모바일게임의 더러운 과금느낌에 끝판왕을봄… 드리프트는 과연..
22.09.28 22:55

(5149023)
27.120.***.***

BEST
나름 재밌었는데 매판마다 매칭하는게 귀찮았음;; 한판한판 금방 끝나는편인데 매칭이 맥을 끊는 느낌
22.09.28 20:14

(5137857)
115.40.***.***

새로운 어린친구들이 어린이들에게 전수받은 종탑 길막기 시전할거 생각하니 벌써부터 딥빡치네
22.09.28 20:57

(1260789)
121.162.***.***

근데 아이템전 재미는 있더라… 이거하다 폴가이즈하면 긴장감이 떨어져서 안하게됨
22.09.28 21:09

(154029)
125.180.***.***

이거보다 먼저 나온 러쉬가 더 만듬세가 좋았던거 같은데.
22.09.28 21:40

(2614566)
175.211.***.***

러쉬도 사양 안먹게 하려고 이것저것 한거 같은데 플레이어 시점에서 상대방 바퀴 안돌아 가는거 보면 되게 이상함
22.09.28 22:08

(4695077)
223.39.***.***

이걸 아직도 하네..
22.09.28 22:51

(516520)
211.185.***.***

BEST
오랜만에 러쉬 들어갔더니 아주 극혐이였음. 무슨 이벤트가 10개넘게 뜨고 각각 재화가 다른데 얻으려면 뭐 할거 엄청 많고 템도 다 기간제에 영구템같은건 없음. 이벤트가 너무많아서 화면에 개정신없게 엄청많이 떠있고 와 진짜 모바일게임의 더러운 과금느낌에 끝판왕을봄… 드리프트는 과연..
22.09.28 22:55

(5435838)
211.109.***.***

The_Seeker
그리고 그것은 현실이 되는데...ㅎ | 22.09.29 14:24 | | |

(202603)
39.7.***.***

The_Seeker
다른 가챠형 게임에 비하면 과금 크게할 필요 없는데요.. 카트도 이전 카트로도 충분이 플레이 가능하고, 무료 카트로도 할만함.. 이벤트야 플레이하다보면 얻어지는 것들이 대다수고.. 어디가 과금 끝판왕이라느건지..?? | 22.09.29 21:13 | | |

(516520)
211.185.***.***

✨風雨來記
진심이신지? 다른 가챠 게임보다 더하면 더했지 덜하진 않음. 일반인이 무과금으로 카트든 뭐든 얻기는 겁나 빡세고 이전카트 무료카트 뭐 기간제 말하는거? 건전지 빡시게 모아서 3000개 모은거 룰렛 10번으로 다날리고 카트 하나 얻을수 있는가말하는건가 ㅋㅋ 현질한 사람이랑은 그냥 성능으로도 상대도 안되는데다가 랭크 상위로 가면 그냥 순위권은 아르미로 도배고 뭐하나 뽑을려면 전부 룰렛인데 무과금은 뼈빠지게 모아서 몇번 돌려봐야 절대로 안뜨는 시스템인데 이게 초과금 유도가 아니면 뭐임? 무과금도 룰렛 돌릴수 있으니까 위안을 얻어야된다는거임? 애초에 샵에서 원하는걸 사는데 룰렛돌려서 나와야 얻는다는거 자체가 개 쓰레기 상술인데. 레알 이겜에 쓸만한거중에 눌러서 바로 구매되는게 뭐가있음? 없음 룰렛이거나 재화 말도안되게 모아야되는 방식밖에 없는데 그게 과금유도가 아니면 뭐임? 지금 배민 광고한다고 10초에 한번씩 광고뜨는 수준에..어휴 이걸 어케 쉴드칠 생각을 하심?? 과금유도가 없는겜이였으면 카트성능이 다 동일하고 스킨팔이 했으면 과금유도 게임이 아니겠지만 이겜이 스킨팔이 게임임? 카트부터 캐릭까지 다 능력 붙어있고 그마저도 돈써서 뽑는게 룰렛 도박인데 이걸 쉴드치네 ㅋㅋㅋ | 22.09.29 22:08 | | |

(202603)
39.7.***.***

The_Seeker
카러플 오픈때부터 해왔고.. 월간패스 해오고 .중간에 카트 한 두개 만 건전지로 지른게 전부입니다.. 근데 월간패스로 주는 카트도 쓸만하구요... 물론 과금하면 일정 금액 안에 원하는 카트 충분히 얻을 수 있구요.. 무과금 무과금 얘기하시는데.. 무과금으로 상위 탬 다 얻을 수있으면 과금 유저는 뭐하러 과금 한답니까?? 카트 하나에 몇만원이상 질러야하는건 저도 비싸게 생각은 하지만 과금 안하고도 충분히 플레이 가능합니다.. 다른 가챠게임 처럼 몇백 안질러두요.. | 22.09.29 23:16 | | |

(516520)
211.185.***.***

✨風雨來記
무슨 넥슨 알바세요? 그게 무슨 논리인지 모르겠네요, 다른 가챠 게임들도 몇백 안질러도 다 무과금으로 할수 있죠. 근데 자기가 하는 캐릭터나 능력등에 버프를 주는 부분에 과금을 넣고 2주에 한번씩 광고로 얼굴에 들이밀면서 이거 사라 더 좋다, 이러고 앉아 있으면 그게 과금유도 게임인거에요. 거기에다가 유저인터페이스는 개나줘라 하고 게임을 하는 유저가 어떤 화면을 보는지는 안중에도 없고 그냥 광고를 매 코너에다가 꽉채워 집어넣는것도 정말 한국 3n다운 짓이구요. 지금 과금할수 있는 게임많은데, 스킨팔이만 하고 유저 능력치에 전혀 손대지 않는게임들 다 잘나가요. 그게 과금에 올바른 방향이구요. 님처럼 무과금으로 상위탬 다 얻으면 과금유저는 뭐하러 과금하냐는 그 마인드 자체가 우리나라 게임산업을 3n이 게임이 아니라 도박장을 만들어서 망치게 된 주 원인이 된거라고 생각해보셨나요? 다른 나라들 다 건강한 과금유도법 생각하고 게임성 발전시킬때 어떻게 하면 소비자 개돼지로 만들어서 돈빼먹을까 생각한게 우리나라 게임산업에 현실이고, 그래서 이제 중국한테도 게임 개발능력에 밀리는 수준까지 온거구요. 하다못해 미호요는 그렇게 쓸어담은 돈으로 더 나은 게임을 내놓기라도 했지 한국은 지금 돈빼먹을려고 대충만든 게임을 몇개나 뽑아냈는지 어느순간 세는것도 멈췄네요. | 22.09.29 23:38 | | |

(202603)
39.7.***.***

The_Seeker
뭔 말만 하면 그놈의 알바 타령 ㅋㅋ 카러플 제대로 해보시긴한지 의문이네요.. 뭔 캐릭터 능력이 어쩌고 ㅋ 캐릭터에 달린 능력치 아무리 봐도 게임에 큰 영향 안주는 수준인데 무슨..ㅋㅋㅋ 배민도 그걸 광고라고 보시니 뭐 그전에 소닉 이라던지 보노보노도 다 광고인가보네요.. 외국 게임은 착한 콜라보이고.. 한국게임은 광고고 ㅋㅋㅋ 배민 이벤트해서 무료로 카트랑 캐릭터 받을수있는데 거기에 과금유도가 들어가길했는지?? 그냥 까고 싶은 마음 밖에 없어보이는구만.. 뭔 착한 게임을 하시는지는 모르겠지만 무과금으로 잘 하신다니 쭈욱 잘하시길.. | 22.09.30 00:09 | | |

(1246361)
59.26.***.***

The_Seeker
카러플이 다른 가챠겜보다 더했으면 더했다고??? 이 뭔 개소리야?? 나 오픈 초기부터 해온사람인데 구라를 쳐도 작작좀 쳐라 | 22.09.30 02:43 | | |

(4785021)
218.238.***.***

✨風雨來記
이 논리면 리니지도 무과금으로 할만한 게임인데 ㅋㅋㅋㅋ | 22.10.04 08:09 | | |

(625251)
118.235.***.***

루리웹-4557971284
모든 게임이 무과금 으로 가능하긴 하져 근데 카러플 좀만 진지하게 해보시면 그 무과금 게임 중에서도 진짜 할만 합니다 정말루요. 들어가면 난잡 한건 인정 합니다 뭔놈의 이벤트가 ㅋㅋ 그만큼 그냥 퍼주는 것도 정말 많아요 단판 단판 하는 거니 회사에서 짬 날때 한번씩 해주면 아주 좋더라구요 | 22.10.04 13:10 | | |

(5007423)
123.140.***.***

마리오카트8디럭스 너무 재밌어요
22.09.29 13:15

(3365039)
59.23.***.***

가챠(를 넣을걸로 확실시되는) 게임들이 멀티플랫폼??? 지구끝까지 따라다니면서 과금하게 유도하겠다는 말ㄷㄷ
22.09.29 13:21

(950799)
175.120.***.***

스피드전은 매칭이 안잡혀서 하질못하고 베타종료..
22.10.01 20:50


1




목록보기
BEST 뉴스

PC/온라인
비디오/콘솔
모바일
PC/온라인
비디오/콘솔
모바일
PC/온라인
비디오/콘솔
모바일

BEST 유저정보
콘솔
PC
모바일
취미
BEST 게시글
게임
애니/책
갤러리
커뮤니티
게임
애니/책
갤러리
커뮤니티
게임
애니/책
갤러리
커뮤니티
게임
애니/책
갤러리
커뮤니티


X