次の方法で共有


ゲームのインストールを簡略化する

Windows ではなくコンソールで実行されるゲームの主な利点の 1 つは、インストール プロセス 、またはその欠如です。 ゲームがコンソールで最初に実行されると、プレーヤーはいくつかの選択または確認を行い、ほぼすぐに再生を開始できます。 Windows へのゲームのインストールは、実質的なユーザー入力とその可能性のある長いインストール プロセスの必要性により、より複雑になります。 ただし、このインストール プロセスは、Windows ベースのゲームのプレーヤーにより良いエクスペリエンスを提供するように改善できます。 この記事では、Windows 用ゲームの開発者が全体的なエクスペリエンスを向上させるために実装できる概念について説明します。

一般的なゲームのインストール

インストールの容易さとゲームのプレイを開始するために必要な時間を比較すると、一般的な Xbox エクスペリエンスは Windows よりもはるかに優れています。 図 1 のフローチャートは、Xbox と Windows での一般的なインストール プロセスを比較するために示しています。

図 1. 一般的なインストール プロセス (Xbox と Windows)

xbox-vs-pc

ゲームのインストールの簡略化

ただし、Windows にゲームをインストールするためにユーザーに大きな要件を設定する必要はありません。 次の概念を実装することで、ユーザーが完了する必要がある手順の数を減らすことができます。これにより、インストールに必要な時間を短縮できます。

すべての質問を前もって質問する

インストールを中止する可能性があるインストール中にゲーマーが選択したすべての選択肢は、インストールを停止しない前に提供する必要があります。最悪のシナリオは、ゲームがインストール メディアから完全にコピーされた後にインストールが中止される可能性のある選択肢をゲーマーに提供することです。 これは、インストールを完了するために複数のディスクのスワップが必要な場合に特に不満を感じる可能性があります。 インストールを完了時またはその近くにロールバックする必要がないように、インストーラーを設計して、プロセスの開始時にすべての重要な質問 (EULA の同意など) を行う必要があります。

また、インストールの一環としてこれらを要求するのではなく、ユーザーに EULA に同意し、ゲームが初めて開始されたときにプロダクト キーを入力するように求めることもできます。 このシナリオでは、プロダクト キーの入力中に EULA の同意を拒否したりキャンセルしたりしても、これらのプロンプトはゲーム自体の一部であるため、インストールはロールバックされません。 これは、プレインストールまたは OEM シナリオがある場合に便利です。 ただし、管理者資格情報を必要とする初期起動時にユーザーに選択を求めないように注意してください。

特別なインストール モードを提供する

理想的には、Windows ゲーム インストーラーは、インストールの完全な自動モードとカスタム モードのみを提供し、その間は何も提供しない必要があります。

自動モードでは、機能しているインストールを作成するために絶対に必要以上の質問をしないでください。また、他のオプションを求めずに既定の設定を使用するだけです。 多くのゲーマーは、ハード ドライブ上のゲームの場所やゲームの初期設定を気にせず、できるだけ早くゲームをプレイしたいと考えています。

カスタム モードは、インストール パスやその他のインストール オプションを必要とする、または変更する必要があるパワー ユーザーのみを対象とし、既定のモードにすることはできません。

カスタム モードでは、完全インストールまたはゲームをプレイするために必要なファイルのみをインストールする最小インストールのいずれかを選択できます。 ゲーマーが最小インストールを選択した場合、ゲームはインストール オンデマンドまたはストリーミングの手法を使用して残りのインストール データを読み取ることができます。これにより、ゲームの完全なインストールが完了するのを待たずに、ゲームのプレイをすばやく開始できます。 ただし、この方法でデータをインストールすると、ゲーム エンジンの設計に影響します。 必要に応じてコンテンツをインストールする方法の詳細については、「 Install-on-Demand for Games」を参照してください。

インストールに関する質問の数を最小限に抑える

どちらのインストール モードでも、インストール中にゲーマーにプロンプトを表示する回数を制限する必要があります。 これにより、ゲームをインストールして実行するために必要な読み取りの量が減ります。 必要に応じて、インストールが完了した後にフォローアップ プロンプトが 1 つだけ表示されます。 図 1 に示す例では、インストール後のプロンプトが多すぎます。

