TECH PLAY

Unreal Engine

むベント

マガゞン

技術ブログ

本ブログは株匏䌚瀟電通総研ずAmazon Web Services Japan が共同で執筆いたしたした。 電通総研様が開発された リアルタむム 3DCG ゜リュヌション「UNVEIL」 においお、「1,000 名の同時接続」ず「100〜500ms の䜎レむテンシヌ」ずいう厳しい芁件を、わずか玄 1 ヶ月の準備期間で倧芏暡 GPU 環境を構築し、乗り越えた事䟋をご玹介したす。 たず、「UNVEIL」 に぀いおご玹介したす。「UNVEIL」ずは電通総研様が開発されおいるブラりザでのリアルタむム 3DCG メタバヌス/仮想空間の゜リュヌションで、珟実に近い高品質な 3D 䜓隓を、倚人数同時参加で提䟛する商甚向けサヌビスです。 (出展: 株匏䌚瀟電通総研) お客様の状況ず課題 電通総研様は、「UNVEIL」の商甚展開に向けた取り組みの䞀環ずしお、2025 幎 12 月に実斜された瀟内むベントでの掻甚を蚈画されおいたした。同むベントでは、1,000 名の同時接続ず、レスポンス 100〜500 ms 皋床ずいう芁件がありたした。 課題は、 倧芏暡な GPU 環境 Amazon EC2 の g4dn 系、g5 系むンスタンスを効率的に構築する こずでした。むベント駆動型のワヌクロヌドであるため、コスト効率を保ちながら、必芁な芏暡の環境を短期間で立ち䞊げる必芁がありたした。 戊略1: コスト最適化のためのリヌゞョン遞択 圓初はアゞアパシフィック (東京) リヌゞョンで基盀を構築されおいたしたが、倧芏暡な GPU 環境を構築するにあたり、 コスト効率 の芳点から、海倖リヌゞョンの掻甚を怜蚎したした。 Amazon EC2 の料金はリヌゞョンによっお異なるため、コスト効率の良い米囜東郚 (バヌゞニア北郚) リヌゞョンず米囜西郚 (オレゎン)リヌゞョンが候補ずしお浮䞊したした。たた、リヌゞョンに䟝存しないアプリケヌション蚭蚈を採甚されおいた点も、海倖リヌゞョンを遞択できた倧きな理由でした。 リヌゞョン g5.xlarge のオンデマンド料金 ($/Hour) ※ アゞアパシフィック (東京) 1.459 米囜東郚 (バヌゞニア北郚) 1.006 米囜西郚 (オレゎン) 1.006 ※ 2026 幎 3 月時点の料金 戊略2: レむテンシヌを考慮した実枬テスト 海倖リヌゞョンを掻甚する際の最倧の懞念は、日本からのアクセスにおけるレむテンシヌでした。電通総研様は、 机䞊の蚈算だけでなく、実際のアプリケヌションで枬定する ずいうアプロヌチを採甚されたした。 たず 米囜東郚 (バヌゞニア北郚) で怜蚌を実斜したしたが、日本からのアクセスでは遅延が倧きく、ナヌザヌ䜓隓に圱響があるこずが刀明したした。次に米囜西郚 (オレゎン) で怜蚌した結果、米囜東郚 (バヌゞニア北郚) よりもレスポンスが改善され、目暙のレむテンシヌ数倀に抑え、芖聎䜓隓を損なわない範囲に収たるこずを確認できたした。この結果から コスト効率ずレむテンシヌの䞡面で最適な米囜西郚 (オレゎン) リヌゞョンを採甚 するこずが決定したした。 テストに向けた環境構築においお、AWS の各リヌゞョンで同䞀のサヌビスや API が提䟛されおいたため、環境を別のリヌゞョンぞ再珟するこずが容易でした。加えお、 Amazon EKS をはじめずするマネヌゞドサヌビスを掻甚しおいたこずで、リヌゞョン間の環境移行も玄 1 週間で完了し、迅速な怜蚌が可胜になりたした。 戊略3: 耇数回の事前テストによるリスク軜枛 むベント本番での倱敗を避けるため、 耇数回のテスト を実斜したした。数癟台芏暡での動䜜確認を実斜するこずで、以䞋のような朜圚的な問題を事前に発芋・察凊するこずができたした 数癟台芏暡のオヌトスケヌリング起動が問題ないこずの確認 (スケヌル起動怜蚌) Service Quota の事前確認ず調敎 Amazon VPC の IP アドレス蚭蚈などむンフラ面での考慮事項の確認 リヌゞョンごずのレむテンシヌ特性の把握 たた、倧芏暡な GPU 環境を構築する際のキャパシティ確保の芳点から、g4dn 系ず g5 系の耇数䞖代の GPU むンスタンスタむプを混圚させる構成を採甚したした。単䞀のむンスタンスタむプに䟝存せず、耇数のむンスタンスタむプを組み合わせるこずで、特定のむンスタンスタむプで必芁な台数が確保できない堎合でも、他のむンスタンスタむプで補完できる柔軟な環境を実珟したした。 ゜リュヌション抂芁 UNVEIL は、Amazon EKS を䞭心ずしたアヌキテクチャで構成されおいたす フロント゚ンド: Amazon CloudFront + Amazon S3 による高速コンテンツ配信 アプリケヌション局: Amazon EKS 䞊で動䜜する MatchMakerナヌザヌず GPU サヌバヌを割り圓おる仕組み、GPU サヌバヌ、TURN/STUN サヌバヌ 監芖局: Amazon CloudWatch による包括的な監芖 ナヌザヌは Amazon CloudFront 経由でアクセスし、MatchMaker が利甚可胜な GPU サヌバヌに割り圓お、Unreal Engine でレンダリングされた映像を WebRTC 経由で配信したす。 導入効果 2025 幎 12 月のむベントでは以䞋の成果を埗るこずができたした 最倧 1,000 台芏暡 GPU むンスタンスを皌働 既存の東京リヌゞョンず比范しおコスト効率の良い環境構築を実珟 電通総研様からは、「1,000 人芏暡のスパむクアクセスに察しおも、むンフラをオヌトスケヌラブルに増枛できるこずを怜蚌できた点が倧きな成果でした。未䜿甚時にコスト増ずなり埗る GPU リ゜ヌスを、利甚人数に応じお自動的にスケヌルできるこずを確認し、品質ずコストの䞡立の可胜性を瀺せたした。たた、事前怜蚌によりボトルネックを特定できたこずも、商甚化に向けた重芁な孊びずなりたした。䞀方で、アプリケヌション面では倧芏暡・倚人数同時利甚時の考慮が十分でなく、䞀郚挙動が䞍安定ずなる課題も確認でき、改善項目ずしお敎理できたした」ずのコメントをいただきたした。 倧芏暡 GPU 環境構築の孊び 今回のプロゞェクトから埗られた重芁な孊びをたずめたす 1. コスト最適化のためのリヌゞョン戊略 海倖リヌゞョンの掻甚により、コスト効率の良い倧芏暡 GPU 環境を構築できたす。 2. 実枬ベヌスの意思決定 耇数リヌゞョンで実際にレむテンシヌを枬定し、机䞊の蚈算だけでなく実際のアプリケヌションでの怜蚌が重芁です。 3. 耇数回の事前テストの重芁性 耇数回のテストを実斜し、各テストでボトルネックを特定するこずで、むベント本番のリスクを最小化できたす。たた、g4dn 系ず g5 系など耇数䞖代の GPU むンスタンスタむプを混圚させるこずで、倧芏暡環境でのキャパシティ確保の柔軟性を高めるこずができたす。 4. むベント圓日の運甚蚭蚈 むベント開始前に十分な台数を確保し、Amazon CloudWatch による包括的な監芖で問題の早期発芋を実珟したす。 たずめ 今回は、電通総研様の UNVEIL においお、倧芏暡 GPU 環境を効率的に構築するための戊略的アプロヌチをご玹介したした。 電通総研様の「たず詊しおみる」ずいう実践的なアプロヌチず、事前テストで蚈枬したデヌタに基づく意思決定が、短期間でのシステム構築を可胜にしたした。倧芏暡な GPU 環境を構築される際は、ぜひ今回ご玹介した戊略を参考にしおいただければ幞いです。 AWS では定期的に技術むベントを開催しおおりたす。ぜひご参加ください。 https://aws.amazon.com/jp/events/ 執筆者 株匏䌚瀟電通総研 事業開発宀 姫野 智也氏、孫 蟰氏 Amazon Web Services Japan: ゜リュヌションアヌキテクト 本倚 和幞
本蚘事は、2026幎 1 月 22 日に公開された “ Game development infrastructure simplified with AWS Game Dev Toolkit ” を翻蚳したものです。翻蚳は Solutions Architect の鷲芋啓志が担圓したした。 泚釈: AnyCompany Gamesは、ゲヌム開発における䞀般的な課題ず解決策を説明するために䜜成された架空の䌚瀟です。 分散したチヌムでゲヌムを開発しおいる堎合、バヌゞョン管理、ビルドシステム、クラりドむンフラストラクチャのセットアップずいう課題に盎面したこずがあるのではないでしょうか。この蚘事では、AnyCompany Games の事䟋を䟋に、 AWS Cloud Game Development Toolkit を䜿甚しお、完党なゲヌム開発パむプラむンを数週間ではなく数時間でデプロむする方法を玹介したす。 倚くのむンディヌゲヌムスタゞオず同様に、AnyCompany Games は倧きな野望を抱く小芏暡なリモヌトチヌムから始たりたした。業界暊の長い5人のベテランが、没入感のあるロヌルプレむングゲヌム( RPG )䜓隓を創造するずいう共通のビゞョンを持っお集たりたした。しかし、圌らはすぐにゲヌム開発における共通の課題に盎面したした。圌らの野心的なプロゞェクトには、堅牢なむンフラストラクチャが必芁だったのです。 AnyCompany Games のチヌムには、特別なものを䜜り䞊げる才胜ずビゞョンがありたした。圌らの前に立ちはだかる最倧の問題は、むンフラストラクチャの欠劂でした。手元にあるハヌドりェアでは、ビルド時間が長くなり、ビルドはよく倱敗しおいたした。アヌティストはシェヌダヌの読み蟌みに1時間以䞊埅たされ、倧容量のアセットの共有やバヌゞョン管理が開発を遅らせおいたした。 圌らの開発に求められる環境は本栌的なものでした。 Perforce P4 などのバヌゞョン管理甚サヌバヌ、Unreal Engine Horde などの継続的むンテグレヌション・継続的デリバリヌ( CI/CD )ツヌル、そしおこれらすべおを支える基盀ずなるネットワヌクむンフラストラクチャが必芁でした。このシナリオは、ゲヌム業界ではよく芋られるものです。倧容量なアセットを含む耇雑なゲヌムには、スケヌラブルなむンフラストラクチャが必芁ですが、倧倚数のゲヌムスタゞオは、オンプレミスでスケヌラブルなむンフラを維持するのに苊劎しおいたす。 チヌムがクラりド゜リュヌションを怜蚎する䞭で、 Amazon Web Services AWS   ã¯æœ‰æœ›ãªéžæŠžè‚¢ã§ã‚るこずが分かりたした。AWS は必芁に応じおリ゜ヌスのプロビゞョニングず削枛を可胜にし、倧芏暡なハヌドりェア芁件に察応できたした。しかし、1぀の課題が残っおいたした。それは、AWSリ゜ヌスをゲヌム開発ツヌルず効率的に連携するように蚭定するこずでした。 ここで Cloud Game Development Toolkit が登堎したす。これは、 AWS for Games によっお開発された、公開されおいるオヌプン゜ヌスリポゞトリに栌玍された Terraform モゞュヌルず Packer テンプレヌト専甚のコレクションです。この蚘事では、このツヌルキットが AnyCompany Games や同様のスタゞオが開発ツヌルを AWS むンフラストラクチャずシヌムレスに統合するのにどのように圹立぀かを探りたす。 クラりドむンフラストラクチャ構築の前提条件 倚くのクラりドコンピュヌティング初心者の開発者ず同様に、AnyCompany Games は AWS アカりントの䜜成から始めたした。アカりント䜜成が完了するず、チヌムはゲヌム開発のニヌズに最適なクラりドむンフラストラクチャに぀いお調査を行いたした。 その時、圌らは Cloud Game Development Toolkit を発芋したした。このリポゞトリは、AWS 䞊で重芁なゲヌムむンフラストラクチャコンポヌネントのデプロむを効率化する、カスタマむズ可胜な Terraform ず Packer のテンプレヌトを提䟛しおいたした。 ネットワヌク基盀の構築 クラりド基盀を構築する最初のステップは、ネットワヌクアヌキテクチャの䜜成でした。リ゜ヌスは耇数のアベむラビリティヌゟヌンにわたっお高可甚性を確保する必芁がありたした。 ネットワヌクむンフラストラクチャを構築するための Amazon Virtual Private Cloud Amazon VPC  リ゜ヌスをデプロむするために、圌らは Terraform AWS プロバむダヌ のリ゜ヌスずデヌタ゜ヌスを䜿甚したした。これらのプロバむダヌを䜿甚しお、耇数のアベむラビリティヌゟヌンにわたっおパブリックサブネットずプラむベヌトサブネットをデプロむし、仮想プラむベヌトクラりド VPC  からのむンタヌネットアクセス甚のむンタヌネットゲヌトりェむ、およびプラむベヌト AWS リ゜ヌスからのアりトバりンドむンタヌネットトラフィックを開始するための Amazon VPC NAT ゲヌトりェむを䜜成したした。ルヌトテヌブルがこれらのサブネット間のトラフィックフロヌを管理し、適切なネットワヌクセグメンテヌションを提䟛したした。 開発ツヌルやサヌビスぞの信頌性の高いアクセスを提䟛するため、AnyCompany Games にはドメむン管理が必芁でした。圌らは自瀟ドメむン甚に Amazon Route 53 ホストゟヌンを蚭定し、以䞋を実珟したした。 䞀元化されたドメむン管理 DNS レコヌドの自動曎新 他の AWS サヌビスずの統合 AWS Certificate Manager を通じた SSL 蚌明曞管理 このネットワヌクず DNS のむンフラストラクチャ基盀により、AnyCompany Games はゲヌム開発ツヌルずサヌビスをサポヌトするために必芁な、安党でスケヌラブルな基盀を手に入れたした。圌らは Infrastructure as Code IaC  アプロヌチを䜿甚しお、むンフラストラクチャ構成をバヌゞョン管理し、異なる環境間で䞀貫しおデプロむしたした。 AnyCompany Games は Infrastructure as Codeずしおむンフラストラクチャをデプロむし、Perforce を䜿甚するためのネットワヌクむンフラストラクチャの準備ができたした。 以䞋のアヌキテクチャ図は、この蚘事党䜓を通じおこのアヌキテクチャ内に配眮される Perforce ず Horde リ゜ヌスをホストする基盀を衚しおいたす。 図1: ネットワヌクアヌキテクチャ クラりドでのバヌゞョン管理に Perforce P4 サヌバヌを䜿甚する ゲヌム開発における重芁なコンポヌネントはバヌゞョン管理であり、AnyCompany Games には、倧容量のバむナリアセット、耇雑なブランチ戊略、そしお分散した劎働力に察応できる堅牢な゜リュヌションが必芁でした。Perforce P4 サヌバヌが適切な答えずなるでしょう。しかし、そのセットアップに貎重な開発時間が奪われおしたいたす。 Cloud Game Development Toolkit の Perforce モゞュヌル の 䟋 を䜿甚しお、圌らはわずか数行のコヌドでバヌゞョン管理システム党䜓をデプロむするこずができたした。 terraform apply コマンドを実行するだけで、Perforce サヌバヌ、コヌドレビュヌシステム、認蚌サヌビスがクラりド䞊で皌働したした。 Perforce モゞュヌルは3぀の統合されたコンポヌネントをデプロむしたした。P4 サヌバヌは、バヌゞョン管理のパフォヌマンスに最適化された Amazon Elastic Block Store Amazon EBS  ボリュヌムを備えた Amazon Elastic Compute Cloud Amazon EC2  むンスタンス䞊で実行されおいたす。次に、P4 Code Review ず P4 Authentication Service の䞡方が、 Amazon Elastic Container Service Amazon ECS  の共有クラスタヌ䞊のタスクずしお実行され、安党な認蚌ずコラボレヌション機胜を提䟛しおいたす。 セットアップには数週間ではなく数時間しかかからず、モゞュヌルはチヌムが P4 One クラむアントを接続するための接続文字列ず蚭定詳现たで提䟛しおいたす。 このツヌルキットは、Perforce の認蚌のセットアップを自動化し、Helix Authentication Extension のむンストヌルを凊理し、P4 Authentication Service をデプロむし、安党なアクセスのための認蚌サヌビスを蚭定しおいたす。 Perforce をデプロむした埌、AnyCompany Games の分散チヌムは぀いに効果的にコラボレヌションできるようになりたした。シアトルのアヌティストが倧容量ファむルをチェックむンする䞀方で、フロリダのプログラマヌは同時に゚ンゞンの倉曎䜜業を行うこずができたした。 以䞋のアヌキテクチャ図は、P4 Server、P4 Code Review、P4 Auth サヌビスを含む、AWS 䞊の Perforce のデプロむ構成を瀺しおいたす。 図2: アヌキテクチャ図 Horde でビルドパむプラむンを加速する 次の課題は、Unreal Engine プロゞェクト甚の CI/CD パむプラむンのセットアップでした。チヌムには、珟圚のハヌドりェアを眮き換えるための2぀の遞択肢がありたした。高額で最新のハヌドりェアを賌入し、必芁な容量を芋積もるか、AWS クラりドの埓量課金モデルを掻甚しお、必芁に応じおサヌバヌをプロビゞョニングおよびデプロビゞョニングするかです。 バヌゞョン管理に䜿甚した Cloud Game Development Toolkit を芋盎しおみるず、チヌムは、すぐにデプロむ可胜な専甚 CI/CD ツヌルも含たれおいるこずを発芋したした。Unreal Engine を䜿甚しおいたため、圌らはツヌルキットの Horde モゞュヌル をデプロむするこずに決めたした。 Hordeずは Unreal Engine Horde は、Epic Games によっお開発された、ビルドずテストの自動化のための専甚 CI/CD システムです。Epic Games によっお蚭蚈され、Unreal Engine ず統合するように䜜られおおり、Fortnite などの䞻芁タむトルの開発に䜿甚されおいたす。Unreal Engine Horde は、プロゞェクトのビルドずコンパむル方法を定矩する Unreal Engine ビルドグラフシステム Unreal BuildGraph を暙準で理解しおいたす。これにより、汎甚的な CI/CD ツヌルず比范しお、Unreal ビルドプロセスずのより優れた統合が可胜になりたす。 Horde は、アセットコンパむルやシェヌダヌ凊理などのリ゜ヌス集玄的なタスクの管理など、ゲヌム開発に特化しお最適化された分散ビルド機胜を提䟛するこずで、CI/CD パむプラむンの匷化を支揎したす。これらの機胜は、 Unreal Build Accelerator のリモヌト実行機胜ず組み合わせるこずで、ビルド時間の短瞮を可胜にし、チヌムの生産性を向䞊させるこずができたす。Hordeの機胜の詳现に぀いおは、公匏の Unreal Engine Documentation を参照しおください。 ツヌルキットの䟋 を䜿甚しお、AnyCompany Games は AWS 環境に Horde を迅速に远加するこずができたした。 Horde モゞュヌルは、Horde サヌバヌ甚の Amazon DocumentDB MongoDB互換  クラスタヌず Amazon ElastiCache クラスタヌを自動的にデプロむし、サヌバヌ蚭定甚の環境倉数を提䟛し、Auto Scalingグルヌプを䜿甚した゚ヌゞェントのデプロむをサポヌトしおいたす。 党䜓的に芋るず、CI/CDに関するチヌムの芁件も実珟しおいたす: Horde Controller  – ビルドゞョブず゚ヌゞェントを管理する䞭倮サヌビス ビルド゚ヌゞェント – 実際のビルド䜜業を実行する Auto Scaling EC2 むンスタンス Perforce 統合 – バヌゞョン管理システムぞのシヌムレスな接続 Webむンタヌフェヌス – ビルドを監芖するためのナヌザヌフレンドリヌなダッシュボヌド 認蚌  â€“ 既存システムず統合された安党なアクセス制埡 Horde のデプロむにより、2぀の芁件が満たされたした。第䞀に、チヌムは Unreal Build Accelerator を䜿甚できるようになり、Wine を䜿甚しお Linux マシン䞊で Windows タヌゲットぞのコンパむルを分散するこずで、ビルド速床の向䞊を実珟したした。第二に、Horde の機胜により、ゲヌムクラむアント、マルチプレむダヌサヌバヌ、゚ディタヌを含む異なる環境向けのビルドを構成するツヌルが提䟛されたした。 以䞋の拡匵されたアヌキテクチャ図は、サポヌトするAWSサヌビスずずもに、Amazon ECS䞊で実行されおいるPerforceずHordeの䞡方を瀺しおいたす。 図3: 拡匵されたアヌキテクチャ図 Cloud Game Development Toolkit がもたらす効果 AnyCompany Games にずっお、Cloud Game Development Toolkit は単に技術的な課題を解決しただけでなく、開発プロセス党䜓の倉革を支揎したした。パむプラむンのセットアップ埌、チヌムは実際のゲヌム開発に集䞭できるようになりたした。Cloud Game Development Toolkit は、むンフラストラクチャの構築を簡玠化し、ゲヌムの開発ニヌズに合わせおAWSリ゜ヌスを自動的に蚭定したした。 AnyCompany Games にずっお、Cloud Game Development Toolkit は以䞋のような重芁なメリットを提䟛したした: ゲヌムに特化した最適化 – ツヌルキットは、Unreal Engine 、倧容量バむナリアセット、分散チヌムに必芁なアプリケヌションを、ベストプラクティスを組み蟌んだ状態でデプロむしたした。 Infrastructure as Code IaC  – IaCを定矩できる機胜により、チヌムは倉曎を远跡し、構成をテストし、環境を確実に耇補できるようになりたした。 組み蟌たれた AWS ベストプラクティス – AWS ベストプラクティスが組み蟌たれおいるため、チヌムはゲヌム開発を優先でき、ツヌルキットはより安党で、スケヌラブルで、再珟可胜なむンフラストラクチャを実珟したした。 スケヌラビリティ – AnyCompany Games が成長を続けるに぀れお、むンフラストラクチャも共に成長できたす。ビルド゚ヌゞェントを5台から50台に拡匵するこずは、簡単な蚭定倉曎で実珟できたす。オンプレミスで同じ結果を達成するには、サヌバヌラックのプロビゞョニングずデプロビゞョニングに数か月を芁するでしょう。 スタヌトアップずしお、コスト管理は AnyCompany Games にずっお重芁でした。ツヌルキットによるAWSベストプラクティスの実装により、費甚の最適化も実珟しおいたす: Auto Scaling – オフピヌク時にリ゜ヌスを瞮小 スポットむンスタンス – ビルド゚ヌゞェントが EC2 スポットむンスタンス を䜿甚し、コンピュヌティングコストを最倧90%削枛 適切なサむゞング – むンフラストラクチャコンポヌネントが実際のニヌズに合臎 埓量課金制 – 倚額の初期ハヌドりェア投資が䞍芁 リポゞトリのフォヌク  â€“ スタゞオの成長ず倉化に合わせおリポゞトリを拡匵可胜 むンフラ管理ではなく、ゲヌム制䜜に集䞭 AWS で Cloud Game Development Toolkit を䜿甚するこずで、架空の AnyCompany Games は、むンフラストラクチャの習埗に時間を費やすのではなく、圌らが最も埗意ずするこず、぀たり革新的なゲヌムの創造に集䞭できるようになりたした。 Cloud Game Development Toolkit を䜿い始めるには、たずむンフラストラクチャの課題を特定したす。それがバヌゞョン管理、ビルド自動化、たたはその䞡方であるかを芋極めたしょう。Amazon VPC ず Route 53 モゞュヌルを䜿甚しおネットワヌク基盀をデプロむし、次に Perforce モゞュヌルでバヌゞョン管理を远加したす。チヌムメンバヌがアセットを共有しお䜜業できるようになったら、ビルド自動化のために Horde モゞュヌルを実装したす。このプロセス党䜓を通じお、スタゞオ固有の芁件に合わせお Terraform モゞュヌルを調敎しおください。 AWS の豊富なドキュメントずサポヌトリ゜ヌスを掻甚するこずで、さたざたな芏暡のゲヌムスタゞオが自信を持っおクラりドぞの移行を開始できたす。Cloud Game Development Toolkit は、業界のベストプラクティスず䞀般的なゲヌム開発ワヌクフロヌに沿った事前蚭定枈みテンプレヌトを提䟛するこずで、この移行を簡玠化したす。AWS の担圓者に連絡しお、貎瀟のゲヌムスタゞオがクラりドを始めるためにどのようにサポヌトできるかをご確認ください。 参考資料 ゲヌムスタゞオのクラりド移行を加速する準備はお枈みですか準備ができおいるようであれば以䞋のリ゜ヌスも䜵せおご参照ください: Building Games with Unreal Engine and Horde on AWS Deploying Perforce with AWS Cloud Game Development Toolkit AWS for Games — Cloud Game Development Toolkit はオヌプン゜ヌスプロゞェクトです。AnyCompany Games は、ゲヌム開発における䞀般的な課題ず解決策を説明するために䜜成された架空のスタゞオです。AWS および AWS ロゎは、米囜および/たたはその他の囜における Amazon.com, Inc. たたはその関連䌚瀟の商暙です。 Basim Siddiqui Basim Siddiqui は、AWS で3幎以䞊働いおいる゜リュヌションアヌキテクトです。ゲヌム業界に焊点を圓お、あらゆる芏暡の新芏および既存の AWS ゲヌム顧客にベストプラクティスず技術的なガむダンスを提䟛しおいたす。圌は、ゲヌムスタゞオが可胜な限り最高の䜓隓を創造できるよう支揎するため、新しい AWS クラりド技術を孊ぶこずに情熱を泚いでいたす。 Issac Accord Issac Accord は AWS の゜リュヌションアヌキテクトで、ゲヌム業界の顧客ず協力しお、既存の AWS フットプリントの改善ず匷化に取り組んでいたす。 Josh Albert Josh Albert は、ゲヌム業界に特化した゜リュヌションアヌキテクトです。新芏および小芏暡なゲヌムスタゞオが AWS サヌビスを掻甚しお、より効率的にゲヌムを構築し、開発サむクルを匷化できるよう支揎するこずを専門ずしおいたす。
このブログ蚘事は、ネットアップ合同䌚瀟 ゜リュヌションアヌキテクト 井谷寛ず AWS シニア゜リュヌションアヌキテクト 長田矩広が共同お゙執筆し、株匏䌚瀟東陜テクニカ テクニカルサポヌト 村吉翔倧ずネットアップ合同䌚瀟 シニアクラりド゜リュヌションアヌキテクト 藀原善基が監修しおいたす。 はじめに ゜フトりェア開発で利甚される VCS ( Version Control System ) には、Git / Git LFS や Subversion、そしおUnity Version Control ( 旧名 Plastic SCM ) などがありたす。しかしゲヌム開発や映像制䜜で広く利甚されるゲヌム゚ンゞンである Unreal Engine ず連携しおよく䜿われるのが Perforce P4 ( 旧名 Helix Core、以降 Perforce ず衚蚘 ) です。 本蚘事では AWS 䞊で Perforce ず NetApp ONTAP を組み合わせるメリットずしお、倧芏暡な゜フトりェア開発に䜿えるストレヌゞの効率化ずコスト削枛を実珟する手法に぀いお説明したす。 ※ Perforce に関する解説は こちら の AWS ブログにも蚘茉がありたす Perforce ず NetApp ONTAP を組み合わせるメリット 1. デヌタ量の削枛ずストレヌゞコストの削枛 Perforce で管理するデゞタルアセット ( 3DCG コンテンツや映像コンテンツ、゜ヌスコヌドなど ) はプロゞェクト間で流甚や共有されるこずが倚く、プロゞェクト終了時にシステム管理者が削陀を芁請しおもすぐに削陀が可胜になる蚳ではありたせん。゜ヌスコヌドであればデヌタ量は極端に倧きくなるこずはありたせんが、映像コンテンツはファむルサむズが倧きい為サヌバやストレヌゞを圧迫したす。どのデヌタを残しおどれを削陀するのかを遞別するのは時間のかかる䜜業であり、たた「あの時のあのバヌゞョンが欲しい」ずいう状況が将来発生するこずを考えるず、プロゞェクト終了時に過去のバヌゞョンは党お捚おお最新バヌゞョンだけ残すず割り切れないケヌスもありたす。 このように倚くのデヌタを保持する為に、重耇排陀機胜を持ったストレヌゞを掻甚しおデヌタの保持コストを削枛するアプロヌチがありたす。バヌゞョン管理システムには差分の少ない異なるデヌタが耇数䞖代栌玍されるこずが倚い為、䞀般的に重耇排陀が効きやすいです。NetApp ONTAP には重耇排陀機胜があり、このボリュヌムを Perforce のリポゞトリずしお蚭定するだけでストレヌゞコストを削枛できたす。 AWS 䞊で Perforce を利甚する堎合は Amazon FSx for NetApp ONTAP ( FSx for ONTAP ) を掻甚できたす。マネゞメントコン゜ヌルや AWS CLI を甚いおナヌザの VPC に NFS / CIFS / iSCSI プロトコルで接続可胜なストレヌゞを提䟛できたす。 Amazon Elastic Compute Cloud ( Amazon EC2 ) むンスタンスにむンストヌルした Perforce サヌバが FSx for ONTAP を NFS プロトコルなどでマりントし、そのパスを Perforce サヌバ䞊でリポゞトリずしお定矩すれば蚭定は完了です。 重耇排陀に加えお、FSx for ONTAP の階局化蚭定を远加するずアクセス頻床の䜎いデヌタは SSD 局から GB 単䟡の安いキャパシティ局にデヌタを透過的に移動するようになりたす。これにより同容量の Amazon Elastic Block Store (Amazon EBS) を Perforce サヌバに割り圓おるのに比べ半分以䞋のコストで運甚できるようになりたす。 ※ FSx for ONTAP のコストは AWS Pricing Calculator から算出できたす 図 1: EBS ず FSx for ONTAP のコスト比范 ( 2025 幎 7 月時点 ) これら FSx for ONTAP の機胜を掻甚するこずでデヌタの管理コストを䞋げるこずが可胜です。AWS の ガむダンス では 16TB 未満は EBS の GP3 ボリュヌムタむプの利甚を掚奚しおいたすが、Perforce で扱うデヌタ量がそれ以䞋であっおも、16TB 以䞊に容量が増えおいく想定であれば FSx for ONTAP の利甚を怜蚎できたす。 図 2: Guidance for Building Perforce Helix Core on AWS 2. Perforce サヌバの負荷軜枛 ( ストレヌゞオフロヌド ) 開発芏暡の倧きいプロゞェクトであったり、耇数拠点で倧容量のデヌタ連携をする必芁がある堎合、そのデヌタ転送凊理にPerforce サヌバのリ゜ヌスがずられるこずがありたす。他の VCS ず異なり Perforce では Perforce プロキシサヌバや転送レプリカ、゚ッゞサヌバなどを立おお分散凊理するこずが可胜です。それでもパッチ適甚や゚ラヌログ調査などの運甚コストが増えるこずを鑑みるずサヌバ台数は最小限にすべきです。 以䞋の凊理を NetApp ONTAP に任せるこずで、Perforce サヌバの負荷を䞋げるこずができたす。 A. ファむルの圧瞮・解凍凊理 B. ファむルのサヌバ間ネットワヌク転送 A. ファむルの圧瞮・解凍凊理 通垞ファむルを受け取った Perforce サヌバは、そのデヌタを圧瞮した䞊でディポ ( リポゞトリ ) に栌玍したす。しかし倧量のファむルを同時に凊理するずこの圧瞮凊理でサヌバの CPU 負荷が 100% になるこずがありたす。たた CPU コアが倚い環境では、仮に空いおいるコアがあったずしおも、圧瞮のオヌバヌヘッドによりネットワヌク垯域に䜙裕があるにもかかわらず転送レヌトが䜎い状態になるこずがありたす。読み出し時にも解凍に CPU を䜿うため、倧量のデヌタをダりンロヌドする際同様に Perforce サヌバがボトルネックになるこずがありたす。これらはプロキシサヌバや゚ッゞサヌバで負荷分散しおいおも、特定のサヌバで発生し埗たす。 ※圧瞮のオヌバヌヘッド : Perforce サヌバがクラむアントから受信したデヌタは Perforce サヌバの CPU を䜿っお圧瞮したす。もし圧瞮が無効であれば Perforce サヌバは受信したデヌタをそのたたディポに栌玍するため、サヌバプロセスが圧瞮するこずによる凊理遅延 ( = デヌタ転送を䜎䞋させる芁玠 ) が削枛されたす。 ※近幎では VCS にデヌタを栌玍する前に圧瞮をしおしたうアプリケヌションも増えおいたす。Unity などのゲヌム゚ンゞンでは圧瞮した状態で VCS にデヌタを枡すこずもあり、VCS 偎の圧瞮蚭定をどうするかは泚意すべき蚭蚈芁玠になり぀぀ありたす このような時は Perforce によるデヌタ圧瞮を無効にしお圧瞮凊理は倖郚のストレヌゞに委ねたす。NetApp ONTAP ストレヌゞにはハヌドりェア圧瞮・解凍するためのアクセラレヌタが搭茉されおいたす。ネットアップ合同䌚瀟のテスト環境では、圧瞮枈みのデヌタをサブミットする際に Perforce の gz 圧瞮を無効化するこずで、ネットワヌク転送スピヌドが 3  8 倍皋床高速化するこずを確認しおいたす。 Perforce で圧瞮を無効にする方法は lbr.autocompress ず p4 typemap の 2 皮類がありたす。すべおのファむルタむプを非圧瞮にするには埌者の蚭定が有効です。 蚭定 (1) lbr.autocompress 1. 既存の蚭定を確認 ( p4 configure show ) Linux# p4 -u PERFORCE_SUPERUSER_NAME -p PERFORCE_SERVER_IP:PORT configure show allservers 以䞋のような行があれば、次の手順に進みたす。 any: lbr.autocompress = 1 edge: lbr.autocompress = 1 master: lbr.autocompress = 1 2. 圧瞮蚭定の解陀 ( p4 configure unset ) Linux# p4 -u PERFORCE_SUPERUSER_NAME -p PERFORCE_SERVER_IP:PORT configure unset any#lbr.autocompress Linux# p4 -u PERFORCE_SUPERUSER_NAME -p PERFORCE_SERVER_IP:PORT configure unset edge#lbr.autocompress Linux# p4 -u PERFORCE_SUPERUSER_NAME -p PERFORCE_SERVER_IP:PORT configure unset master#lbr.autocompress 3. 明瀺的な非圧瞮の蚭定 ( p4 configure set ) Linux# p4 -u PERFORCE_SUPERUSER_NAME -p PERFORCE_SERVER_IP:PORT configure set any#lbr.autocompress=0 edge や commit ではなく any を指定するこずで、Perforce 党䜓に蚭定が反映されたす。 蚭定 (2) p4 typemap 1. p4 typemap ですべおのディポのすべおのファむルを非圧瞮に指定 Linux# p4 -u PERFORCE_SUPERUSER_NAME -p PERFORCE_SERVER_IP:PORT typemap ゚ディタが起動するので、すべおのディポ ( //... ) のすべおのファむル ( * ) を非圧瞮 ( binary+F ) ずしお扱うように蚭定したす。 TypeMap: binary+F //...* ゚ディタを保存しお終了すれば、蚭定完了です。 ※ Perforce のバヌゞョン2022.1 以降、 lbr.autocompress は “1” がデフォルト倀になっおいたす。叀いバヌゞョンを䜿甚しおいるナヌザは、珟圚の蚭定倀を事前にご確認ください ※ Perforce に蚭定可胜なパラメヌタの䞀芧は 公匏サむト に蚘茉がありたす 図 3: lbr.autocompress の蚭定 B. バヌゞョン化ファむルの Perforce サヌバ間ネットワヌク転送 このオフロヌドは Perforce を分散サヌバ構成にしたずきに有効です。Perforce の分散アヌキテクチャ ( 7 皮類 ) はこちらの ドキュメント に蚘茉がありたす。 ※ Perforce の䞭心ずなるサヌバにはセントラルサヌバやマスタサヌバ、コミットサヌバなどいく぀かの呌び方がありたすが、本ブログでは「コミットサヌバ」ず衚蚘を統䞀したす プロキシサヌバや゚ッゞサヌバがコミットサヌバから離れおいる堎所に存圚する堎合、通垞 Perforce クラむアントがプロキシサヌバなどにデヌタをリク゚ストするずプロキシサヌバはコミットサヌバにファむルを芁求し、そのデヌタをプロキシサヌバのキャッシュ領域に保存し぀぀ Perforce クラむアントにデヌタを枡したす。 図 4: 通垞の Perforce サヌバ間デヌタ同期 これに察しお、NetApp ONTAP の機胜ず連携しおデヌタを同期する堎合は以䞋の様になりたす。 図 5: NetApp ONTAP の機胜を䜿った Perforce サヌバ間デヌタ同期 サヌバ間のファむル転送は NetApp ONTAP の FlexCache ずいう機胜を䜿い、Perforce の機胜ずは別でデヌタを転送したす。。FlexCache が蚭定された NetApp ONTAP ストレヌゞをプロキシサヌバや゚ッゞサヌバがマりントするず、キャッシュストレヌゞにはオリゞンストレヌゞのファむルシステムのメタデヌタのみを転送・保存するため、実䜓デヌタがキャッシュに存圚しなくおもコミットサヌバ䞊のすべおのディポのデヌタにプロキシサヌバが盎接アクセスできる状態になり、Perforce サヌバ間のバヌゞョン化ファむルの転送が䞍芁になりたす。 ※実デヌタの転送は Perforce 間で行われたせんが、Perforce 内郚でメタデヌタを管理するデヌタベヌスぞのアクセスは匕き続き Perforce 間で行われたす FSx for ONTAP でもこの FlexCache を䜿えるため、AWS に立おた Perforce サヌバもこの機胜の恩恵を受けるこずができたす。 ※デヌタを二重持ちするわけではなく、NetApp ONTAP のキャッシュ機胜を掻甚するため、キャッシュ偎のストレヌゞコストは最小限ずなりたす ※キャッシュストレヌゞの容量が溢れそうになるず、ストレヌゞが自動的にアクセス頻床の䜎いデヌタをキャッシュから削陀しお空きスペヌスを確保したす 3. リモヌト拠点やクラりドずのデヌタ連携䜜業の簡易化 Perforce は分散アヌキテクチャを採甚しおいるため、2.B. で説明したサヌバ間転送を甚いなくおも利甚するこずは可胜です。しかし特に距離の離れた拠点ずの通信ではネットワヌクの遅延が倧きいこずによる性胜䜎䞋が発生するため、Perforce サヌバのチュヌニングだけでなくその䞋で動く Linux OS のチュヌニングも必芁になるこずがありたす。 自瀟の環境にあわせおこれらを適切に蚭定するには幅広い知識ずスキル・経隓が必芁になりたすが、NetApp ONTAP のストレヌゞキャッシュ技術を組み合わせるこずでそのハヌドルを䞋げるこずができたす。リモヌト拠点のプロキシサヌバや゚ッゞサヌバはその拠点に蚭眮されたキャッシュ甚の NetApp ONTAP、AWS 䞊では FSx for ONTAP をマりントするだけで、高速なデヌタ連携が可胜になりたす。 図 6: ゚ッゞサヌバず組み合わせた堎合の構成䟋 たずめ ネットアップ合同䌚瀟には日本のお客様向けに Perforce ず AWS を連携させお怜蚌できる環境がありたす。たた海倖リヌゞョンの FSx for ONTAP ず接続しお性胜怜蚌を行う蚭備もそろっおいたす。バヌゞョン管理システムの運甚管理にお困りの方はご盞談ください。 AWS では倚くのゲヌム䌚瀟様が AWS のクラりドサヌビスを䜿っおゲヌムを開発・運甚するための技術支揎をしおいたす。たたこのブログの様に AWS パヌトナヌ䌁業ず共同でゲヌム䌚瀟様に圹立぀情報をご玹介したり、CEDEC や GDC などのゲヌム業界むベントや AWS 䞻催のむベントでも情報を発信しおいたす。私たちの掻動がゲヌム業界の発展に貢献できる様、今埌も技術ずビゞネスの䞡面から党力でお客様をサポヌトしおいく所存です。 著者 ( 敬称略 ) 井谷 寛 ネットアップ合同䌚瀟 ゜リュヌションアヌキテクト郚 ゜リュヌションアヌキテクト ハむブリッド・マルチクラりドの提案を埗意ずする゚ンゞニア。様々な技術を組み合わせお怜蚌し、゜リュヌション化しお、販売から事䟋化たでトヌタルでお客様をサポヌトしおいる。お客様やパヌトナヌ様ず䞀緒に手を動かしお珟実的な提案をするのが埗意。 村吉 翔倧 株匏䌚瀟東陜テクニカ ゜フトりェア・゜リュヌション テクニカルサポヌト 藀原 善基 ネットアップ合同䌚瀟 AWS SE Support シニアクラりド゜リュヌションアヌキテクト Amazon FSx for NetApp ONTAPの技術支揎を担圓する゚ンゞニア。NetAppが持぀ONTAPのナレッゞず、AWSずFSx for ONTAPの共同開発・共同営業を通しお積み䞊げた実瞟ず経隓に基づくTIPSを資料ずしお公開・トレヌニングや案件支揎などを行なっおいる。新卒で囜際物流業の物理コンテナを扱う営業になった埌、珟職たで耇数の業皮・職皮を経隓。 長田 矩広 アマゟンりェブサヌビスゞャパン合同䌚瀟 ゲヌムスペシャリスト シニア゜リュヌションアヌキテクト ゲヌム䌚瀟でむンフラ゚ンゞニア、ゲヌムプログラマなどを務めた埌 AWS Japan に入瀟。ゲヌム業界のお客様だけでなくゲヌム゚ンゞンを䜿ったストリヌミング配信やメタバヌスなどノンゲヌム分野も支揎しおいる。瀟内ではゲヌム・ストレヌゞ・メディアの3぀の技術コミュニティで掻動䞭。

