「一度開発すれば、どこにでもデプロイできる」——これは、Unity が誇る素晴らしい機能です。今や、Unity のユーザーは Unity で開発したコンテンツを9つの異なったプラットフォームにデプロイできます。そしてこの数ヶ月間に私達は、さらに7つのプラットフォームをサポートすることをアナウンスいたしました。すなわち、Windows Phone 8 と Windows StoreBlackBerry 10PS4、PS Vita、PS Mobile、そして Sony の新クラウドゲームサービスです。それに加えて、Facebookのゲーマー向けに Unity ウェブプレイヤーのエクスペリエンスを向上させることを目的に、今私達は Facebook との共同作業を進めている最中です。

マルチプラットフォーム向けにコンテンツをデザインすることは、最初にいくつかの注意すべきポイントをじっくりと考慮しておけば、遙かに簡単なものとなります。そして正しいプロセスを踏むことで、Unity を使って素晴らしいゲームを様々なデバイス向けにビルドすることが簡単にできるようになります。

multiplatforms-logos
 

マルチプラットフォームに公開するための10の Tips

1. 金銭的コストに見合うか考えよう
当たり前のことのように聞こえるでしょうが、プロジェクトを始める前に、今作ろうとしているゲームをマルチプラットフォームに展開することによる金銭的な利益について、注意深く十分に検討する必要があります。大ヒットするゲームをたったひとつのプラットフォームでしか展開しないことで、簡単に得られていたはずの追加利益を見逃していることもあれば、ゲームの移植にかかる全体の費用が、単に追加のアドオンライセンスを購入し、ワンクリックでパブリッシュできるようにするためのコストを、遙かに超えてしまうこともあります。

2. あなたのゲームのターゲット層を考慮しよう
異なったプラットフォームには、その各々が様々な強い面と弱い面を抱えており、そして多様なユーザー層や文化を背景にして、多かれ少なかれ広く使われています。従って、今あなたがターゲットにしようと考えているプラットフォーム向けにデプロイするに際し、あなたが作ろうとしているゲームが基礎を置いているインタラクションやゲームプレイのタイプが、それらの層に相応しいものかどうかしっかりと検討しましょう。

3. まず最もかけ離れた2つのプラットフォームから始めよう
もし3つ以上のプラットフォーム向けにゲームを開発する計画を立てているならば、そのゲームにとって欠かすことのできない要素をまずしっかりと決めて、それらが最もスペックのかけ離れたプラットフォームでも楽しめるようにするとよいでしょう。このことをまず最初に考慮しておくことで、自動的に残りのプラットフォーム向けにコンテンツを開発することになった場合に関しても、十分にカバーしたことになります。

4. プラットフォームの陳腐化に気をつけよう
モバイルプラットフォームは恐るべき速度で変化します。その結果として、日一日と陳腐化が進むレガシーバージョンのプラットフォームのサポートが、究極的にコストとして跳ね返ってくることになるかもしれません

5. プラットフォーム依存するプラグインの仮想化をしよう
例えば、Apple のゲームセンター向けにランキングやアチーブメントを実装しようと考えているとしたら、「ランキング」をコールしたら「ゲームセンター」をコールするように仮想化したランキングマネージャを実装するようにしましょう。このようにすることで、例えば SteamWorks のランキングを後にサポート追加することが簡単になります。

6. 確実に解像度に非依存にしよう
HUD や UI、オンスクリーンのコントロールやボタンは様々なアスペクト比で描画できるようにしておきましょう。解像度ごとにデザインをやり直すことなしに、全ての UI 要素が配置できるようなモジュール構成に基づく UI レイアウトをデザインしましょう。Unity では解像度をパーセンテージで指定できることを忘れないようにしましょう。

7. 高解像度素材をビルドするようにしよう
リソースのダウンサイジングは Unity に任せてしまいましょう。こうすることで、例えば iPhone Retina ディスプレイ向けなのに低解像度の最終段階素材で再度作業せざるを得ないような目を避けることができます。加えてポスターサイズの広報用素材が必要になった時だって、泣かないで済みますしね。

8. はじめからモバイルターゲットへの最適化を考えておこう
ライティング情報をストアするためにライトプローブを使いましょう。そしてこの情報をダイナミックオブジェクトにベイクしてしまいましょう。シンプルかつ専用のシェーダーを十分なディティールのあるハイコントラストなテクスチャと共に使いましょう。オブジェクトをプーリングするテクニックを使い、プロファイラを早いうちから、まめに使うようにしましょう。

9. 追加ツールの導入を検討しよう
Owlchemy Labs の「Multiplatform toolkit」が Unity アセットストアから利用できます。その他類似のものの中で、本アセットは簡単にスケーリングしたり、プラットフォーム依存をするビルドから余分なアセットをそぎ落としたり、全体的なアセットの圧縮を管理したり実行するのに便利なエンドツーエンドのソリューションになっています。

10. コンパイラディレクティブを十分に使おう
Unity はプラットフォーム依存するコンピレーションをサポートしています。これらを使うことで、スクリプトを分割して、あるコードの部分を限定して特定プラットフォーム向けにコンパイルしたり、実行することができます。

 

本記事はUnity3D.comの記事「Broaden your reach with multiplatform publishing」を翻訳したものです。

Community News and Info, Company News and Info に Daniel Bratcher が投稿(投稿日:2013 年 5 月 15 日)