전链 게임 전망: Web2 게임 엔진 발전 역사부터 시작하다

소리 지르기 연구소
2023-08-31 23:05:24
수집
기초 기술이 게임의 비약적 발전을 이끈다.

작성자: Snapfingers DAO

01 기초 기술이 게임의 비약적 발전을 이끌다

게임 산업의 발전은 항상 기술의 향상과 함께 계속 진화해 왔습니다. 그래픽과 음향의 변화에서부터 게임 디자인, 상호작용 방식의 혁신까지, 모든 것이 게임의 발전을 촉진하고 있습니다. 아타리에서 개발한 첫 번째 게임인 Pong은 상업적으로 성공한 첫 번째 비디오 게임으로 인정받아 한때 큰 인기를 끌며 비디오 게임의 물결을 일으켰습니다. 70년대는 집적 회로의 고속 발전기였으며, 1975년 모토로라에서 6502 프로세서를 출시하여 이후 가정용 게임기의 황금기를 위한 기초를 마련했습니다. 가장 유명한 가정용 게임기 선구자인 아타리 2600도 이로 인해 탄생하였고, 팩맨은 이제 모든 가정에서 알려진 이름이 되었습니다.

현대 게임은 종합 예술이자 복잡한 기술입니다. 초기 게임은 코드 논리에서 인터페이스 상호작용까지 비교적 단순했으며, 개발자들은 0에서 1로 제작하는 데 더 익숙했습니다. 그러나 기능이 향상됨에 따라 게임 플레이는 점점 다양해지고 기술은 점점 복잡해져, 처음부터 개발하는 과정은 느리고 비효율적으로 보이게 되었습니다. 90년대에 들어서면서 CD-ROM과 3D 그래픽 가속 카드의 출현은 게임 콘텐츠와 그래픽 표현 모두 새로운 높이에 도달하게 했습니다. 이로 인해 게임을 개발하는 코드 양이 급격히 증가하게 되었고, 이러한 배경 속에서 게임 엔진의 개념이 등장하게 되었습니다. 게임 개발자들은 일부 기초 기술을 표준화하여 효율적인 도구 집합으로 통합하여 개발 주기를 단축하고 개발 복잡성을 낮추며, 다양한 플랫폼과 장치에서 게임을 출시할 수 있도록 지원했습니다. 게임 엔진의 출현은 개발자에게 큰 편리함을 가져다주었습니다. 이러한 모듈화, 범용화, 표준화된 기능은 개발자가 게임 콘텐츠와 플레이 디자인에 더 집중할 수 있게 해줍니다. 현재 성숙한 게임 엔진은 그래픽, 물리, 장면 등 다양한 시스템을 포함할 수 있습니다.

1993년, Id Software는 DOOM 엔진(Id Tech 1)을 사용하여 《둠》이라는 게임을 제작하여 큰 성공을 거두었고, 그 해 판매량은 350만 부에 달했습니다. 《둠》의 성공은 상당 부분 소프트웨어 아키텍처의 설계 덕분입니다. 그 게임 소프트웨어 아키텍처는 핵심 소프트웨어 구성 요소, 미술 자산, 게임 세계 및 게임 규칙 등으로 나뉘어 있습니다. 이러한 명확한 아키텍처 분할은 서로 다른 개발자들이 동일한 엔진을 사용하여 새로운 미술, 레벨, 캐릭터, 게임 세계 및 게임 규칙을 제작함으로써 완전히 새로운 게임 작품을 창조할 수 있게 해줍니다. DOOM 엔진의 성공적인 분할은 커뮤니티 내에서 MOD 제작에 대한 관심을 불러일으켰으며, 최초의 상업용 게임 엔진이 되었습니다. 이후 10년 동안 게임 엔진은 인기를 끌었고, Epic Games의 언리얼 엔진(Unreal), Cry Tech의 CryEngine, iOS에서 큰 인기를 끌었던 Unity에 이르기까지 다양한 엔진이 등장했습니다. 상용 엔진 외에도 많은 업체들이 자사에서 사용하는 자체 개발 엔진을 만들었습니다. 예를 들어, Valve의 Source 엔진, Infinity Ward의 IW 엔진, 유비소프트의 Anvil 엔진 등이 있습니다.

