開発時に便利なUnityのTips

今週はUnity開発時のTipsをいくつか。

取り込んだ画像の画質が悪い

f:id:cflat-inc:20140905134439p:plain

Aniso Levelの引き上げることで、急な角度でテクスチャを見る場合にテクスチャの品質を向上させる。

ついでにpng等透過画像の場合はAlpha is TransparencyのチェックをONにする。 この項目をチェックすると透過付きのテクスチャの透過と非透過部分との境界に発生するノイズが低減される。

NGUIのレイアウト

f:id:cflat-inc:20140905134456p:plain

NGUIはバージョンアップ毎に仕様が変わって大変ですが。

最初はFlexibleになってたはず。

これをConstrainedに変更しておけば、多少画面サイズが変わってもある程度いい感じにスケーリングされる。 http://www.tasharen.com/forum/index.php?topic=6710.0

GoogleAnalytics連携

ここ記事を参考にunity3d-google-analyticsを採用するのであれば、多少改造する必要ある場合がありそうなので、それについてちらほら。

http://qiita.com/yimajo/items/0861a79e741cbd463179

イベントにカスタムディメンションを追加したければ、CGoogleAnalytics.csを下記のようにコード変更。

public void TrackEvent(string _category,string _action, string _label, int _value){
        WWWForm postParams = new WWWForm();

        AddDefaultFields(ref postParams);

        postParams.AddField("t","event");
        postParams.AddField("ec",_category);
        postParams.AddField("el",_label);
        postParams.AddField("ea",_action);
        postParams.AddField("ev",_value);
        postParams.AddField("cd1",m_customerId);

        MakeRequest(postParams);
}

複数シーンをまたぐならCGoogleAnalytics.csにこれを追加。後は最初のシーンのみにGameObjectをぶちこんでおけばよい。

void Awake()
{
    DontDestroyOnLoad(this);
}