テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

設計

【Unity】ボタンを押したら音が出る…を、出来る限りコードを書かずに実現する

今回は、ボタンを押した際に音を出す方法を聞かれたので、ココにも書いておきます。音の制御というよりは「ボタンを押した時に音を出したい」という要望を叶える為の物です。 ボタンを押したら音が出る Audio Soureceはスピーカー、Audio Listenerは耳 Audio…

【Unity】ソースコード変更後のコンパイル時間を短く抑える

今回はC#のビルド時間を短くする方法についてです。f C#のコンパイル Pluginsフォルダにあるコードは、事前コンパイルされるのを活用 事前にDLLにコンパイルしたコードを使用する コンポーネントをDLL化すると、参照が外れる DLLの作り方 mdbファイルがあれ…

【Unity】マルチシーン編集する際に知っておきたい、複数のシーンに跨ったライトマップを操作した時の挙動について

今回はマルチシーン編集(Multi Scene Editing - MSE)による複数シーン編集とライトマップについてです。 Unity 5.3より複数のシーンを同時に編集可能になりました。これにより広大なシーンを複数のシーンに分割し段階的に構築する事や、屋根や壁といった編…

【Unity】Animatorのスパゲティなステートマシンを整理する

UnityのAnimatorはノードベースのステートマシンでアニメーションを制御する機能を持ちます。しかしながら、どんどんノードを繋げていくと昨日の記事のように複雑なグラフ図が出来上がってしまいます。 その辺りを踏まえて、自分なりに「こうすれば良かろう…

【Unity】シーンの「追加読込」と、追加読込したシーンの「破棄」

Unity 5.2よりLoadLevelAdtiveでロードしたシーンのアンロード(破棄)が可能になりました。 今までは「LoadLevelAditiveやResourcesからオブジェクトを取得」し、「SceneManagerに親オブジェクトを登録」「不 要になったら親オブジェクトごと消す」のような…

【Unity】ScriptableObjectを使用して、Scene間・Object間のデータ共有を行う

今回はScriptableObjectを利用してデータの共有を行う方法を紹介します。 この方法は「Find系が不要」かつ「事前にデータを定義する事が可能」で「Awakeが呼ばれる前にセットアップが完了」し「オブジェクト間・シーン間でデータが共有できる」といった扱い…

【Unity】ゲームの進行をコルーチンで制御する

Tanks!のプロジェクトを眺めていた所、ゲームの進行に面白い書き方をしていたのでメモします。 https://www.assetstore.unity3d.com/jp/#!/content/46209 Tanksのゲームの流れ Tanksのゲームの流れはシンプルです。 ゲームの開始時、敵の戦車と味方の戦車を…