02 Web3 게임 엔진의 ECS 아키텍처

현재 가장 잘 알려진 두 개의 전체 체인 게임 엔진인 MUD와 DOJO는 모두 ECS 아키텍처를 채택하고 있습니다. ECS는 엔티티 - 컴포넌트 - 시스템(Entity-Component-System)을 의미하며, 게임 객체(엔티티)와 그들의 속성(컴포넌트) 및 행동(시스템)을 관리하기 위해 Web2 게임 개발에서 일반적으로 사용되는 아키텍처 패턴입니다. 이 아키텍처 패턴의 장점은 다음과 같습니다:

  • 성능 최적화: ECS 아키텍처는 게임 개발자가 메모리 레이아웃과 데이터 접근 방식을 더 잘 관리할 수 있게 하여 게임의 성능을 향상시킵니다. 엔티티와 컴포넌트의 밀접한 배열은 캐시 미스(cache miss)를 줄이고 데이터 접근 효율성을 높이는 데 도움이 됩니다.
  • 확장성: 엔티티와 컴포넌트의 분리 덕분에 새로운 기능을 추가하려면 해당 컴포넌트와 시스템만 추가하면 되며, 기존 코드를 변경할 필요가 없습니다. 이를 통해 게임의 기능과 콘텐츠를 쉽게 확장할 수 있습니다.
  • 재사용성: 속성을 독립적인 컴포넌트로 나누어 다양한 유형의 엔티티를 생성하는 데 이러한 컴포넌트를 더 쉽게 재사용할 수 있어 중복 코드를 줄일 수 있습니다.

MUD V1은 전형적인 ECS 아키텍처입니다. V1의 프레임워크에서 엔티티는 게임 내 기본 단위로, 다양한 물체, 아이템 또는 지갑 주소가 될 수 있으며, 고유한 ID로 식별됩니다. 컴포넌트는 엔티티의 데이터 부분으로, 엔티티의 다양한 속성을 설명하는 데 사용됩니다. 예를 들어, 물체의 위치, 캐릭터의 속성 등이 있습니다. 서로 다른 컴포넌트를 엔티티에 추가함으로써 다양하고 풍부한 게임 객체를 생성할 수 있습니다. 시스템은 컴포넌트의 논리를 처리하여 게임의 다양한 규칙과 행동을 구현하며, 스마트 계약의 형태로 체인에 존재합니다. 엔티티, 컴포넌트, 시스템은 모두 하나의 월드 계약 내에 있으며, 각 월드는 독립적인 게임 환경에 해당합니다.

이 아키텍처가 어떻게 확장성을 나타낼까요? 게임 내 특정 기능을 업그레이드해야 하거나 커뮤니티가 새로운 콘텐츠를 추가하고 싶다면, 먼저 새로운 게임 기능/논리(시스템)가 관련 컴포넌트에 대한 쓰기 권한을 얻어야 하며, 그런 다음 업그레이드 버전을 생성하면 됩니다. 게임 내 다른 콘텐츠는 변하지 않아도 됩니다. 만약 쓰기 권한을 주지 않는다면, 새로운 기능을 포함하는 새로운 컴포넌트와 시스템을 생성하는 것을 고려할 수 있으며, 플레이어는 서로 다른 버전을 선택하여 플레이할 수 있고, 동일한 핵심 컴포넌트의 데이터와 상호작용할 수 있습니다. 월드의 관점에서 보면, 누구나 컴포넌트와 시스템을 생성할 수 있으며, 이는 마치 누구나 새로운 ERC-20 토큰을 생성하고 이를 주소에 "부착"할 수 있는 것과 같습니다.

03 Web3 게임 엔진이 체인 게임 발전에 미치는 의미

