PC 開発用の GameMaker を開始する

この記事では、Microsoft Store に公開する GameMaker ゲームを準備する方法について説明します。

必要なソフトウェアをインストールする

Microsoft Game Development Kit (GDK) で GameMaker Studio 2 を使用するには、次のソフトウェアをダウンロードします:

  • Visual Studio 2022
  • June 2024 GDK 以降
  • CMake
    • CMake インストーラーがシステム パスを更新していることを確認します。 そうしないと、拡張プロジェクトで CMake が見つかりません。

ゲーム ランタイム サービス (GRTS) と PC ブートストラッパー

PC ブートストラッパーは PC ゲーム起動体験の一部であり、2022 年 5 月の GRTS リリースで導入されました。 PC ブートストラッパーは GRTS に依存し、正しく機能するために GRTS に依存します。 開発用 PC で GRTS が古くなっている場合、サインイン試行が失敗し、E_FAIL エラーが返される可能性があります。

ゲーム起動プロセスにおける役割や GRTS との対話する方法など、PC ブートストラッパーの詳細については、「PC ブートストラッパーの概要」を参照してください。

GameMaker Studio 2 をダウンロードしてインストールする

GameMaker Studio 2 がまだインストールされていない場合は、https://www.yoyogames.com からダウンロードしてインストールします。

GameMaker Studio 2 GDK 拡張機能を設定する

GameMaker Studio 2 で GDK を使用するには、GameMaker Studio 2 GDK 拡張機能が必要です。 拡張機能のソース コードとセットアップ手順については、https://github.com/YoYoGames/GMEXT-GDK を参照してください。

リポジトリのルートにある README ファイルに記載されている手順に従います。 これらの手順により、GameMaker Studio 2 GDK 拡張機能をセットアップしてビルドし、Xbox サービスと機能を GameMaker プロジェクトに統合できるようになります。

GDKExtension リポジトリを複製するときは、--recurse-submodules スイッチを使用してサブモジュールを含めます。 そうしないと、ソリューションをビルドするときに必要なファイルが見つかりません。

拡張機能の詳細については、https://github.com/YoYoGames/GMEXT-GDK/wiki を参照してください。

GDK 拡張機能をビルドする

リポジトリのルートにある Readme ファイルの手順を使用して、Visual Studio 2022 で拡張機能をビルドします。 GDKExtension.sln ファイルが必要です (<project_root>/source/GDKExtension_gml/extensions/GDKExtension/gdkextension_windows/GDKExtension.sln)。 ビルド手順の詳細については、リポジトリのルートにある Readme ファイルのビルド手順を参照してください。

Microsoft パートナー センターで製品を作成する

パートナー センターで Xbox サービス対応製品を作成するには、「パートナー センターでアプリまたはゲームをセットアップする」を参照してください。 製品を作成したら、Xbox サービスをテストするか、Microsoft Store にゲームを公開できます。

GDK 拡張機能をテストする

GDK 拡張機能リポジトリには、GDK プラグインを GameMaker Studio 2 プロジェクトと統合する方法を示すサンプル プロジェクトが含まれています。 サンプル プロジェクト ファイルは source/GDKExtension_gml/GDKExtension.yyp にあります。

GameMaker (ビルド>実行可能ファイルの作成) でサンプル プロジェクトをビルドする場合は、[Zip としてパッケージ化] を選択して、アプリのインストールに必要な MSIXVC パッケージを生成します。 [インストーラーとしてパッケージ化] を選択すると、ビルドで MSIXVC パッケージは生成されません。 アプリは Xbox サービスにアクセスできません。

ビルドが完了すると、作成された .zip ファイルとそのサブディレクトリを示すエクスプローラー ウィンドウが開きます。 サブディレクトリはパッケージと同じ名前で、MSIXVC ファイルが含まれています。

さらに、GameMaker Studio 2 の出力ウィンドウには、次の例に示すように、MSIXVC パッケージの完全な出力パスを含むコード行が表示されます。

C:\Users\your-user-name\XboxDeveloperExperienceTe.GamePassSampleGame_1.0.0.0_x64__pmsd8ndztetqc-pkg

サンプル プロジェクトを実行して Xbox サービスにアクセスできるようにするには、パッケージの名前を持つ wdapp install を使用してパッケージをインストールします。

wdapp install XboxDeveloperExperienceTe.GamePassSampleGame_1.0.0.0_x64__pmsd8ndztetqc.msixvc

パッケージがインストールされたら、[スタート] ボタンを使用して起動します。

MicrosoftGame.config を更新する

サンプル プロジェクトでは、既定の MicrosoftGame.config ファイルが使用されます。 プロジェクトのパートナー センター構成情報を使用してサンプルまたは自身の GameMaker Studio 2 プロジェクトをテストするには、MicrosoftGame.Config ファイルを更新する必要があります。

サンプルの .config ファイルは、source/GDKExtension_gml/datafiles/MicrosoftGame.config にあります。

Xbox サービス機能を使用するには、次の手順でプロジェクトの MicrosoftGame.config をパートナー センターのプロジェクト ID 詳細に更新します。

  1. パートナー センター ダッシュ ボードに移動します。
  2. 製品の一覧からゲームを選択します。
  3. [ゲームの設定] タブを選択し、[Identity details] を選択します。
  4. [Show Details] を選択して、[Identity details] セクションを展開します。
  5. [ID の詳細] セクションのテーブルから次の値を使用します。 これらの値をパートナー センターから MicrosoftGame.config の対応する要素とフィールドにコピーします。