省略可能なコンポーネントを必須コンポーネントに変更する

他の方法で実行する正当な理由がない限り、コンポーネントのいずれかを省略可能にするのではなく、すべてのコンポーネントをインストールする必要があります。 すべてのコンポーネントをインストールするだけで、ゲームがさらに遅れることなく開始され、大騒ぎします。

常に DirectX をインストールし、サイレントモードでインストールする

ゲームがビルドされた DirectX 再頒布可能パッケージをサイレント モードでインストールすることを強くお勧めします。 DirectX のインストール プロセスは、何かを更新する必要があるかどうかを確認し、更新しない場合はすばやく戻るように設計されています。 そのため、DirectX をインストールするかどうかをユーザーに確認する必要はありません。 DirectX のサイレント インストールは、インストール パッケージから次のコマンドを実行することで実行できます: dxsetup.exe /silent

DirectX をインストールするかどうかをユーザーに尋ねると、多くの問題が発生する可能性があります。 たとえば、ユーザーが最新の再頒布可能パッケージがインストールされていると想定し、DirectX のインストールをスキップすることを選択した場合などです。ゲームのインストールは、とにかく正常に続く可能性があります。 ただし、ゲームに特定のバージョンの D3DX や、スキップされたその他の更新された機能が必要な場合、ゲームは機能せず、ユーザーは非常に不満を感じるでしょう。

何らかの理由でユーザーに DirectX をインストールするかどうかを確認する必要がある場合は、ユーザーが DirectX をインストールしないことを選択した場合は、少なくともインストール プロセス全体を中止してロールバックする必要があります。 インストールをロールバックすると、ゲームの起動時に最新バージョンの DirectX がインストールされていないシステムによって発生するエラーが回避されます。

最新の DirectX SDK から再頒布可能パッケージを出荷するのではなく、ゲームがビルドされた再頒布可能パッケージを配布することが重要であることに注意してください。 最新の再頒布可能パッケージには、以前のバージョンで見つかったすべてのコンポーネントが含まれていない場合があります。

また、インストーラーをチェックして、既にインストールされている内容を確認し、システムの再起動が必要かどうかを判断することも重要です。 DirectX が最新の状態である場合、1 つの DLL のコピーを再起動する必要はありません。

EULA について考える

DirectX EULA は、ゲーム開発者の EULA に追加でき、追加する必要があります。 ユーザーが DirectX EULA ではなく開発者の EULA に同意することを許可しても意味がありません。 ユーザーは両方の ULA に同意するか、ゲームをインストールしない必要があります。 開発者がユーザーに選択肢を提供する必要があると感じた場合、ユーザーが DirectX EULA に同意しないことを選択した場合、インストール全体が失敗します。

可能であれば、法務部門に相談して、EULA を完全に回避できるかどうかを確認し、コンソール ゲームの使用など、圧縮ラップされた EULA を使用します。 これにより、EULA に同意するかどうかをユーザーに確認する必要がなくなります。 DirectX EULA は、圧縮ラップされた EULA に追加する必要があります。それ以外の場合は、DirectX EULA を表示して受け入れる必要があります。これにより、圧縮ラップされた EULA を使用する目的を破ります。

圧縮ラップされた EULA の例外の 1 つは、コンテンツ エディターです。 エディターのインストール中またはエディターの初回起動時に、すべてのエディターで EULA を表示する必要があります。 多くのゲーマーは、コンテンツの作成ではなく、再生にのみ興味を持っているので、エディターのインストールは別のプロセスにする必要があります。

インストール後に自動的に起動する

ほぼすべてのゲーマーは、彼らがそれを受け取るとすぐにゲームをプレイしたいと考えています。 既定では、インストーラーはインストールの完了後にゲームを起動する必要がありますが、カスタム インストールでは、ユーザーがオーバーライドできるチェック ボックスでこれを指定することをお勧めします。

インストールパフォーマンスを最適化する

