이더리움의 매력이 사라지면서 비트코인이 주목받고 있다고 애널리스트가 관측했다.
분석가 니콜라스 머튼은 이더리움 생태계의 정체와 혁신 부족을 이유로 비트코인이 이더리움보다 우위를 점할 것으로 예측했습니다.

저자: Jake @ Antalpha Ventures, Blake @ Akedo Games, Jawker @ Cipherwave Capital
R&D 회사마다 (프로젝트+미들 오피스 조직을 갖춘) 아키텍처가 다르기 때문에 프로젝트와 미들 오피스 조직에 중점을 두는 부분이 달라서, 프로젝트 조직이 강한 회사도 있고 그렇지 않은 회사도 있습니다. h1>
R&D 회사마다 구조(프로젝트+미들 오피스 조직 사용)가 다르기 때문에 프로젝트와 미들 오피스 조직에 중점을 두는 부분이 다르고, 프로젝트에 강하고 미들 오피스에 약한 회사, 미들 오피스에 강하고 프로젝트에 약한 회사도 있습니다. 따라서 이 시리즈에서는 주로 게임 개발을 관련 기능과 프로세스에 따라 분석합니다. 이를 바탕으로 이 시리즈의 두 번째 글에서는 웹3 게임의 산업화된 제작 및 제작(아트 및 기술) 측면에 초점을 맞춥니다. 게임 프로젝트가 시작되면 게임 기획자는 캐릭터 성장, 플레이어 행동 안내, 맵과 스토리라인 등 핵심 게임플레이와 플레이 가능성에 대한 세부 사항을 이미 결정한 상태이므로 게임 기획자는 아트 및 기술 팀과 협력하여 게임을 개발해야 합니다. 따라서 게임 기획자는 아트 및 기술 팀과 소통하여 웹3.0 게임 개발을 디자인 및 개발 단계로 옮겨야 합니다.
<그림>기획이 명확해지면 게임의 프론트엔드 및 백엔드 기술 및 기타 기술 절차 팀은 기획 부서에서 제안한 게임 디자인을 실현하고 게임 코드를 작성하며 게임의 기술적 구현을 보장해야 합니다. 구체적인 구현 과정에서는 프론트엔드 프로그램과 백엔드 프로그램으로 나눌 수 있습니다. 메인 프로그램은 주요 기술 구현 계획을 결정하고 다양한 유형의 성능을 최적화하며 기본 프레임워크의 구축을 안내하는 등 기술의 전체 프로세스를 관리해야 합니다.
프론트엔드 프로그램: 사운드 파일, 이미지 파일, 텍스트 파일 처리 등 디스플레이, 최적화 및 로직 관련 사항을 다룹니다.
백엔드 애플리케이션: 데이터베이스 구조, 데이터 전송, 체크섬, 저장 및 통신 방법 등 서버 측을 다루며 이에 국한되지 않습니다.
다음 다이어그램은 Web3. Gaming 데모의 프론트엔드 애플리케이션과 백엔드 애플리케이션 부분을 보여줍니다. 두 부분 모두 나중에 자세히 분석할 예정입니다.
<그림>게임의 프런트엔드 프로그램 개발은 게임의 인터페이스와 상호작용, 사용자 경험에 초점을 맞추고 있습니다. 인터페이스, 상호작용 및 사용자 경험에 중점을 둡니다. 게임 인터페이스(UI)의 설계 및 구현, 사용자 상호작용(UI) 시스템 개발, 애니메이션 및 시각 효과 제작 등 게임의 상호작용과 사용자 경험에 초점을 맞춰야 합니다. 또한 프론트엔드 엔지니어는 게임이 데스크톱과 모바일 기기를 포함한 다양한 플랫폼에서 일관된 사용자 경험을 제공하도록 해야 합니다. 게임 로직을 구현하는 측면에서 개발자는 게임 내 캐릭터의 동작, 게임 규칙 적용, 점수 및 진행 상황 관리, 게임 내 이벤트 대응 메커니즘에 집중해야 합니다. 개발자는 원활하고 공정하며 도전적인 게임플레이를 보장하는 효율적이고 원활한 코드를 작성해야 합니다.
따라서 프론트엔드 개발자는 이러한 목표에 따라 관련 프로그래밍 언어(예: C#
, C++
등)와 게임 엔진(예: Unreal, Unity, Source, CryEngine 등)을 사용하여 게임을 제작해야 합니다. 크라이엔진 등)를 사용하여 게임 인터페이스를 만들고, 애니메이션 구현 및 음향 효과 등을 조정할 수 있습니다. 개발자가 사용할 수 있는 게임 엔진 도구는 시중에 많이 나와 있으며, 특정 게임 엔진 도구의 선택은 개발자의 특정 요구 사항에 따라 결정됩니다. 게임 엔진마다 개발자 커뮤니티에 대한 지원 초점이 다르며, 다음은 게임 기술 연구 및 개발을 위한 게임 엔진 선택의 선호도와 요구 사항입니다.
프로젝트 요구 사항: 게임 유형에 따라 엔진 선택에 대한 요구 사항이 다릅니다. 게임 유형에 따라 다릅니다. 예를 들어 시각 효과를 강조하는 AAA급 게임의 경우 Unreal Engine이나 CryEngine이 더 적합할 수 있고, 모바일 플랫폼의 소규모 게임에는 Unity가 더 적합할 수 있습니다.
학습 곡선 및 커뮤니티 지원: 배우고 사용하기 쉬운 엔진은 개발의 어려움을 크게 줄일 수 있습니다. 또한 활발한 커뮤니티는 개발자가 문제가 발생했을 때 신속하게 해결책을 찾을 수 있도록 풍부한 리소스와 지원을 제공할 수 있습니다.
성능 및 최적화: 엔진의 성능과 최적화 기능은 게임 성능에 매우 중요한 요소입니다.
비용 및 라이선스: 일부 엔진은 사용료를 지불해야 하거나 특정 라이선스 요구사항이 있을 수 있습니다. 개발자는 예산과 프로젝트 요구 사항에 따라 절충안을 만들어야 합니다.
확장성 및 커스터마이징: 게임 업계가 계속 발전함에 따라 게임 엔진은 새로운 기술 트렌드와 요구 사항에 적응할 수 있어야 합니다. 엔진의 확장성과 커스터마이징 기능을 이해하면 개발자가 미래의 변화에 더 잘 대처할 수 있습니다.
위와 같은 니즈 분석을 바탕으로 대표적인 게임 엔진인 유니티와 언리얼 엔진에 대한 간략한 소개와 분석은 다음과 같습니다.
유니티는 윈도우, 맥, iOS, 안드로이드 등 여러 주요 플랫폼을 지원하는 게임 엔진으로, 개발자가 C#
를 사용하여 자신만의 게임을 만들 수 있도록 커스터마이징이 매우 자유롭습니다. Unity는 커스터마이징이 가능하여 개발자가 <코드>C# 또는 <코드>JavaScript코드>로 스크립트를 작성할 수 있습니다. Unity는 개발자가 플러그인, 모델, 사운드 등을 구매하고 다운로드할 수 있는 풍부한 리소스 상점을 제공하며, 활발한 커뮤니티, 뛰어난 크로스 플랫폼 호환성, 비교적 사용하기 쉬운 개발 환경, 수많은 타사 패키지 등의 주요 이점을 제공합니다. 개발자는 자체 피처 팩을 제작하여 공식 Unity 스토어에서 판매할 수 있습니다. 현재 매월 150만 명 이상의 개발자가 유니티 스토어를 방문하고 있으며, 56,000개 이상의 패키지가 제공됩니다. 유니티는 수익화 SDK, 원스톱 네트워크 게임 서비스인 유니티 게임 클라우드, 게임 음성 서비스 비박스, 멀티플레이 해외 서버 호스팅 서비스, 유니티 콘텐츠 전송 플랫폼(UDP), 유니티 클라우드 빌드 등 상용화 채널을 더욱 다각화할 계획이며, 다양한 서비스를 통해 수익화 및 실현의 관점에서 유니티는 더욱 다각화될 것입니다. 이 중 수익화 SDK는 개발자가 이용할 수 있는 서비스로, 유니티가 직접 광고를 배포하는 광고 배포 포털 역할을 하며 이미 엔진의 상용 라이선스를 대체하여 유니티의 주요 수입원으로 자리 잡았습니다. 이스케이프 프롬 타르코프, 템템, 콜 오브 듀티, 하스스톤의 전설과 같은 세계적으로 유명한 게임들은 유니티가 최고의 게임 엔진 중 하나임을 입증했습니다. 하지만 Unity의 성능 최적화는 상대적으로 열악하고 대규모 씬과 고정밀 모델을 처리하는 데 한계가 있으며, Unity의 UI 환경은 Unreal에 비해 열등하기 때문에 개발자는 엔진의 기능을 개선하기 위해 많은 타사 패키지를 추가해야 합니다. 프로그래밍 측면에서 Unity는 <코드>C#과 <코드>JavaScript를 사용하므로 Unity 개발 과정에서 적응 문제가 발생할 수 있습니다. 2020년 3월, 유니티는 HDRP(고해상도 렌더 파이프라인) 및 URP(유니버설 렌더 파이프라인) 기능이 포함된 최신 2019.3
릴리스를 공식 출시했습니다. 향상된 시각 효과 및 최적화 기능. 이펙트 뷰 에디터, 실시간 파이버 트래킹 시스템 등이 추가되어 오늘날의 시장과 대규모 게임 제작에 더욱 적합해졌습니다.
언리얼 엔진은 놀라운 그래픽과 피직스로 유명한 완전 오픈 소스 고성능 게임 엔진입니다. C++ 및 블루프린트 비주얼 프로그래밍을 지원하며, 사실적인 게임플레이를 위한 강력한 머티리얼 에디터와 라이팅 시스템을 제공합니다. 개발자는 언리얼을 무료로 사용할 수 있을 뿐만 아니라 코드를 학습하여 개발 효율성을 더욱 높일 수 있습니다. 또한 언리얼 엔진은 블루프린트와 함께 제공되므로 기술 개발자가 아니더라도 P2P 비주얼 인터페이스를 통해 게임 디자인을 완성할 수 있습니다. 또한 언리얼 엔진은 크로스 플랫폼 호환성과 고도로 커스터마이징 가능한 UI 시스템을 갖추고 있습니다. 가격 측면에서 언리얼 엔진은 전통적인 엔진 비즈니스 모델을 채택했습니다. 첫 번째는 게임 총 수익이 100만 달러를 초과할 경우 5%의 고정 수수료를 부과하는 것이고, 다른 하나는 공식 또는 서드파티 머티리얼을 쇼핑몰에서 판매하고 수익의 12%를 가져가는 것입니다. 노 맨스 스카이, 배트맨: 아캄 어사일럼, 파이널 판타지 VII 리메이크 등 세계적으로 유명한 게임들이 모두 언리얼 엔진을 사용하고 있으며, 게임 성과와 인기 측면에서 볼 때 언리얼 엔진은 매우 중요한 역할을 합니다. 하지만 언리얼 엔진은 학습 곡선이 가파르고 배우기는 쉽지만 숙달하기는 쉽지 않아 어느 정도의 시간과 경험이 필요합니다.
미디엄 앤 컴패니티브 코어의 데이터 분석에 따르면 2021년 유니티의 글로벌 시장 점유율은 49.5%, 언리얼의 글로벌 시장 점유율은 9.7%로 2강 경쟁 구도가 형성될 것으로 예상됩니다. 또 다른 시장 조사 보고서에 따르면 2023년에는 유니티와 언리얼 엔진의 시장 점유율이 각각 48%와 13%에 달할 것으로 예상됩니다. 아래는 그래픽, 기능, 코드, 성능 측면에서 두 엔진을 비교 분석한 것입니다.
<그림>시각적 및 그래픽 효과 측면에서 Unreal 엔진이 Unity보다 조금 더 낫지만 그 차이는 매우 작습니다. 실무적인 관점에서 보면 Unity는 초보자가 사용하기 쉽고, Unity에 필요한 <코드>C#은 일반적으로 컴파일 속도가 빠르고 반복 시간이 짧은 반면, 애니메이션 및 그래픽 처리 측면에서 Unreal Engine은 초보자가 사용하기 더 어렵습니다. 실제로 언리얼 엔진에서 달성하고자 하는 것을 유니티에서도 달성할 수 있습니다. 두 소프트웨어 모두 API나 툴을 호출하여 더 나은 품질과 더 효율적인 그래픽 성능을 얻을 수 있습니다. 통계적으로 코드 엔지니어는 Unity를 선호하는 반면, 그래픽과 표현에 대한 요구 사항이 높은 테크니컬 아티스트는 Unreal 엔진을 선호합니다.
유사하게도 프론트엔드 개발자의 경우 Unity와 Unreal 외에도 선택할 수 있는 다른 게임 엔진이 있으며, 다음은 프론트엔드 기술자가 고려해야 할 몇 가지 일반적으로 사용되는 엔진입니다.
CryEngine은 고품질 그래픽과 강력한 물리 엔진으로 잘 알려져 있습니다. 실시간 글로벌 라이팅과 고품질 모델 및 머티리얼을 제공하여 개발자가 실제와 같은 수준의 게임을 제작할 수 있도록 지원합니다. 하지만 크라이엔진은 문서와 커뮤니티 리소스가 상대적으로 적어 초보자가 배우기 어려울 수 있습니다.
게임메이커 스튜디오 2는 2D 또는 3D 게임을 제작하는 데 사용할 수 있는 게임 개발 툴입니다. 개발자의 게임 아이디어를 실현하고 최종 프로젝트를 동일한 초기 소스 기반에서 여러 플랫폼으로 포팅하는 데 도움이 되는 다양한 툴과 편집기가 있습니다. 게임메이커 스튜디오 2는 가상 코드 로직을 사용하여 게임을 제작할 수 있는 직관적이고 사용하기 쉬운 드래그 앤 드롭(DnD™) 액션 인터페이스 아이콘을 제공합니다. 스크립팅 언어 GML을 사용하여 게임을 만들 수도 있고, DnD™ 액션 호출 함수를 사용하여 두 가지를 조합하여 게임을 만들 수도 있습니다.
고닷 엔진은 Windows, macOS, Linux 및 기타 여러 운영 체제에서 실행되는 다용도 크로스 플랫폼 2D 및 3D 오픈 소스 게임 엔진입니다. 이 엔진으로 만든 게임은 PC, Android, iOS, HTML5 및 기타 플랫폼에서 실행됩니다. 3D 렌더러는 노드 기반 아키텍처로 게임을 설계하여 3D 게임의 그래픽을 향상시키도록 설계되었습니다. 내장된 2D 게임 기능은 픽셀 좌표에서 작동하여 2D 게임 효과를 제어합니다.
어떤 게임 엔진을 선택하든 프론트엔드 게임 기술 개발자는 이를 실제로 어떻게 사용할지 고려해야 합니다. 웹3 게임은 소비재이므로 다양한 게임플레이 메커니즘(예: 집중, 공감, 상상력)과 몰입형 감정 상호작용(예: 즐거움, 공포, 갈망, 성장, 여가, 휴식, 놀라움)은 지속적인 소비자 소비를 위한 중요한 전제 조건입니다. 다음은 게임 프로세스에서 물리 시뮬레이션 및 드로잉 시스템(렌더링 시스템/렌더러)의 예시로, 프론트엔드 기술자가 게임 엔진을 사용할 때 고려해야 할 기술적 세부 사항과 사용자 경험 문제를 분석합니다.
정확한 물리 시뮬레이션이 없으면 아무리 화려한 게임이라도 정적이고 지루해 보일 수 있습니다. 게임의 다양한 장면에는 모두 물리 원리와 물리 엔진이 사용됩니다. 물리 엔진은 게임 속 오브젝트에 실제 물리적 속성(무게, 모양 등)을 할당하고 이를 강체 모델(도르래, 밧줄 등 포함)로 추상화하여 게임 오브젝트가 실제 동작과 힘의 작용에 따른 서로의 충돌을 모방하도록 하는 구성 요소입니다. 즉, 뉴턴의 고전 역학 모델을 기반으로 간단한 API를 통해 게임 오브젝트의 움직임, 회전 및 충돌을 계산하여 사실적인 움직임과 충돌의 효과를 구현합니다. 계산 과정에는 운동학, 동역학 등 여러 분야의 이론과 계산이 적용됩니다.
운동학: 기하학적 관점에서 시간에 따른 물체의 위치 변화 패턴을 설명하고 연구하는 역학의 한 분야(물체 자체의 물리적 특성이나 물체에 가해지는 힘은 포함하지 않음)를 뜻합니다. 점의 운동학은 점의 운동 방정식, 궤적, 변위, 속도, 가속도 및 기타 점의 운동 특성과 다양한 공간에서의 변환을 연구합니다. 운동학은 기하학을 사용하여 물체의 움직임을 연구하는 이론 역학의 하위 분야입니다. 작업 과정에서 프런트엔드 기술은 가정 전제를 최대한 실제 물리적 규칙에 가깝게 하는 동시에 계산 복잡성을 줄일 수 있는 방법을 고려해야 합니다. 일반적인 가정으로는 외력에 의한 동작을 고려하지 않는 것, 물체를 기본 동작 모델의 기하학적 구성 요소로 추상화하는 것, 물체의 속성(예: 위치, 속도, 각도 등)만 고려하는 것 등이 있습니다.
동역학: 물체에 작용하는 힘과 물체의 움직임 사이의 관계를 연구하는 학문입니다. 동역학은 빛의 속도보다 훨씬 느린 속도로 움직이는 거시적인 물체를 연구하는 학문입니다. 게임 물리 엔진에서는 주로 운동량 정리, 운동량 모멘트 정리, 운동 에너지 정리에서 파생된 플라즈마 시스템의 동역학에 대한 기본 정리와 이 세 가지 기본 정리에서 추론된 여러 가지 정리를 포함한 강체 동역학의 측면을 다루고 있습니다. 이 중 운동량, 운동모멘트, 운동에너지는 플라즈마, 플라즈마 시스템, 강체의 운동을 설명하는 기본 물리량입니다. 작업 및 계산 공학에서 고려해야 할 요소와 가정에는 물체의 운동에 대한 외부 힘의 영향, 힘의 역할(물체의 무게와 모양에 작용하는 중력, 항력 및 마찰, 심지어 탄성 물체까지), 강체에 대한 가정 및 실제 운동에 가까운 게임 내 물체의 가정 등이 포함됩니다.
물리 엔진을 사용하면 게임 개발자는 게임 내 오브젝트에 모양(균일한 분포 가정)과 힘을 할당하고 게임 엔진이 구동하는 모션 및 충돌 계산을 자동화하는 것만 생각하면 됩니다. 그리고 위의 물리 엔진 분석을 바탕으로 프론트엔드 기술팀은 운동학 및 충돌 계산과 최적화에 대한 복잡한 지식을 탐구할 필요 없이 물리 엔진에 파라미터를 입력하기만 하면 됩니다. 하지만 물리 엔진을 효율적으로 활용하려면 프런트엔드 기술팀은 물리적 움직임의 기본을 이해해야 할 뿐만 아니라 게임의 왜곡을 방지하기 위해 게임의 개별 시뮬레이션에서 생성되는 특수 현상을 이해해야 합니다. 숙련된 프런트엔드 기술자는 게임 흐름, 게임 성능 및 게임의 다른 측면도 고려해야 합니다.
게임의 리지드바디 모션 모델을 구성하기 전에 다음 요소를 고려해야 합니다.
설정이 리지드바디인지, 응력을 받은 후 리지드바디가 될지 여부. 강체인지 여부와 힘이 가해진 후의 탄성 변형 정도,
운동 중 또는 힘이 가해진 후의 모양과 크기 변화 여부,
힘이 가해진 후 물체 내부 점의 상대적 모양과 크기. 물체가 움직이는 동안 또는 힘을 가했을 때 물체 내부의 점들의 상대적 위치가 변하는지 여부
따라서 기술 프론트엔드 팀은 위의 분석을 바탕으로 물체의 중심, 모양, 질량, 초기 운동 방향과 궤적을 설정해야 합니다. 또한 중력과 운동의 경우 물체 모델이 균질하고 중심이 질량 중심과 일치한다고 가정하여 물체의 질량 중심을 설정하는 데 집중해야 합니다. 물체의 모션을 설정할 때 물체에 작용하는 힘은 중심점에 작용하는 힘과 중심점을 중심으로 회전하는 모멘트로 분해되는 것으로 간주해야 합니다. 파라미터 설정은 물체와 모션에 대한 플레이어의 지각과 일치해야 몰입감을 줄 수 있으며, 그렇지 않으면 플레이어가 게임에서 벗어나 몰입감을 느끼기 어렵습니다. 다음 다이어그램은 힘과 모멘트의 분해를 보여줍니다.
<그림>현실적인 물리적 동작을 구현하려면 게임 내 오브젝트가 정확하게(즉, 사람의 인식과 일치하도록) 가속하고 충돌과 중력 등의 힘을 받아야 합니다. 가장 먼저 주의해야 할 점은 모션을 위해 3D 오브젝트 모델을 설정할 때 오브젝트 모델이 볼록한지, 즉 두 꼭지점 사이에 그려진 선이 해당 오브젝트의 표면을 벗어나지 않는지 확인해야 한다는 것입니다. 대부분의 실제 물체는 볼록하지 않지만, 물리학 시뮬레이션에서는 볼록한 물체가 이상적인 근사치인 경우가 많습니다. 볼록한 오브젝트는 물리 엔진이 충돌을 계산하고 시뮬레이션할 때 충돌 및 낙하와 같은 수동적인 동작을 더 정확하게 생성할 수 있습니다. 볼록한 충돌 모양은 원시적인 충돌 모양과 오목한 충돌 모양 사이의 균형을 이루며 복잡한 모양을 표현할 수 있습니다. 스크립팅을 통해 피직스를 제어하면 오브젝트에 차량, 기계, 심지어 패브릭의 동적 속성을 제공할 수 있습니다. 물론 입력 메시가 오목할 수 있으며 물리 엔진이 볼록한 부분을 계산합니다. 오브젝트의 복잡도에 따라 여러 개의 볼록 셰이프를 사용하면 일반적으로 오목한 충돌 셰이프를 사용하는 것보다 성능이 향상되며, 고닷 엔진은 볼록 분해를 통해 중공 오브젝트와 거의 일치하는 볼록 셰이프를 생성할 수 있지만 볼록 셰이프의 수가 너무 많아지면 이러한 성능 이점이 감소합니다. 전체 레벨과 같이 크고 복잡한 오브젝트에는 오목한 모양을 사용하는 것이 좋습니다. 오브젝트 셰이프를 모델링할 때 기술 프런트엔드에서 사용할 수 있도록 중심, 회전 각도 및 치수와 같은 파라미터를 포함하도록 구, 상자, 캡슐, 실린더 및 컨벡스_헐과 같은 일반적인 참조 유형을 추가할 수 있습니다.
객체 모션을 모델링할 때는 추가적인 계산 프로세스가 필요합니다. 모델을 임포트할 때 물리 엔진을 추가하는 것은 비효율적일 수 있으므로 간단한 메시를 오브젝트에 감싸고 오브젝트의 자세가 메시를 따르도록 할 수 있습니다. Babylon을 사용하여 생성된 메시에는 물리적 속성을 직접 추가하거나 커스텀 셰이더를 사용하여 생성할 수 있습니다. 커스텀 셰이더가 더 복잡하지만 더 효과적입니다. 에디터에서 실제로는 메시 인스턴스를 선택하고 3D 뷰포트 상단의 메시 메뉴를 사용하여 하나 이상의 볼록한 콜리전 모양을 생성할 수 있습니다. 에디터는 두 가지 생성 모드를 제공합니다.
단일 볼록 콜리전 생성은 Quickhull
알고리즘을 사용하여 자동으로 생성된 볼록 콜리전 셰이프를 사용하여 ColisionShape 노드를 생성합니다. 콜리전 셰이프 노드입니다. 하나의 셰이프만 생성되므로 성능이 더 뛰어나며 작은 오브젝트 모델에 적합합니다.
복수의 볼록 충돌 형제 만들기 <코드>V-HACD코드> 알고리즘을 사용하면 여러 개의 ColisionShape 노드를 만들 수 있으며, 각각은 볼록 셰이프입니다. 여러 모양이 생성되므로 오목한 오브젝트의 경우 성능을 희생하더라도 더 정확합니다. 중간 정도의 복잡도를 가진 오브젝트의 경우 단일 오목한 충돌 모양을 사용하는 것보다 빠를 수 있습니다.
오목한 콜리전 셰이프의 경우 오목은 가장 느리지만 고닷에서 가장 정확한 옵션이기도 합니다. 오목한 모양은 스태틱 바디에서만 사용할 수 있습니다. 리지드 바디의 모드가 스태틱이 아니면 키네마틱 바디나 리지드 바디와 함께 사용할 수 없습니다. 오목한 모양은 레벨 디자인에 그리드맵을 사용하지 않을 때 레벨 충돌에 가장 적합한 방법입니다. 3D 모델러에서 단순화된 콜리전 메시를 빌드하고 고닷이 자동으로 콜리전 셰이프를 생성하도록 할 수도 있습니다. 에디터에서 메시 인스턴스를 선택하고 3D 뷰포트 상단의 메시 메뉴를 사용하여 오목한 콜리전 셰이프를 생성할 수 있습니다. 에디터에는 두 가지 옵션이 표시됩니다.
Create Trimesh Static Body는 메시 지오메트리와 일치하는 오목한 모양이 포함된 스태틱 바디를 생성합니다.
Create Trimesh Collision Sibling 메시 지오메트리와 일치하는 오목한 모양을 가진 CollisionShape 노드를 생성합니다.
특히 리지드 바디나 키네마틱 바디와 같은 동적 오브젝트의 경우 퍼포먼스 향상을 위해 셰이프 수를 최대한 적게 유지하는 것이 좋으며, 패닝, 회전, 스케일 조정이 없는 콜리전 셰이프는 을 사용하지 않는 것이 피직스 엔진의 내부 최적화의 이점을 누릴 수 있습니다. 스태틱 바디에서 변환되지 않은 단일 콜리전 셰이프를 사용할 때 엔진의 와이드 페이즈 알고리즘은 비활성 피직스 바디를 버릴 수 있으며, 성능 문제가 발생하면 정확도에 대한 트레이드오프가 있어야 합니다. 대부분의 게임에는 100% 정확한 콜리전이 없으며, 게임에서는 이를 숨기거나 일반적인 게임 플레이 중에 눈에 띄지 않게 만드는 창의적인 방법을 찾아냈습니다.
위 내용은 물리 시뮬레이션 부분을 사례로 삼아 프론트엔드 개발자가 보완하고 주의해야 할 부분을 분석한 것이고, 다음은 드로잉 시스템(렌더링 시스템/렌더러)을 예로 삼아 프론트엔드 개발자가 보완해야 할 부분을 분석해 보겠습니다. 드로잉 시스템은 전체 게임 엔진에서 가장 높은 난이도를 자랑하는 부분이기도 합니다. 이론적으로 렌더링에는 사용자에게 게임에 대한 몰입감을 주기 위해 수학(수학적, 물리적, 알고리즘적 정확성)과 드로잉 효과(조명, 입체 각도, 산란, 굴절 및 반사 등)의 정확성이라는 두 가지 측면을 해결해야 합니다. 구현 및 실습 과정에서 다음 네 가지 실질적인 문제를 해결해야 합니다.
씬 복잡성: 하나의 장면에 대해 여러 각도로 여러 오브젝트를 렌더링하고 각 게임 프레임 생성 시 모두 여러 번 반복해야 하며, 여러 장면에 대해 여러 각도로 여러 오브젝트를 렌더링해야 합니다.
하드웨어 깊이 적응: PC, 휴대폰 및 기타 하드웨어의 성능은 알고리즘의 작동과 출력에 영향을 미칩니다. 하드웨어의 경우 시간이 많이 소요되는 다양한 텍스처 샘플링 작업과 사인, 코사인, 지수 및 로그 초월 함수 연산과 같은 복잡한 수학적 계산을 처리해야 합니다. 또한 기본 하드웨어 유닛의 혼합 정밀도 연산 지원도 딥 하드웨어 적용을 위한 주요 고려 사항입니다.
성능 예산: 게임 그래픽이 아무리 까다롭더라도 게임 엔진은 33밀리초(즉, 1/30초) 내에 게임 그래픽의 연산을 완료할 수 있도록 해야 합니다. 몰입도가 높은 대규모 게임의 경우 비교적 짧은 시간에 게임 화면이 많이 바뀔 수 있지만 계산 시간을 단축할 수는 없습니다. 또한 게임 산업의 발전과 함께 요구 사항의 미세한 수준의 게임이 점점 더 높아지고 프레임 속도 요구 사항과 게임 화면의 프레임 크기 요구 사항이 점점 더 높아지고 있습니다. 프레임 당 시간 예산은 점점 더 작아지고 있지만 동시에 화질에 대한 요구 사항은 점점 더 높아지고 있습니다.
게임 프레임 당 시간 예산 할당 : 그래픽 카드 성능의 비율 측면에서 GPU가 CPU보다 더 많이 차지할 수 있습니다. 그래픽 렌더링 알고리즘은 시스템의 다른 모듈이 사용할 수 있는 것보다 더 많은 CPU 컴퓨팅 리소스를 차지해서는 안 됩니다.
위 분석에 따르면 계산은 수천만 개의 정점과 픽셀 계산, 논리 연산, 계산 프로세스 등 드로잉 및 렌더링 시스템의 가장 중요한 핵심 기능 중 하나입니다. 버텍스와 픽셀, 논리 연산 단위, 텍스처 등입니다. 구체적인 연산을 간단히 설명하면, 삼각형으로 구성된 여러 평면이 투영 행렬을 통해 화면 공간에 투영되고, 정점 데이터는 래스터화를 통해 슬라이스로 변환되는데, 슬라이스의 각 요소는 프레임버퍼의 픽셀에 해당하며 이 과정을 통해 그래프는 래스터로 구성된 2차원 이미지로 변환됩니다. 셰이딩 및 페인팅 프로세스에서는 각각의 작은 픽셀 포인트에서 해당 픽셀 포인트에 해당하는 재질과 텍스처를 계산 해제하고 해당 픽셀 포인트를 해당 색상으로 렌더링합니다. 그리고 몰입감과 사실감을 높이기 위해 조명, 사물 패턴 등의 정보를 실제 상황에 맞게 조정하고 최종 효과를 렌더링한 후 버텍스 버퍼와 인덱스 버퍼를 구성하고 메시 데이터를 그래픽 카드에 전달합니다. 위의 '투영 - 래스터화 - 음영 및 페인팅 - 후처리 및 조명 작업'의 과정이 페인팅의 과정입니다.
<그림>세부적으로 렌더링할 오브젝트와 장면에는 다양한 형상, 재질, 패턴, 적용 시나리오가 있으므로 실제 렌더링 작업에서 오브젝트와 장면을 사례별로 분석해야 합니다. 일반적으로 모델 파일에는 버텍스 위치, 버텍스의 법선 방향, 버텍스의 UV 좌표 및 기타 속성을 포함한 여러 버텍스가 포함됩니다. 대부분의 경우 각 모델의 삼각형 방향을 계산한 다음 인접한 여러 삼각형의 법선 벡터를 평균화하여 정점의 법선 벡터 방향을 얻을 수 있으며, 실제 구현에서는 모델 파일의 삼각형은 인덱스 데이터와 정점 데이터로 기술하고 모든 정점을 배열에 넣고 세 정점의 인덱스 위치 정보만 저장하여 원래 저장 용량의 1/6로 저장 용량을 절약할 수 있습니다.
텍스처는 머티리얼을 표현하는 매우 중요한 방법입니다. 머티리얼의 유형에 대한 인식은 머티리얼의 파라미터가 아니라 텍스처에 의해 결정되는 경우가 많습니다. 예를 들어 매끄러운 금속 표면과 녹슨 비금속 표면의 시각적 표현은 텍스처의 거칠기에 따라 구분됩니다. 채색 및 페인팅 프로세스에서 텍스처 샘플링의 성능 소모는 매우 크고 복잡합니다. 텍스처 샘플링을 수행하려면 2 x 4, 총 8픽셀의 데이터를 샘플링해야 하며 7개의 보간 연산이 필요합니다. 텍스처 샘플링은 샘플링과 같은 문제를 피하고 원근 변화로 인한 지터와 정렬 불량을 방지해야 하므로 4점을 샘플링하고 보간해야 하며 텍스처의 두 레이어에 대한 비례 샘플링도 필수적입니다.
쉐이딩과 페인팅을 할 때는 다양한 요소를 스티칭하고 결합해야 하는데, 이때 엔진에서 생성된 셰이더 코드는 바이너리 데이터 블록인 블록으로 컴파일되어 네트워크와 함께 저장됩니다. 다양한 메시와 셰이더 코드의 조합으로 다양한 게임 세계가 만들어집니다. 동일한 모델에 대한 서로 다른 머티리얼은 자체 서브메시에서 자체 머티리얼, 텍스처 및 셰이더 코드를 사용할 수 있습니다. 각 서브메시는 데이터의 일부만 사용하기 때문에 인덱스 버퍼에는 시작과 끝 위치 오프셋만 저장하면 됩니다. 또한 셰이딩 및 페인팅의 실제 작업에서 동일한 리소스 풀(예: 메시 풀, 텍스처 풀 등)을 공유하여 공간을 절약할 수 있습니다. 인스턴스화된 렌더링 중에 버텍스 데이터의 복사본을 공유하면 그래픽 메모리 사용량이 크게 줄어들고 그래픽 메모리 대역폭이 줄어든다는 점에 주목할 필요가 있습니다. 동시에 더 까다로운 게임의 경우 인스턴스화를 사용하려면 개별 오브젝트 선택 작업과 같은 다른 추가 기술 처리가 필요합니다.
또한 포스트 프로세싱 및 조명 작업에서는 빛의 강도, 조명 각도, 사용자 시점, 산란 및 굴절, 빛의 재질 흡수 등 고려해야 할 여러 차원이 있습니다. 예를 들어 Unity의 빌트인 파이프라인에서 포스트 프로세싱 효과를 구현하려면 포스트 프로세싱 스택을 사용하여 이 목표를 달성하거나, Shader
메서드와 함께 OnRenderlmage()
를 사용하여 커스터마이징할 수 있습니다. 이 메서드를 사용하면 씬에서 원하는 포스트 프로세싱 효과를 사용할 수 있으며 언제든지 자유롭게 수정하고 확장할 수 있습니다. 게임 엔진에서는 광원 처리의 계산 과정이 더 복잡하므로 다음 그림을 참조하여 광원 분석 및 방정식 표현을 참조 할 수 있으며 관심있는 독자는 자신의 시도를 참조 할 수 있습니다. 게임 산업의 정교화가 발전함에 따라 조명 성능은 게임 산업의 높은 수준의 성능에서 중요한 부분이되는 경향이 있으며 관련 렌더링 기술은 애니메이션, 영화, 가상 현실 및 기타 여러 분야에서도 사용할 수 있습니다.
한 가지 덧붙일 것은 게임 엔진 드로잉 시스템은 매우 간단하다는 것입니다. 게임 엔진은 그래픽 카드의 아키텍처, 성능, 전력 소비, 속도, 한계에 대한 심도 있는 이해가 있어야 엔진의 기능을 완벽하게 구현할 수 있는 컴퓨터 공학입니다. 또한 GPU는 매우 빠른 속도의 병렬 처리 기능을 갖추고 있어 저비용으로 오클루전 세트의 뎁스 맵을 형성한 다음 모델링된 오브젝트 중 일부를 제거하여 복잡한 장면의 처리 성능을 최적화할 수 있습니다.
백엔드의 주요 작업은 서버 측 로직 및 데이터 처리, 네트워크 통신 및 동기화, 기타 기술 솔루션을 다룹니다. 서버 로직 측면에서 백엔드 개발자는 플레이어 계정 관리, 게임 월드 상태 동기화, 멀티플레이어 상호작용 지원 등 서버 측 로직과 게임 데이터 저장 처리를 담당해야 합니다. 또한 개발자는 게임 진행 상황, 플레이어 업적, 가상 아이템 및 기타 정보를 저장하기 위한 효율적인 데이터베이스 아키텍처를 설계하고 구현해야 합니다. 또한 백엔드 시스템은 플레이어 상호 작용, 플레이어 사용자 수 데이터, 캐릭터 업그레이드 및 리소스 구매 등에 대한 정보 요청 등 게임 클라이언트의 요청도 처리해야 합니다. 웹 3.0 게임은 다음 그림에서 게임 백엔드 아키텍처를 참조할 수 있습니다. 현재 통신 및 암호화 기술 수준에 따른 전송 속도와 정산 시간 등의 요인으로 인해 대규모 웹3 게임의 백엔드 아키텍처는 아직 체인에 완전히 구축되지 않았습니다.
<그림 style="text-align: 가운데;">게임 네트워크 통신 및 동기화를 위한 백엔드 개발에서 백엔드 개발자는 클라이언트와 서버 간의 안정적인 통신 연결을 위해 TCP/IP, HTTP, 웹소켓 등 다양한 종류의 네트워크 프로토콜을 사용합니다. 이 개발 과정에서 네트워크 프로토콜은 빈번한 데이터 교환과 실시간 게임 상태 업데이트를 지원할 수 있도록 설계 및 구현되어야 합니다. 효과적인 네트워크 통신 전략과 동기화 메커니즘은 지연 시간을 줄이고 모든 플레이어가 게임 월드에서 일관된 상태를 볼 수 있도록 보장할 수 있습니다. 특히 온라인 게임에서 실시간 데이터 전송과 동기화는 우수한 사용자 경험을 보장하는 데 핵심적인 요소입니다.
백엔드를 개발할 때는 전반적인 확장성, 안정성, 성능 개선에 주의를 기울여야 합니다. 성능 측면에서 백엔드는 캐시에서 짧은 지연 시간과 빠른 계산 피드백을 달성해야 할 뿐만 아니라 HTTP 프로토콜 측면에서 서버와 실시간으로 통신할 수 있어야 하고, 안정성 및 유용성 측면에서 단일 서버 문제가 모든 서버에 영향을 미치지 않도록 서버를 격리해야 하며, 높은 확장성 측면에서 개발자는 여러 하위 서버를 연결하는 단일 서버의 계산 용량과 확장 기능에 주의를 기울여야 합니다. 높은 확장성 측면에서 개발자는 단일 서버를 여러 개의 서브 서버와 연결하고, 피크 시간대에 서버의 정보 및 요청 처리 능력을 향상시키기 위해 TCP 및 IPC와 같은 채널을 통해 통신함으로써 컴퓨팅 용량 및 기능을 확장하는 데 집중해야 합니다. 아래 그림은 스토리지, 서비스 및 상호 작용 측면에서 기술 백엔드의 전체 구조를 나타내는 대표적인 도식입니다.
<그림 style="text-align: 가운데;">다중 사용자 및 다중 시나리오 웹3 게임의 경우, 게임 사용자의 경험을 보장하고 단기간에 많은 접속 요청이 몰리는 부담을 줄이기 위해 개발자는 여러 서버를 설정할 수 있습니다. 각 서버에서 여러 월드 모드를 클러스터로 그룹화하여 많은 사용자에게 게임의 유용성을 충족시킬 수 있습니다. 동시에 멀티 서버 설정에서는 대규모 사용자의 실시간 운영을 지원할 수 있으며, 수많은 접속과 요청이 발생하는 과정에서 지연 시간을 줄이기 위해 모든 노력을 기울일 수 있습니다. 아래 그림은 월드가 있는 멀티 서버의 참조 도식입니다.
웹3 게임의 기술적인 프론트엔드와 백엔드는 완전히 분리되어 있지 않으며, 전체적인 기술 지원을 완성하기 위해서는 여러 가지 면에서 조율이 필요합니다. 예를 들어 플러그인의 경우 프론트엔드와 백엔드 기술 모두 각자의 강점을 살려 플러그인 검출을 위해 협력할 수 있습니다. 프론트엔드 및 백엔드 기술을 전체적으로 지원하는 과정에서 프론트엔드는 Unity의 강점을, 백엔드는 데이터 요청 및 쓰기의 강점을 활용할 수 있으며 일반적으로 다음과 같은 방식으로 협력합니다.
가속 방지: 서버 검증, 클라이언트 측 협력;
가속 방지: 서버 검증, 클라이언트 측 협력;
메모리 데이터 암호화: 유니티 에셋스토어 플러그인을 통한 클라이언트 측 메모리 암호화 및 클라이언트 내 모든 데이터에 대한 의존성 감소;
프로토콜 CD: 프로토콜에 자주 액세스하지 못하도록 방지합니다. 예를 들어 300밀리초에서 1,000밀리초로만 액세스 빈도를 제한할 수 있습니다.
프로토콜 암호화: 프로토콜 헤더의 바이트 수 증가.
WPE에서 중복 패킷 방지: 중복 픽업 및 입력 방지.
비충전 채널 모니터링: 비충전 채널에서 통화 및 자산의 액세스 모니터링.
비충전 채널 모니터링: 비충전 소스에서 해당 채널로 통화 및 자산;
이동 및 작업 가속 방지: 플레이어 프로세스와 장면 프로세스에 감지 로직을 배치할 수 있습니다.
위 예시는 기술적 프론트 엔드와 백엔드의 협력으로 플러그인을 사용한 예시입니다. 게임 개발 과정에서 프론트 엔드와 백엔드는 서로 다른 작업에 대한 각자의 책임에 대한 이해를 깊이 있게 이해하면서도 긴밀하게 연결되어 있으며, 함께 완전한 게임 시스템을 구성합니다. 프론트엔드의 풍부한 상호 작용과 백엔드의 강력한 지원으로 멋진 게임 경험을 제공할 수 있습니다. 위 내용은 웹3 게임 기술 중 일부에 대한 간략한 소개일 뿐입니다. 더 많은 프론트엔드 및 백엔드 기술에 관심이 있다면 다음 책을 참고하여 자세히 알아보세요.
웹3 게임 프로그래밍의 수학적 측면: 게임 엔진의 기초. 개발, 1권: 수학" "3D 게임과 컴퓨터 그래픽의 수학적 방법" "그래픽과 게임 개발을 위한 3D 수학 입문서" "게임과 인터랙티브 애플리케이션을 위한 필수 수학과 인터랙티브 응용 컴퓨터 과학을 위한 기하 대수 컴퓨터 그래픽을 위한 기하학적 도구 알고리즘 설명 쿼터니언 시각화 스캐터, 회전, 그라데이션 설명, 계산 기하학
게임 프로그래밍: "언리얼 엔진 게임 개발 학습", "언리얼 엔진용 블루프린트 비주얼 스크립팅", "게임 디자인, 프로토타이핑 및 개발 소개", "Unity 5 실습 가이드", "Unity 5 실습. 및 개발" "Unity 5 실무" "게임 프로그래밍 알고리즘과 기법" "게임 프로그래밍 패턴" "크로스 플랫폼 게임 프로그래밍" "안드로이드 NDK 게임 개발 쿡북" "FPS 게임 빌드하기 Unity로》《유니티 가상 현실 프로젝트》《증강 현실》《실용 증강 현실》《게임 프로그래밍 황금률》《최고의 게임 프로그래밍 보석", "고급 게임 프로그래밍"
게임 엔진: "게임 엔진 아키텍처", "3D 게임 엔진 아키텍처", "3D 게임 엔진 설계", "고급 게임 스크립팅", "프로그래밍 언어 구현 패턴", "가비지 컬렉션"
게임 엔진: "게임 엔진 아키텍처", "3D 게임 엔진 설계", "가비지 컬렉션", "프로그래밍 언어 구현 패턴". 프로그래밍 언어 구현 패턴" "가비지 컬렉션 알고리즘 핸드북: 자동화된 메모리 관리의 기술" "비디오 게임 최적화" "Unity 5 게임 최적화" "알고리즘 인사이트: 효율적인 알고리즘의 신비" "최신 X86 어셈블리 언어 프로그래밍" "게임과 과학을 위한 GPU 프로그래밍"
게임 엔진 게임과 과학을 위한 GPU 프로그래밍》《벡터 게임 수학 프로세서》《게임 개발 도구》《게임 개발 도구의 사용자 경험 디자인하기
컴퓨터 그래픽과 렌더링: 다이렉트X와 HLSL을 이용한 실시간 3D 렌더링, 컴퓨터 그래픽스, 컴퓨터 그래픽스의 원리와 실습: C 언어 설명, 디지털 이미지 합성의 원리, 디지털 이미지 처리, 3D 이미지 처리》《컴퓨터 그래픽스 원리와 실습》. 디지털 이미지 합성의 원리 3D 게임 프로그래밍 마스터 기법, 실시간 셰이딩 기법 실시간 컴퓨터 그래픽 실시간 볼륨 그래픽 레이 트레이싱 알고리즘 및 기법 물리 기반 렌더링 그래픽 프로그래밍 기법 Direct3D 그래픽 셰이더를 사용한 실제 렌더링 및 계산 OpenGL 셰이딩 언어 OpenGL 인사이트 고급 글로벌 일루미네이션 제작 볼륨 렌더링, 텍스처링 및 모델링, 폴리곤 메시 처리, 3D 그래픽의 세부 수준, 가상 글로브를 위한 3D 엔진 설계, 비사실적 렌더링. 포토리얼리스틱 렌더링", "아이소서피스", "컴퓨터 그래픽의 마법"
게임 사운드: "게임 오디오 프로그래밍"
게임 물리학 및 애니메이션:《컴퓨터 애니메이션》《게임 개발 물리학》《게임 프로그래머를 위한 물리 모델링》《물리 기반 애니메이션》《리얼타임 카메라》《게임 역운동학, 유체 엔진 개발, 게임 물리 진주, 로터스 루트 유체 애니메이션의 예술, 컴퓨터 그래픽을 위한 유체 시뮬레이션. 인터랙티브 3D 환경에서의 충돌 감지》《실시간 충돌 감지 알고리즘 기술》《게임 물리 엔진 개발》
게임인공지능: 《게임을 위한 인공지능》《게임 개발 중 게임용 인공지능", "게임 인공지능 프로그래밍 사례 에센스", "유니티 인공지능 게임 개발", "게임 인공지능을 위한 행동 수학"
멀티플레이어 게임 프로그래밍: "멀티플레이어 게임 프로그래밍", "대규모로 멀티플레이어 게임 개발" "POSIX 멀티스레드 프로그래밍" "대규모 온라인 게임 개발" "TCP/IP 상세 1~3권"
지면의 한계로 이 파트는 웹3. 게임 아트 부분만 간략하게 분석합니다. 웹3.0 게임에서 아트는 매우 중요한 역할을 합니다. 좋은 게임이란 단순히 재미있는 게임 그 이상이며, 특히 3A 레벨의 높은 수준의 3A 게임은 모두 하나의 예술 작품입니다. 예술적 표현 측면에서 게임 스튜디오는 특수 효과, 인터랙션, 애니메이션, 렌더링 등 다양한 방법으로 웹3 게임의 예술적 표현을 개선합니다. 아래 표는 웹3 게임의 예술적 표현을 여러 하위 방향에서 보여줍니다. 아래 표는 웹3 게임의 예술적 표현을 위해 고려해야 할 여러 가지 하위 방향을 보여줍니다. 게임 장르, 게임 제작 기간, 게임 타겟층의 차이로 인해 웹3 게임 스튜디오는 게임의 예술적 표현의 균형을 맞추고 절충하는 방법을 고려해야 합니다.
전반적으로 게임의 아트 스타일은 기획자가 설정한 주제와 배경에 부합해야 하지만 아트 성과에 대한 평가와 분석은 상대적으로 주관적인데, 게임의 아트 성과를 분석하고 평가하는 8가지 관점을 예로 들면 다음과 같습니다.
UI/UX 디자인: 사용자 인터페이스 디자인, 인터페이스와 아트 스타일의 일관성, 정보 표현;
애니메이션 및 특수 효과: 게임의 부드러움과 표현력, 특수 효과의 시각적 효과, 사운드와 시각 효과의 통합;
환경 디자인: 환경 속 장면의 디테일과 분위기, 장면 오브젝트의 상호 작용;
기술적 구현: 사실적인 물리적 렌더링, 이미지 품질과 성능 간의 균형;
예술적 표현 및 게임플레이: 게임의 핵심 메커니즘, 배경 및 내러티브에 대한 예술의 지원;
또한 Web3 스킨은 사용자가 가장 기꺼이 소비하고 구매하는 게임 구성 요소 중 하나입니다. 게임 구성 요소 중 하나를 소비하고 구매합니다. 소비재 관점에서 보면 스킨, 액세서리, 특수효과와 같은 예술적 표현은 사용자의 구매와 소비를 유도하는 핵심 동인 중 하나입니다. 차별화된 예술적 표현은 사용자에게 다양한 심리적 감정을 경험하게 할 수 있습니다. 추가 아트 상품을 구매하려는 게임 사용자의 심리는 다음과 같은 관점에서 분석할 수 있습니다.
게임 내 추가 에셋 활용: 게임 내 NFT 에셋은 플레이어에게 추가적인 공격, 방어, 속도, 이득 보너스를 포함하되 이에 국한되지 않는 추가적인 이득 효과를 얻을 수 있습니다.
게임 내 경제: 일부 웹3.0 게임에서 스킨은 거래 및 교환 가치가 있으며, 사용자와 중재자는 스킨을 구매 및 거래하고 이를 통해 수익을 얻을 수도 있습니다.
사회적 요인: 멀티플레이 온라인 게임에서는 다음과 같은 사회적 요인이 있습니다.
개인화 및 자기 표현: 스킨을 통해 캐릭터 외형을 맞춤화할 수 있으며, 독특한 스킨을 선택함으로써 플레이어는 자신의 개성, 스타일, 선호도를 표현할 수 있음
업적 또는 상태 과시하기 일부 희귀 스킨이나 한정판 스킨은 특정 퀘스트, 활동 또는 구매를 완료해야만 얻을 수 있으며, 이러한 스킨을 소유하면 게임에서 플레이어의 업적이나 지위를 과시할 수 있습니다.
2024년 2분기 기준 통계 분석에 따르면 지역별 유저 플레이어의 아트 선호도가 서로 다른 것으로 나타났습니다. 미국에서는 카툰, 만화, 리얼의 인기 비율이 51:5:44로 카툰 스타일의 인기가 높은 것으로 나타났으며, 일본에서는 카툰, 만화, 리얼의 인기 비율이 35:44:20으로 '2세대'에 대한 선호도가 80%에 달했습니다.
<그림 style="text-align: 가운데;">오디오 및 사운드 연출의 경우, 현재 게임 스튜디오에서 오디오 및 사운드 성능을 중요시하는 정도는 여러 요인에 따라 달라집니다. 예산이 충분한 대형 스튜디오의 경우 전문 오디오 디자이너, 음악 작곡가, 사운드 엔지니어를 고용하고 고급 오디오 기술과 장비를 사용하여 게임의 분위기와 감정적 울림을 강화하는 몰입형 오디오 경험을 만드는 등 고품질 오디오 및 사운드 성능을 완성하는 데 더 많은 자원을 투자할 수 있는 능력과 시간을 확보하고 있습니다. 하지만 예산이 제한된 소규모 스튜디오의 경우 오디오 및 음향 효과를 위한 리소스가 상대적으로 부족할 수 있습니다. 재정 및 인력 제약으로 인해 소규모 스튜디오는 기성품 사운드 라이브러리나 간단한 오디오 디자인 툴에 의존해야 할 수도 있습니다. 일부 소규모 게임 스튜디오는 오디오 및 음향 효과의 아웃소싱을 통해 작업을 진행하기도 합니다. 그 결과 오디오 및 사운드 성능의 품질이 대형 스튜디오에 비해 떨어질 수 있습니다.
또한 오디오는 게임의 품질을 높이기 위해 다른 부서와 협력합니다. 예를 들어 오디오 디자인에 VO 작업이 포함된 오디오 및 카피라이팅의 경우, 오디오 부서는 캐릭터의 연기를 개발하는 것부터 대사의 분기점을 결정하는 것, 심지어 카피라이터가 쓴 대사를 정확하게 발음하고 전달해야 하는지를 확인하기 위해 VO 단계에서 음성 연기를 지원하는 등 카피라이터와 여러 번 접촉하게 됩니다. 카피라이터가 쓴 대사를 어떻게 하면 정확하게 전달할 수 있을지 고민합니다. 오디오와 맵 편집, 애니메이션, 특수 효과 등의 과정에서는 캐릭터가 맵에서 이동할 때 덤불을 지날 때 발자국 소리를 설정하고 맵의 중요한 소품의 특수 효과를 트리거하는 등 출력물을 서로 조율해야 합니다. 따라서 여러 부서가 함께 작업해야 했고, 작업을 조율하고 서로의 파일에 대한 액세스 권한을 협상하여 동일한 작업이 이루어지고 고품질의 결과물이 나오도록 하기 위해 많은 커뮤니케이션이 필요했습니다.
또한 프로젝트의 규모와 유형은 오디오 및 음향 효과의 입력에 영향을 미칩니다. 비주얼이나 플롯이 중심인 게임의 경우 오디오 및 음향 효과는 상대적으로 입력이 적은 부차적인 요소로 간주될 수 있습니다. 분위기를 고조시키고 몰입감을 높이기 위해 음향 효과가 필요한 게임에서는 오디오 디자인의 중요성이 크게 증가합니다.
이 글은 Web3의 게임 분석 시리즈 중 산업 제작 및 프로덕션(기술 및 아트)에 대한 두 번째 글이며, 다음 글인 Web3 게임 분석 시리즈 (III) 테스트 및 운영을 기대해 주세요.
분석가 니콜라스 머튼은 이더리움 생태계의 정체와 혁신 부족을 이유로 비트코인이 이더리움보다 우위를 점할 것으로 예측했습니다.
골드만 삭스, JP 모건과 같은 기업이 주도하는 월가의 비트코인 ETF 진출은 비트코인의 기본 원칙과 모순되는 위험을 내포하고 있습니다.
Better Markets CEO, 사기 위험과 투자자 피해 가능성을 언급하며 SEC의 비트코인 ETF 승인 가능성 비판
정체불명의 단체가 사토시 나카모토의 주소로 26.91 BTC를 이체하여 암호화폐 커뮤니티에서 음모와 추측을 불러일으켰습니다.
DCG는 제네시스에 대한 7억 달러의 부채를 청산하며 변동성이 큰 암호화폐 시장에서 재무적 탄력성과 전략적 선견지명을 보여주었습니다.
중국을 향한 시진핑의 '고품질 발전' 구호는 여전히 수수께끼로 남아 있으며, 그 실질적인 의미에 대한 전 세계의 추측을 불러일으킵니다.
워드프레스와 유사한 포워드의 노코드 블록체인 툴킷은 웹3.0 액세스와 혁신을 간소화합니다.
주로 비문과 관련된 EVM 체인 거래의 급증과 그 이후의 감소는 블록체인 환경에서의 미래에 대한 의문을 제기합니다.
러시아는 브릭스(BRICS)를 이끌며 IMF 영향력 확대를 위한 전략적 노력을 기울이고 있으며, 이는 글로벌 금융 강대국 역학 관계의 변화를 의미합니다.
홍콩의 해시키 거래소는 새로운 글로벌 여행 규칙을 준수하기 위해 운영을 재정비하여 암호화폐 부문의 규제 감독을 강화하는 방향으로 전환하고 있습니다.