パートナー センターに表示される名前 MicrosoftGame.config
Xbox タイトル ID TitleId
Package/Identity/Name ID->名前
Package/Identity/Publisher ID->発行元
Xbox サービス > Xbox 設定 > MSAAppId MSAAppId

パートナー センターの ID 詳細は、次の例のように MicrosoftGame.config ファイルの内容を決定します。

パートナー センターに表示される名前 値の例
Xbox タイトル ID 64353034
Package/Identity/Name 41336MicrosoftATG.Achievements2017Redux
Package/Identity/Publisher CN=A4954634-DF4B-47C7-AB70-D3215D246AF1
Xbox サービス > Xbox 設定 > MSAAppId 0000000000000000

MicrosoftGame.config ファイルの抜粋の例

<?xml version="1.0" encoding="utf-8"?>
<Game configVersion="1">

  <Identity Name='41336MicrosoftATG.Achievements2017Redux' Version="1.1.0.0" Publisher='CN=A4954634-DF4B-47C7-AB70-D3215D246AF1' />


  <TitleId>64353034</TitleId>
  <MSAAppId>0000000000000000</MSAAppId>
  
  <ExecutableList>
    <Executable Name="Achievements2017_desktop.exe"
                TargetDeviceFamily="PC"
                Id="Game"/>
  </ExecutableList>
  
  <ShellVisuals DefaultDisplayName="Achievements2017 Desktop Sample"
                PublisherDisplayName="Xbox Advanced Technology Group"
                StoreLogo="Assets\StoreLogo.png"
                Square150x150Logo="Assets\Logo.png"
                Square44x44Logo="Assets\SmallLogo.png"
                Square480x480Logo="Assets\LargeLogo.png"
                Description="Achievements2017"
                ForegroundText="dark"
                BackgroundColor="#000000"
                SplashScreenImage="Assets\SplashScreen.png"/>
</Game>

MicrosoftGame.config の概要とその値に関する情報については、「MicrosoftGame.config の概要」を参照してください。

GDK 拡張機能を独自のプロジェクトに統合する

少なくとも、プロジェクトは次の関数を呼び出して GDK と統合させる必要があります。

  • GDK を初期化するには、gdk_init を呼び出します。 他の GDK 機能を使用する前に、gdk_init を呼び出す必要があります。
  • GDK がアクティブな間は、フレームごとに 1 回 gdk_update を呼び出します。
  • プロジェクト完了後、GDK 機能が不要になった場合は、gdk_quit を呼び出して GDK をクリーンアップします。

さらに、GDK 拡張機能には、GDK 機能へのアクセスを提供する次のモジュールがあります。

  • 基本モジュール: プレイヤーのユーザー/アカウントの選択を制御する関数のセットを提供します
  • ストレージ モジュール: ユーザーに関連付けられているデータの読み込みと保存を制御する関数のセットを提供します。
  • Xbox サービス モジュール: 統計情報、ランキング、実績、リッチ プレゼンスなど、Xbox サービスの機能を使用する関数を提供します。
  • アプリ内購入モジュール: GDK を介して GameMaker プロジェクトと Microsoft Store コマース システムを統合する機能を提供します。

拡張機能リポジトリに含まれるガイドでは、GDK 拡張機能 API セクションの GDK 関数に関するドキュメントがあります。 ガイドは、.pdf ファイルとして、source/GDKExtension_gml/datafiles/GDK_Extension_Documentation.pdf です。

ゲームでの Xbox サービスをテストする

ゲームで Xbox サービスの機能 (実績など) をテストするには、サンドボックスを使用し、そのサンドボックスにアクセスできるテスト アカウントを使用します。

テスト アカウントの作成

ゲーム内で Xbox サービス機能をテストするには、開発サンドボックスにアクセスできるテスト アカウントを作成する必要があります。 手順については、「テスト アカウントの作成」を参照してください。

サンドボックスを切り替える

  1. パートナー センターに移動します。
  2. サンドボックス ID を見つけるには、[Xbox サービス] を選択し、[ゲームプレイ設定] を選択します。

    注意

    サンドボックス ID は、ゲームプレイ設定ページの最初のタブに表示されます。 "ABCDEF.0" のような名前を使用します。

  3. [スタート] ボタンを選択します。
  4. Microsoft GDK Command Prompts と入力し、Enter を選びます。
  5. 最初のコマンド プロンプトを開き、XblPCSandbox.exe <サンドボックス ID> を入力します。
    1. コマンド プロンプトで複数のアプリが起動したら、テスト アカウントを使用して Xbox アプリにサインインします。

正常にサインインできる場合は、サンドボックスでテストを開始できます。

サンドボックスの詳細については、「Xbox サービスのサンドボックスの概要」を参照してください。

ゲームを公開する

ゲームを公開する準備をするには、次のことを確認します:

  • GameMaker Studio 2 で [Zip としてパッケージ化] を使用して MSIXVC パッケージを作成します。
  • パートナー センターで作成したプロジェクトの正しい値を使用して、MicrosoftGame.config ファイルを更新します。
  • GDK 拡張機能をゲームに統合します。

この記事の手順を完了すると、ゲームを公開する準備が整っています。 提出するには、パートナー センターに移動し、UI の指示に従います。