Android
Android SDK セットアップ

Android での開発を始める

Android OS が実行されているデバイス向けのゲームを開発することは iOS 開発の場合と似たアプローチが必要です。しかし、すべてのデバイスに渡って、ハードウェアが標準化されておらず、そしてそのための iOS 開発では発生しない問題が出てきます。iOS バージョン同様に Unity の Android バージョンには機能的な違いがあります。

Android 開発環境をセットアップする

デバイス上で Unity ゲームをテストする前に Android 開発環境をセットアップする必要があります。これは、異なる Android プラットフォームでの Android SDK のダウンロードやインストール、またシステムに物理デバイスを追加することが含まれます(これは Windows か Mac のどちらで開発しているかによりだいぶ異なります)。このセットアップのプロセスは Android デベロッパー Web サイトで説明されていて、デバイスの製造元により追加情報があるかもしれません。これは複雑なプロセスであるため、Android デバイスやエミュレーターでコードを実行する前に完了しなければならないタスクを Android SDK セットアップ としてまとめました。しかし Android デベロッパーポータル の説明をステップごとに行うことがベストです。

Android 機能へのアクセス

Unity Android はさまざまな入力データや設定にアクセスするスクリプト API を提供しています。利用可能なクラスについては Android スクリプティング を参照してください。

ネイティブ C、C++、または Java コードをスクリプトに公開する

Unity Android により、C / C++で書かれたカスタムの関数を C# スクリプトからコールできます。( Java 関数は間接的にコールできます)ネイティブコードの関数を Unity からアクセスできるようにする方法については プラグインのページ を参照してください。

オクルージョンカリング

Unity はオクルージョンカリングをサポートしていて、これはモバイルプラットフォームにおいて特に価値ある最適化です。詳細については オクルージョンカリング を参照してください。

スプラッシュスクリーンのカスタマイズ

ゲーム起動時のスプラッシュスクリーンは、カスタマイズすることができます - 詳細は このページ を参照してください。

トラブルシューティングとバグレポート

アプリケーションがクラッシュしたり、期待通りに動かないことにはさまざまな理由があります。Android 開発トラブルシューティング によりバグの根本原因にできるかぎり到達できるようになります。もし、ガイドを見た後に、Unity 内部の問題が原因であると判断した場合、バグレポートを提出してください。提出方法の詳細については Android でクラッシュしたときのバグレポート方法 を参照してください。

Unity Android がデスクトップの Unity とどう異なるか

Strong Type の JavaScript

パフォーマンスの理由から、JavaScript でのダイナミックタイピングは Unity Android では常にオフとなっていて、あたかも #pragma strict が自動的にすべてのスクリプトに適用されたかのようになります。これはデスクトッププラットフォーム向けに開発されたプロジェクトに着手する場合は重要なことで、Android に切り替えた途端に想定外のコンパイルエラーが出るかもしれません。ダイナミックタイピングは最初に調べるべきことです。これらのエラーは、すべての変数が明示的に Type される、あるいは初期化のときに Type インターフェースであれば通常修正しやすいものです。

テクスチャの圧縮形式は ETC が推奨

Unity Android では DXT/PVRTC/ATC の各テクスチャ形式をサポートしていますが、使用する特定のデバイスでこれらの圧縮形式がサポートされていない場合、Unity は実行時にテクスチャを RGB(A) 形式に変換します。これは GPU のレンダリングスピードに影響が出るため、その代わりとして ETC 形式を使用することを推奨します。 ETC は Android でデファクトスタンダードになっている圧縮形式であり、 Android 2.0 以降の全デバイスでサポートされています。しかしながら ETC はアルファチャネルをサポートしていないので、アルファが必要な場合には、サイズ、品質、レンダリングスピードとの兼ね合いから RGBA 16-bit を選択した方が良いことがあります。

Android ディストリビューションアーカイブ( .apk )を DXT/PVRTC/ATC それぞれの形式毎に分けて作成することも可能です。また Android マーケットのフィルタリングシステムを使い、デバイス毎に正しいアーカイブを選択させることもできます( Android のビルドプロセス を参照してください)。

ムービー再生

ムービーテクスチャは Android でサポートされていませんが、フルスクリーンでのストリーミングプレイバックはスクリプト関数により提供されます。サポートされるファイル形式やスクリプト API の詳細については ムービーテクスチャAndroid がサポートするメディア形式のページ を参照してください。

Android
Android SDK セットアップ