June 28, 2021
クラウドを利用したゲーム開発ソリューション
*本記事はPerforce Software社の以下のブログ記事(2021年6月28日時点)の参考訳です。
Cloud Game Development Solutions for Your Team
*ブログの内容は更新されている可能性があります。また、記事内のリンク先は別途記載がない限りは英語ページになります。
"インタラクティブ"かつ"ダイナミック"な体験をプレイヤーに提供できるゲームを開発するためには、まず最初に、開発チームが自分達の仕事、すなわち "制作作業" に集中できる環境を整えるところから始める必要があります。その点で、クラウドを利用したゲーム開発ソリューションは、開発者やアーティストの抱える課題を最小化し、開発工程を最適化するのに役立ちます。
クラウドを活用することでぜひ、新たなイノベーションを生み出し、インディーズからAAAスタジオまで、さまざまな規模の開発チームが直面する課題を解決してください。
クラウドを利用したゲーム開発とは?
クラウドを利用したゲーム開発では、AWS、Azure、GCPなどのクラウドサービスを使用して、ゲームの開発・リリース・運用を行います。クラウドへのデプロイは目新しいものではありませんが、ゲームエンジンの台頭に伴い、ゲーム開発におけるクラウド利用は劇的に増加しています。
クラウドの処理能力は、ゲーム開発で使用するネットワーク負荷の高いアプリケーションの実行に役立ちます。ハードウェアを増強しなくとも、クラウドを活用することで、最新かつ最高のアプリケーションを利用することができるのです。また、毎日24時間、開発を続けているのでなければ、高価なハードウェアを常備しておく必要があるでしょうか。必要な時に必要なものにだけ支払う!という手もあると思います。
クラウドを利用したゲーム開発で考慮すべき点
クラウドへのデプロイには時間がかかる場合もあるでしょう。また、クラウドを利用したゲーム開発に着手する前に、検討しておくべきことも沢山あります。
クラウドを利用したゲーム開発のメリット
まずは、メリットから見ていきましょう。
柔軟性
クラウドを利用したゲーム開発における最大のメリットは "柔軟性" です。開発チームは、必要に応じてリソースの利用を迅速に開始したり、終了したりすることができます。たったひとつのプロジェクトのために、追加リソースに投資することなく、必要なものだけを手に入れることができるのです。
拡張性
柔軟性に加えて、"拡張性" もクラウド利用の大きなメリットです。クラウドを利用することで、開発スタジオは従来のオンプレミス環境が抱えていた数々の制限から解放されます。メモリ不足や高画質データによるストレージの圧迫もわずか数クリックで解決できますし、開発者は追加のハードウェアや管理リソースなしに、ハイエンドな設備のメリットをすべて享受することができます。
高速性
もしも、開発チームの中でファイルやフィードバック待ちを強いられているメンバーがいるとしたら、最も貴重なリソースである "人によるイノベーション創造" の機会を無駄にしてしまっていることになります。クラウドを使えば、チームが作業を行う地域にサーバーを配置し、深刻な遅延の発生を軽減することが可能です。
また、ビルドサーバーを複数設置することで、メインのコミットサーバーへのトラフィックを減らすこともできます。クラウド環境に対する要件を考える際には、開発スケールが拡大しても遅延の問題に対処できる方法を持っておくことが重要になってきます。
安定性
クラウドの利用はスタジオの安定化にも繋がります。各ツールがクラウドに統合されていることで、ネットワークの監視が容易になりますし、サービスプロバイダーがクラウド環境で使用されるアプリケーションをすべて管理しているため、スタジオは常に最新の状態で作業が継続することができます。ツールが新しくなるのではなく、開発環境自体がアップグレードされていくのです。
安定性の面でのもうひとつのメリットは、カスタマー・サポートです。分からないことがあった時にサービス・プロバイダーに問い合わせができるだけでなく、問題の調査や解決に slack コミュニティのグループやスレッドを活用することもできます。色々と学びながら、継続的に開発環境を改善していくことができます。
クラウドを利用したゲーム開発の課題
クラウドへのデプロイ前に考慮するべき点
コスト
多くの開発チームにとって、クラウド利用を開始するうえでの初期費用は大きなハードルになるかもしれません。しかし、クラウドへのデプロイメントに関して言えば、長期的なハードウェアにかかるコストを考慮することが重要になってきます。サーバーがダウンしたら、どうなりますか?開発に必要な機器のモニタリングやアップグレード、新しい機器のインストールなどにどれだけの管理リソースを費やしていますか?
また、物理的なハードウェアの置き場所は?賃料は?サーバーがダウンした場合、誰が再起動しに行きますか?
クラウドの利用開始時は、オンプレミスよりもコストがかかるのは事実です。しかし、1カ月、3か月、1年と利用を続ければ、話は変わってきます。多くのスタジオでは普段、サーバーのスペースや通信帯域のわずか10%しか使用されておらず、残りの90%が必要になるのは、ビルドや予定されていたリリースの時だけです。つまり、リソースを柔軟に調整することができれば、長期的にはコスト削減に繋がります。
ファイルの送受信やビルドに要している時間を考えることも非常に重要です。開発者がフィードバックをただ待っている時間は、結果的に余計なコストが発生していることになるからです。
セキュリティ
クラウドに関して、ゲーム開発スタジオの最大の懸念事項のひとつに "セキュリティ" があります。これまでは、オンプレミスのソリューションの方がロックダウンが簡単であるとされてきました。しかし、世界が"リモート"に舵を切ったことで、開発スタジオは"セキュリティ"と"アクセシビリティ"の関係を慎重に検討する必要が出てきました。
クラウドサービスのプロバイダーからは、インフラやソースコード保護のための機能が提供されており、定期的な監査やメンテナンスにより、クラウド環境はしっかりと保護されています。どのプロバイダーを利用する場合も、IDプロバイダー(IdP)を介してのアクセス制御にはベストプラクティスを参考にしておきましょう。
クラウド環境でのゲーム開発
クラウドでのゲーム開発には、その環境と同様に、柔軟性と拡張性に優れ、ニーズに合わせて使用できるツールが必要になってきます。
バージョン管理ツールは、その基盤となるものです。クラウドでのゲーム開発では、巨大なファイルサイズ、膨大なファイル数、さらには関係する多くの関係者(多くは外注先)に対応可能なバージョン管理ツールが求められます。なぜなら、ツールの方でファイルやフィードバックの入手に時間がかかってしまっては、せっかくのクラウドへの投資を最大限に活かすことができないからです。結果として、ゲームのリリースを遅らせることにもなりかねません。
Helix Coreを活用した、クラウド環境でのゲーム開発
Perforce Software社が提供するバージョン管理ツール「Helix Core」は、ゲーム開発スタジオのトップ20社のうち19社にご利用いただいています。Helix Coreを利用することで、柔軟性や拡張性、高速性という、クラウドのあらゆるメリットを享受できることが選ばれている理由です。Helix Coreはビルドを高速化し、コードだけでなく、あらゆるデジタルアセットを管理する目的で使用されています。
クラウドを利用したゲーム開発に着手するのであれば、Helix Coreを利用することで圧倒的なパフォーマンスを実現できます。さらに、管理すべきデジタルアセットが増大しても、そのすべてを管理することができます。
セキュアなデジタルアセット管理
他のバージョン管理システムと異なり、Helix Coreはクラウド上でのゲーム開発に関連する大容量のデジタルアセットをすべて管理することができます。すべてをひとつのディポに保管することで、開発チームはプロジェクト全体の Single Source of Truth(信頼できる唯一の情報源)を手に入れることができるのです。
バイナリファイル、オーディオファイル、ビデオファイル、ソースコードなど、多種多様なデジタルアセットをまとめて、ひとつのHelix Coreディポに格納し、しっかりとバージョン管理することができます。そして、Helix Coreで管理しているアセットは、主要なゲームエンジンを使って組み合わせ、様々なプラットフォーム向けのゲームとしてリリースできます。
セキュリティに関して言うと、Helix Core内のアセットは(個々のファイル単位まで細かく)アクセス制御できるようになっています。必要な人だけのアクセスを許可するようなプロジェクトの設定も容易にできます。詳細はこちら>>
最高のパフォーマンス
Helix Coreがゲーム業界やメディア業界において広く使われているのには理由があります。Perforce Federated Architecture は、必要な場所への必要なサーバーの配置を可能にします。例えば、大容量なゲームエンジンファイルを扱うために、クラウド上にビルドサーバーを設置したり、遠隔地にいる開発グループの近くにエッジサーバーを配置して必要なファイルにすぐにアクセスできるようにすることもできます。
主な連携機能
Helix Coreは以下を含む、主要なゲームエンジンとの連携が可能です。
また、3ds Max、Maya、Photoshopなど、デジタルクリエーターが現在使用している主要なツールとも連携します。さらに、Helix Coreにはクリエイティブ向けオプションとして、無料のデスクトップクライアント「Helix Sync」が用意されています。Helix Syncを使えば、セキュリティ対策が万全とは言えないメールや DropBox に頼ることなく、デジタルアセットのすべてを正確にバージョン管理することができます。また、管理すべきファイルサイズがどれだけ増大しても、パフォーマンスを下げることなく、デジタルアセットの制作や利用を続けることが可能になります。
Helix Syncの仕組み
Helix Syncはそれひとつで、すべてが完結します。他のツールは必要ありません。デジタルアセットをドラッグ&ドロップするだけです。使い始めも簡単で、アーティストやデザイナーは意識することなく、開発者のようにバージョン管理できるようになります。
【動画】アーティスト&デザイナー向けデジタルアセットのバージョン管理方法(How to Verion Artist and Designer Assets)
- Helix Visual Client(P4V)のワークスペースに接続
- お好みのツールで、デジタルアセットを制作
- デジタルアセットをローカルフォルダーにドラッグ&ドロップして、 バージョン管理。詳細はこちら >>
すべてのデジタルアセットとソースコードがクラウド上のひとつのディポに保存されるため、必要なものを捜索する必要はなくなり、より正確なビルドが可能となります。
無料で使える、クラウドでのゲーム開発用ソフトフェア
クラウド上でのゲーム開発を最適化する準備はできたでしょうか?Perforce Software社製品はクラウドに対応しています。また、Helix Core、プロジェクト管理ツール、コードレビューツールの3つを数クリックでまとめて入手できるパッケージも無償提供中です。
Perforce Enhanced Studio Pack(Azure Marketplaceで提供中)に入っているツールを、あらかじめ構成されたクラウド環境にデプロイすれば、世界レベルの開発をすぐにでも開始できます。
開発に必要なすべてが、お好みのクラウド上に数回のクリックでデプロイ可能です。大規模なプロジェクト、大容量のファイル、そしてすべてのチームメンバーをサポートできるインフラが既に用意されており、クラウドに関する専門知識は必要ありません。
クラウドへのデプロイをぜひお試しください。
無料でPerforce製品を使ってみる