青空の月

PHP, Unity, C#, アプリ開発関連について。

Unityで使用しているフォルダ一覧

Unityで使っているフォルダ、UnityのAPIで取得できるパスをまとめてみた。たまにフォルダを開きたくなる時があるのでこういうEditor拡張があると便利だと思う。AssemblyPathなんて使わないと思うけど。

思いついたフォルダはリスト化してみたけど、多分こんなモンかな。

 

f:id:masa795:20130513212437j:plain

 

 

 

テキスト形式シーンファイルのフォーマット

Unity Proでは、テキスト形式で保存ができる。Editor SettingsのAsset SerializationでForce Textを選択するとテキスト形式で保存される。

f:id:masa795:20130512213231j:plain

 

テキスト形式で保存した時のSceneファイルはYAML形式になっている。公式サイトに詳しく載っている。

http://docs-jp.unity3d.com/Documentation/Manual/TextualSceneFormat.html

 

このテキスト形式を上手い事利用して、色々いじるアセットってまだ見たこと無いけど、そのうち誰かやりそうだよなぁ。どんな事が出来るのかなぁ。

 

 

再生中にスクリプト編集しちゃった時に自動で停止させる

Unity Editor上でプレイ中にスクリプトを修正してUnityにフォーカスしてビルドが始まっちゃう→エラーになるって事をよくやってしまう。

自分はスクリプトを編集したら、再生ボタンを押して最初からやるので、どうせエラーになるならプレイ中にスクリプトをいじったら自動で停止させる様に拡張してみた。

 

using UnityEngine;
using UnityEditor;

[InitializeOnLoad]
public class PlaymodeStop
{
    static PlaymodeStop()
	{
		EditorApplication.update += Update;
	}



	static void Update()
	{
		if (EditorApplication.isCompiling && EditorApplication.isPlaying)
		{
			EditorApplication.isPlaying = false;
			Debug.Log("PlaymodeStop !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ");
		}
	}

}

 

プレイ中にInspectorなどで変更した値とかも停止でリセットされるのでその点だけ注意。その辺を上手い事制御したいなら、メニューから切り替えられるようにしてEditorPrefsにOn、Offを保存するとかかなぁ。