블록체인 기술은 현재 일상적인 응용에 완전히 적용되지 않았지만, 그 독특한 권리 증명 투명성과 같은 특성은 게임 분야에 중요한 변화를 가져올 것입니다. 특히 사람들은 DeFi가 가져온 엄청난 마력을 이미 경험했습니다. 게임을 완전히 체인에 올리면 어떤 일이 발생할까요? DeFi를 통해 우리는 블록체인이 게임에 가져올 변화를 쉽게 추론할 수 있습니다:

  • 개방적인 경제 시스템: 블록체인은 게임 내 가상 자산이 실제 소유권과 희소성을 갖도록 할 수 있습니다. 이는 플레이어가 아이템의 희귀성과 생산률을 검증할 수 있게 하여 중앙 집중식 게임 회사의 자산 통제 및 관리 문제를 피할 수 있게 합니다.
  • 조합 가능성: 게임을 블록체인의 개방된 환경에 배치함으로써 서로 다른 게임과 프로젝트가 상호 보완할 수 있게 합니다. 플레이어가 한 게임에서 진행한 내용은 다른 게임에 반영될 수 있으며, 심지어 자산을 공유하여 더욱 개방적이고 상호 연결된 게임 생태계를 창출합니다.
  • 사용자 생성 콘텐츠: 사용자는 게임 콘텐츠나 자산을 완전히 자율적으로 구축할 수 있으며, 오픈 소스 환경에서 자산의 소유권을 가질 수 있습니다. 이는 사용자 생성 게임 루프를 촉진하고 게임의 플레이 가능성과 배급을 증가시킵니다. 예를 들어, 사용자는 검증된 모드 콘텐츠를 게임 계약에 로드하여 게임성을 풍부하게 하면서 일부 수익을 얻을 수 있습니다.

블록체인 게임은 항상 많은 기대를 모아왔으며, 특히 DeFi와 NFT라는 두 블록체인 응용 분야가 연이어 폭발한 이후 더욱 그러합니다. 그러나 현재 구현에는 여전히 많은 장애물이 있습니다:

  • 첫째, 기술 기반 시설의 제한으로 인해 EVM 속도가 느리고 가스 비용이 높으며, Solidity 언어는 복잡한 게임 논리를 처리하는 데 거의 적합하지 않아 게임의 복잡성과 상호작용을 심각하게 제한합니다.
  • 경제 모델 설계는 잘 알려진 대로 체인 게임의 경제 시스템이 가장 중요하며, 효과적인 인센티브와 금융화를 위한 균형점을 찾아야 합니다.
  • 자유도와 거버넌스: 체인 게임은 상당히 높은 자유도 또는 개방성을 가지고 있습니다. 이는 모든 플레이어가 서로 다른 게임 콘텐츠를 생성하고 배포할 수 있도록 허용해야 하지만, 이러한 콘텐츠는 게임 세계를 더욱 복잡하게 만들고 예기치 않은 경제적 영향을 초래할 수 있으므로 효과적인 거버넌스 메커니즘이 필요합니다.

