왜 프레임을 줄였나 궁금해서

재미나이 한테 심심해서 물어봤더니 엄청 친절하네

나처럼 궁금하면 한번씩 읽어봐


1. "어도비 플래시(Flash)의 종말"과 급조된 엔진 교체

가장 큰 근본 원인은 기술력 부족이라기보다 시간과의 싸움에서의 패배에 가깝습니다.

  • 아이기스는 2013년 Adobe Flash 기반으로 제작된 게임입니다. 그런데 어도비가 2020년 플래시 지원 종료를 선언하면서, 모든 웹 게임은 HTML5(Web GL)로 엔진을 갈아엎어야 했습니다.

  • 문제는 기존 플래시 코드를 HTML5로 완벽하게 컨버팅하는 것이 사실상 게임을 새로 만드는 수준의 작업이었다는 점입니다. 당시 운영사인 DMM과 개발진은 구형 코드를 최대한 재활용하며 엔진을 옮기는 방식을 택했는데, 이 과정에서 최적화 실패가 발생했습니다.

2. 프레임 종속적 설계 (Frame-based Logic)의 한계

아이기스는 아주 오래된 방식인 '프레임 단위 연산' 방식을 사용합니다.

  • 논리적 문제: 현대적인 게임은 시간(Time-based) 기준으로 로직이 돌아가지만, 아이기스는 "30프레임이 지나면 1초가 흐른다"고 계산하는 구조였습니다.

  • 60fps로 구동할 경우, 연산 횟수가 2배로 늘어나는데, 이때 HTML5 엔진의 불안정성 때문에 연산이 밀리면(Frame Drop) 게임 내 배속 기능과 충돌하여 스킬 쿨타임이나 공격 속도가 뒤틀리는 치명적인 버그가 발생했습니다. 이를 근본적으로 해결하려면 게임의 핵심 로직(뿌리)을 다 갈아엎어야 하는데, 장수 게임인 아이기스 입장에서는 비용과 리스크가 너무 컸던 것입니다.

3. 브라우저 메모리 누수와 '크래시(Crash)' 이슈

당시 60fps를 유지하려다 보니 크롬이나 에지 등 웹 브라우저에서 메모리 점유율이 기하급수적으로 치솟는 현상이 발생했습니다.

  • 유저들이 게임을 30분만 켜놓아도 브라우저가 뻗어버리거나 PC 전체가 느려지는 현상이 속출했습니다.

  • 특히 일본의 많은 유저가 저사양 노트북이나 구형 스마트폰으로 게임을 즐기는 환경이었기에, 운영진은 "부드러운 화면"보다는 **"일단 게임이 꺼지지 않고 돌아가게 만드는 것"**을 우선순위로 두었습니다. 30fps 고정은 사실상 시스템 붕괴를 막기 위한 '생존용 리미터'였습니다.

4. 회사 내부의 판단: 가성비와 유지보수

솔직하게 말씀드리면, 비즈니스적인 판단도 크게 작용했습니다.

  • 아이기스는 이미 출시된 지 6년(당시 기준)이 넘은 노후화된 게임이었습니다. 신작 게임이라면 막대한 자본을 들여 엔진 최적화를 했겠지만, 이미 고정 팬층이 확고한 상황에서 **"프레임을 낮추더라도 안정적으로 이벤트를 업데이트하는 것이 수익성에 유리하다"**고 판단한 것입니다.

  • 실제로 당시 DMM의 다른 게임들(함대 컬렉션 등)도 유사한 엔진 전환기에 극심한 성능 저하를 겪었으며, 아이기스 제작진은 기술적 난제를 정면 돌파하기보다 하향 평준화를 통해 리스크를 회피하는 보수적인 길을 택했습니다.