こんにちは、阿久津です。海外の報道によりますと、XNAやDirextXの元開発者であるPromit Roy(プロミット・ロイ)氏のブログ記事で、XNA Game Studioの提供を停止するという電子メールが届いたことを明かしました。同メールによりますと、Microsoftは「XNA Game Studioはすでに活発な状態ではないため、2014年の4月1日にXNAを終了させる」と記載されているとのこと。

Roy氏は自身のブログで「Direct3D以外のDirectXコンポーネント(DirectInputやDirectSound、DirectShowなど)は死に体」「Direct3DはWindowsコアに吸収される」と述べつつ、DirectXが当初掲げていたものと異なる方向に進みあることに言及しています。また、追加記事では、「MicrosoftはMVPだけでなく公の場で(XNAの終了を)明確に伝える必要がある」とも述べました。

そもそもXNAはMicrosoftによるゲーム開発ツールとして、2006年12月からリリースされてきた統合開発環境です。Windows OSやXbox 360、Windows Phone 7などを対象にしていますが、2010年9月にリリースされたXNA Game Studio 4.0は、Direct 10以降のインターフェースをある程度サポートしながらも、内部的なDirect3D 9のラッパーとなるため、Direct3D 10の機能は使用できません。

同氏が述べているように、DirectXコンポーネントの多くは開発停止もしくは別のSDKに吸収されました。Direct3DもWindows SDKに統合され、Direct3D APIを使用する際は「Windows SDK for Windows 8」を用いることになります。このような流れを踏まえるとXNAを終了させるのは自然の流れでしょう。個人的には次世代Xboxの登場を控え、「新たなフレームワークが登場するのではないか」と期待していますが、次世代XboxもXNAの終了も正式発表されていません。ゲーム開発者は今後の動向に注目してください。

さて、以前の記事で環境により、スタート画面に並ぶタイルのピクセルサイズが異なるということを述べました。筆者が併用しているThinkPad X201sのディスプレイは1440×900ピクセルですが、そこに並ぶタイルは四行。タイルサイズが120×120ピクセルではなく、150×150ピクセルとなってしまいます。

別のコンピューターで解像度を変更し、表示可能なタイル数を指定するHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell\GridキーのDWORD値「Layout_AvailableHeightCells(初期値)」および「Layout_MaximumAvailableHeightCells(最大値)」を確認しますと、図02にようになりました。この調査結果を踏まえれば、ThinkPad X201sはタイルが五行まで表示されなければなりませんが、結果は図01のとおりです(図01~02)。

図01 初期のスタート画面。タイルサイズが150×150ピクセルとなります

図02 解像度によって異なるタイル数

このロジックを正しく動作させるには、ディスプレイサイズに対して行われるスケーリング(表示領域の広さに合わせて自動的に拡大・縮小する仕組み)の設定が必要となります。そこで今週は、ディスプレイのスケーリングを正しく動作させるチューニングをお届けしましょう。

1. 管理者権限でレジストリエディターを起動します。
2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Scalingキーを開きます(ない場合は作成します)。
3. 文字列値「MonitorSize」を作成し、値を「15」など実際のディスプレイサイズより大きい数値を入力します。
4. レジストリエディターを終了し、コンピューターを再起動します。

これでチューニングが終了しました(図03~11)。

図03 [Win]+[R]キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「regedit」と入力して<OK>ボタンをクリックします

図04 レジストリエディターが起動したら、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorerまでキーをたどって開きます

図05 Explorerキーを右クリックし、メニューから<新規>→<キー>とクリックします

図06 キー名を「新しいキー #1」から「Scaling」に変更します

図07 Scalingキーの右ペインを右クリックし、メニューから<新規>→<文字列値>とクリックします

図08 値名を「新しい値 #1」から「MonitorSize」に変更します

図09 文字列値「MonitorSize」をダブルクリックし、値のデータを「15」に変更して<OK>ボタンをクリックします

図10 操作を終えたら、<×>ボタンをクリックしてレジストリエディターを終了させます

図11 [Win]+[I]キーを押し、設定チャームの<電源>ボタンをクリック。メニューから<再起動>を選択して、コンピューターを再起動してください

それでは結果を確認してみましょう。Windows 8のスタート画面に並ぶタイルの行数がディスプレイの解像度に即していれば成功です。前述したコンピューターのディスプレイは12.1インチですが、ステップ03で設定する値を「12.1」とした場合、変化は生じませんでした。そのため、実際のディスプレイよりも大きい数値を用いてください(図12)。

図12 こちらがチューニング後のスタート画面。図01と見比べてください

なお、動作に異常が見られる場合は、文字列値「MonitorSize」を削除するか、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Scalingキー自体を削除して様子を見ることをお勧めします。

それでは、また次号でお会いしましょう。

阿久津良和(Cactus