이상은 현재 예측할 수 있는 몇 가지 어려움일 뿐이며, 이는 현재 거의 모든 전체 체인 게임이 SLG에 집중하는 이유이기도 합니다. ------ 게임 메커니즘이 간단하고 높은 TPS가 필요하지 않으며, 필요한 정보의 불완전성이 기존 기술에 완벽하게 적용될 수 있기 때문입니다. MMORPG를 기대한다면, 이는 분명 상당한 도전이 될 것입니다. 게임 엔진이 Web2 게임에 가져온 변화를 참고하여, 체인 게임도 ECS 아키텍처를 채택한다면 다음과 같은 문제를 해결할 수 있습니다:

  • 데이터 조직 및 관리: 체인 게임에도 처리해야 할 많은 게임 데이터가 존재합니다. 여기에는 캐릭터 속성, 아이템, 맵 정보 등이 포함됩니다. ECS 아키텍처는 데이터를 재사용 가능한 컴포넌트로 조직하고 데이터의 수정 및 접근을 효과적으로 관리하는 데 도움을 줄 수 있습니다.
  • 유연성과 확장성: 게임 엔티티(Entity)와 컴포넌트(Component)를 분리함으로써 개발자는 기존 논리에 영향을 주지 않고도 새로운 게임 객체와 기능을 쉽게 생성할 수 있습니다. 이러한 유연성과 확장성은 체인 게임에서 특히 중요합니다. 복잡한 게임 메커니즘은 자주 업그레이드 및 확장이 필요할 수 있습니다.
  • 스마트 계약 및 데이터 업데이트: ECS 아키텍처는 스마트 계약 내 데이터 업데이트를 더 효과적으로 관리할 수 있습니다. 각 컴포넌트는 독립적으로 업데이트할 수 있으며, 전체 엔티티를 업데이트할 필요가 없습니다. 이는 스마트 계약의 실행 비용을 낮추고 상호작용 효율성을 높일 수 있습니다.
  • 조합 가능성: ECS의 장점 중 하나는 컴포넌트와 시스템의 조합 가능성으로, 이는 체인 게임의 조합 가능성 개념과 잘 맞아떨어집니다. 아마도 플레이어는 새로운 콘텐츠를 창조하여 더 풍부한 경험을 가져올 수 있을 것입니다.

04 Web3 전체 체인 게임 전망

전체 체인 게임의 난점은 여전히 많으며, 게임 엔진은 문제의 일부만 해결할 수 있습니다. 그러나 도전과 기회가 공존하며, 전체 체인 게임이라는 복잡한 응용은 블록체인 기술이 실제로 적용되는 첫걸음이 될 수 있습니다.

현재 전체 체인 게임 엔진은 매우 초기 단계에 있으며, 앞서 언급했듯이 복잡한 응용의 초형을 보았지만, 이를 실현할 도구가 부족합니다. 현재 개발 속도가 빠른 것은 MUD V2와 Dojo입니다. MUD V2는 V1에 비해 ECS 아키텍처를 개선했지만, V2는 현재 개발 중입니다. Dojo는 Starknet 커뮤니티에서 구축한 현재 유일하게 검증 가능한 게임 엔진으로, Cairo 언어 덕분에 전투 안개를 네이티브로 구현할 수 있습니다. Dojo 또한 ECS 아키텍처를 채택하고 있으며, Starknet에서 전용 게임의 L3를 개발할 계획이 있어 확장성을 더욱 높일 수 있습니다.

또한 체인 게임이 의존하는 기반 시설도 진화하고 있습니다. L2는 이제 한 번의 클릭으로 체인을 발행할 수 있을 정도로 발전했으며, 어떤 인기 게임이 자가 Rollup을 통해 차익을 얻어 소모 구조를 유지하고 죽음의 나선에서 벗어날 수 있을 것입니다. ERC-4337 계정 추상화 기술을 활용하여 전체 체인 게임은 플레이어가 단일 계정에서 게임 거래, 캐릭터 생성 등을 수행할 수 있게 하여 사용자 경험을 간소화하는 데 도움을 줄 수 있습니다. 또한 서로 다른 게임 메커니즘을 업그레이드 가능한 계약 계정으로 포장하여 개발자가 게임 규칙, 콘텐츠 등을 쉽게 업데이트하거나 최적화할 수 있게 할 수 있습니다.

체인캐처(ChainCatcher)는 독자들에게 블록체인을 이성적으로 바라보고, 리스크 인식을 실제로 향상시키며, 다양한 가상 토큰 발행 및 조작에 경계해야 함을 상기시킵니다. 사이트 내 모든 콘텐츠는 시장 정보나 관련 당사자의 의견일 뿐이며 어떠한 형태의 투자 조언도 제공하지 않습니다. 만약 사이트 내에서 민감한 정보를 발견하면 “신고하기”를 클릭하여 신속하게 처리할 것입니다.
체인캐처 혁신가들과 함께하는 Web3 세상 구축