「ボクセルポリゴンな日々」 - UnityでMakersとVRをつなぐ挑戦 -

Unityプログラムで3DCGアセットデータをVRや3Dプリンターで利用可能にする最新技術や関連最新情報を紹介します。

【Unity】ちょっとTipsがたまってきたので・・・。(汗)

2014年06月23日 19時00分52秒 | プログラム開発


画像は今まで作ったうちの3人姉妹ミクさんズです。

今回のブログの話題とは全然関係ありません。


・・・・・


話は変わって、

最近開発環境をUnityに移行して作業を進めています。

その中で、自分的にいくつかUnityを利用する上での注意点というかTipsてkなものをつぶやいてましたが、

そろそろまとめておいたほうが良い気がしてきだしたのでまとめてみます。


【Unity Tips?(1)】

開発ソースコードに#defineマクロを設定して、実行環境ごとにコンパイルするソースコードを分けたい場合は、

ソースファイルの先頭で#define文を設定する必要がありますが、ソースファイルが多いと埒が明きません。

そこで、以下の項目に設定します。

(メニュー)File->Build Setting

を選択して、出てきたダイアログの中から「Player Setting」のボタンを選択します。

すると、Inspector上にPlayer Setting項目が表示されますので、

その中から目標である実行環境の下の「Scripting define symbols」項目を編集し、

定義しておきたいマクロを登録します。

するとプロジェクトのソース全体にわたって定義されるマクロが使えます。


【Unity Tips(2)】

UnityにおけるMecanimで使われるAnimatorにおいては、

個別にアニメーションを停止させる機能がありません。

そこでAnimator全体で停止させる場合はanimator.speed=0とします。

GameObjectを個別に停止させる場合は、個別ステートIDを確保の上SetLayerWeight()メソッドを利用して

タイムウエイト値を0を設定します。


【Unity Tips?(3)】

Unity4以降に新設されたMecanimのAnimatorと、

Unity3以前からあるAnimationは機能的にも構造的にも全くの別物であると心得ましょう。

私はこれを理解するのに丸1日かかりました。(^^;)


【Unity Tips?(4)】

自作カスタムシェーダーはそのままビルドファイルを作っても、ビルドファイル上では実行されません。

これは、自作カスタムシェーダーが実行ファイルに組み込まれていないため読み込みエラーを発生し、

結果シェーダーが読み込まれてない時の表示のままレンダリングされてしまうからです。


これを回避するには、メニューからEdit->Project Setting->Graphicsを選択し、

InspectorのAlways included shadersに自作シェーダーを登録します。

こうすることでビルドされる実行ファイル内に自作カスタムシェーダーが登録されます。

特に質感に影響しないカメラ用シェーダーの場合、上記の設定に気をつける必要があります。


・・・・・


以上です。Unityプログラミングに興味が無い人には全くわからないブログですみません。

また、Unity初心者に優しく教えるたぐいの内容でないことも申し訳ございません。


ということで、最後もミクさんズの画像で締めておきます。(^^;)