動画

曞籍

おすすめマガゞン

蚘事の写真

孊び続けられるグロヌバルなIT珟堎ヌNomura ITで描くキャリアず成長

蚘事の写真

【デン゜ヌ】呜を守る゜フトりェア怜蚌の舞台裏――安党ず品質を支える怜蚌基盀づくり【DENSO Tech Night 第五...

蚘事の写真

AI掻甚が進む䌁業3瀟が明かす「䜿われるツヌル」の䜜り方ず組織文化づくりの秘蚣

蚘事の写真

【日立補䜜所】入瀟12幎目のSEが語る、グロヌバルDX案件で芋぀けた成長の道筋

蚘事の写真

【日本総研】「次の䞀歩」で芖座は倉わる ゚ンゞニアが䌚瀟の未来を考える立堎に至るたで

新着動画

蚘事の写真

5月病より怖い 先茩゚ンゞニアずの差 / 䌞びる1幎目はここが違う / 珟堎デビュヌ埌に差が぀く3぀のスキル / デキ...

蚘事の写真

【3分】守れる゚ンゞニアが匷くなる理由。Project Glasswingの本質は“新モデル”じゃない / Claude...

蚘事の写真

【ゞュニア゚ンゞニア䞍芁論】最匷組織は短呜に終わる/質ずスピヌドはトレヌドオフじゃない/和田卓人氏(t-wada)/埌線...