画面サイズの固定(アスペクト比の固定)

端末間での画面サイズを簡単に吸収できるコードを見つけたのでメモ。
Awake()内などに下記を記述。

// アスペクト比の固定処理
var camera : Camera = GameObject.Find(“Main Camera”).GetComponent(Camera);

var baseAspect : float = 960.0f / 640.0f;// 固定させたい値
var nowAspect : float = (parseFloat(Screen.height) / parseFloat(Screen.width));
var changeAspect : float = 0.0;

if(baseAspect > nowAspect){
changeAspect = nowAspect / baseAspect;
camera.rect = Rect((1.0f – changeAspect) * 0.5f,0.0f,changeAspect,1.0f);
}else{
changeAspect = baseAspect / nowAspect;
camera.rect = Rect(0.0f,(1.0f – changeAspect) * 0.5f,1.0f,changeAspect);
}

Unityのアンドロイド用マニフェストの一部上書きや変更。

===========================
http://nantara.jp/blog/?p=154
===========================
※上記に記載されているAndroidのプロジェクト出力方法の設定をすると、
MyUnityProject>Temp>StagingAreaフォルダ
にAndroidのプロジェクトが出力されるようになります。この中のマニフェストファイルをコピーします。

コピーしてきたマニフェストファイルに必要な記述をして編集&保存します。

Assets>Plugins>Androidフォルダ(無ければ作る、名前は左記のとうり)に編集したマニフェストファイルを配置してください。

これで次回ビルド時からこのマニフェストファイルの内容が適用されます。

UnityのAndroidプロジェクトの出力

Unity上で、Androidのプロジェクトを出力できるようにする設定。

(1)[Edit]→[Preferences]で設定ウィンドウを表示。

(2)External Toolsのタブをクリック。

(3)Android SDK Location[c:\adt-buldlexxxxxxx/sdk(←こんな感じでADTのsdkフォルダを選択)]

(4)Android向けのプラットフォームで、実行ファイル(apk)を作成すると、MyUnityProject>Temp>StagingAreaフォルダが出来ている。これがプロジェクト一式となる。

MiniJSON.csの使い方

MiniJSON.csファイルを取得してきましょう。
※以下からコピペかダウンロード(2014年5月はあった!)
https://gist.github.com/darktable/1411710

Assetsフォルダ>Pluginsフォルダ(無ければ作る、このファイル名である必要がある。)内にMiniJSON.csファイルを配置する。

利用したいJavaScriptのコードの先頭あたりに、
import System.Collections.Generic;// パースする時などに利用する。
import MiniJSON;
とインポートしておく。

var dict = Json.Deserialize(json文字列) as Dictionary.<String,System.Object>;
var i : int = dict["キー"];// 数値と分かっているものはこんな具合。
var str : String = dict["キー"] as String;// テキストの場合はこんな具合。
var dict2 = dict["キー"] as Dictionary.<String,System.Object>;// “キー”:{xxx}の要素をDictionary化。
var c : int = dict["キー"] as List.<System.Object>).Count;// ”キー”:[配列]の場合の数を調べる。
var dict3= (dict["キー"] as List.<System.Object>)[0] as Dictionary.<String,System.Object>;// 配列の要素内の”キー”:{xxx}の要素をDictionary化。

ADT Plugin for Eclipseの更新

ADT Plugin for Eclipseを更新しないとADTがまったく使えなくなるときがある。
※Eclipse起動後にエラーメッセージが表示される。

[Window]→[Preferences]をクリックすると表示されるウィンドウ内に
(×)This Android SDK requires Android Developer Toolkit version x.x.x or above. Current version is x.x.x.vxxxxxxxxxxxxxxxxxxxxx. Please update ADT to the latest version.

などとエラー表示される場合はADT Plugin for Eclipseの更新が必要。

(1)[nstall New Software...]をクリック。

(2)Work with:[                  ]▽の項目を▽をクリックして
「Android Developer Toops Update Site – http://dl-ssl.google.com/android/eclipse/
をチョイスする。

(3)Developer Toolsにチェックして、[Next]をクリック。Review Licensesにacceptして[Finish]をクリック。

(4)インストール開始、途中確認のダイアログが出るが[ok]をクリック。Eclipseが再起動されます。[Window]→[Preferences]をみて、エラー文が消えていれば完了。