開発者はインストールをテストして、インストールに必要な時間を決定する必要があります。 開発者は、最新バージョンのインストール ツールを使用し、インストール メディアのデータ レイアウトを最適化することで、インストール時間を短縮できます。 ほとんどの DVD 作成ツールには、開発ワークロードを増やすことなくインストール時間を短縮できるレイアウト最適化のオプションがあります。

インストール中に Windows ファイアウォールに登録する

ゲームをサーバーとして実行できる場合、またはゲーム ネットワーク モデルがピア ツー ピアである場合は、インストール時に Windows ファイアウォールにゲームを登録します。 これにより、ユーザーがネットワークにアクセスしようとしたときに、ゲームの途中でファイアウォール ダイアログがポップアップするのを防ぐことができます。 ゲームが純粋なクライアントの場合、インストーラーはファイアウォールの例外リストにゲームを追加しないでください。

詳細については、「ゲーム開発者向け Windows ファイアウォール」を参照してください。

現在のユーザーだけでなく、すべてのユーザーにインストールする

既定では、すべてのユーザーに対してゲームがインストールされます。 これにより、システム上の新しいユーザーは、ゲームをインストールしなくてもゲームをプレイできます。 すべてのユーザーのインストールがLeast-Privilegedユーザー アカウントで試行された場合、インストーラーは失敗するか、管理者パスワードの入力をユーザーに求めます。 そのため、すべてのユーザーにインストールするオプションを提供する前に、アカウントに適切な特権があるかどうかを検出してみてください。 ユーザーが現在のユーザー専用にゲームをインストールすることを選択した場合は、インストール パスをユーザーのプロファイル内の場所に変更してください。 理想的には、非ローミング アプリケーション データ内のどこか (たとえば、CSIDL_LOCAL_APPDATA のサブディレクトリ) へのパスを変更します。

簡略化されたインストールの例

次の図 2 は、Windows にゲームをインストールするための改善されたプロセスの例であり、インストール ダイアログが簡略化されています。

図 2. 簡略化されたインストール プロセス

インストール

重要な注意事項を次に示します。

  • インストール ディスクを挿入すると、インストーラーが自動的に起動します (自動実行)。
  • ゲームがコンピューターにまだインストールされていない場合は、スプラッシュ スクリーン (Web サイトのインストール、削除、表示、または終了のオプション) は表示されません。
  • [ インストール] ダイアログは、インストーラーによって表示される最初のダイアログです。
  • [ インストール ] ボタンは、自動インストール モードの実装です。
  • [オプション] ボタンは、カスタム インストール モードの実装です。
  • [キャンセル] ボタンをクリックすると、インストーラーがすぐに終了します。 インストーラーの起動はユーザーにとって簡単な操作であるため、確認を求めないでください。
  • ユーザーが EULA に同意し、有効なプロダクト キーを入力すると、インストールが開始されます。
  • インストールプロセスが完了すると、ゲームは自動的に起動するか、インストールが完了したことをユーザーに警告するダイアログを表示し、 インストール後にゲームを実行 するが選択されているかどうかに基づいて追加のオプションを提供します。
  • [ Run game]\(ゲームの実行 \) チェック ボックスには、便利な目的でゲームを起動するもう 1 つの機会が用意されています。 このオプションは常に既定では選択されていません。[インストールの完了] ダイアログは、[インストール オプション] ダイアログで [インストール後にゲームを実行する] が選択されていない場合にのみ表示されます。
  • [OK] ボタンはダイアログを閉じ、必要に応じて [実行] チェック ボックスと [Readme の表示] チェック ボックスに対してアクションを実行します。

まとめ

ゲーマーはできるだけ早くゲームをプレイしたいと考えています。 ゲーマーがやりたい最後のことは、ダイアログを通して歩き回り、彼または彼女がインストールした他のすべてのゲームと同じ選択をすることです。 これらのアイデアを実装すると、ゲーマーが Windows にゲームをインストールするのに費やす時間を短縮し、Windows ゲーム エクスペリエンスの全体的な品質を向上させることができます。