NoaDebug
このクラスを介して、NOA Debuggerの初期化や起動などの制御をスクリプトから実行できます。
API一覧
Static Methods
API | 説明 |
---|---|
Initialize() | ツールを初期化します。 |
Show(index) | ツールを起動して特定のメニューを開きます。 |
Hide() | ツールを閉じ、表示対象の専用ウィンドウを表示します。 |
SetDebuggerActive(isActive) | ツールの表示/非表示を行います。 |
SetFloatingWindowActive(isActive) | ツールの専用ウィンドウの表示/非表示を行います。 |
SetTriggerButtonActive(isActive) | ツールの起動ボタンの表示/非表示を行います。 |
EnableWorldSpaceRendering(worldCamera) | ツールをワールド座標上に表示します。 引数を省略した場合は、Canvasの描画にMainCameraを適用します。 ワールド座標上に表示している間は、専用ウィンドウと起動ボタンは表示しません。 |
DisableWorldSpaceRendering() | ツールを2Dスクリーン座標上に表示します。 |
Destroy() | ツールを破棄します。 |
Static Properties
API | 説明 |
---|---|
OnShow | ツールの起動時に発火するコールバックです。 コールバック発火時にメニューのindex値を取得できます。 |
OnHide | ツールが閉じた時に発火するコールバックです。 コールバック発火時にメニューのindex値を取得できます。 |
OnMenuChanged | ツールのメニューが切り替わった時に発火するコールバックです。 コールバック発火時に切り替わった後のメニューのindex値と独自メニューかどうかのフラグを取得できます。 |
RootTransform | ツールの最上位階層のTransformへの参照を返します。 |
IsInitialized | ツールを初期化されている場合、trueを返します。 |
IsWorldSpaceRenderingEnabled | ツールをワールド座標上に表示している場合、trueを返します。 |
IsDebuggerVisible | ツールを表示している場合、trueを返します。 |
IsTriggerButtonVisible | ツールの起動ボタンを表示している場合、trueを返します。 |
IsFloatingWindowVisible | 専用ウィンドウを表示している場合、trueを返します。 |
サンプルコード
using UnityEngine;
#if NOA_DEBUGGER
using NoaDebugger;
#endif
public class Example
{
void ExampleMethod()
{
#if NOA_DEBUGGER
// ツールの初期化を実行
NoaDebug.Initialize();
// NoaDebuggerの初期化が完了しているかどうか
bool isDebuggerInit = NoaDebug.IsInitialized;
// ツール起動時に実行したいコールバックを指定する
NoaDebug.OnShow = (index) => Debug.Log($"showIndex:{index}");
// ツールの先頭のメニューを開く
NoaDebug.Show();
// ツールを閉じた時に実行したいコールバックを指定する
NoaDebug.OnHide = (index) => Debug.Log($"hideIndex:{index}");
// ツールを閉じる
NoaDebug.Hide();
// ツールの指定したindexを開く
NoaDebug.Show(3);
// ツールのメニュー切り替わり時に実行したいコールバックを指定する
NoaDebug.OnMenuChanged = (index, isCustomMenu) => Debug.Log($"menuIndex:{index} isCustomMenu:{isCustomMenu}");
// ツールを非表示にする
NoaDebug.SetDebuggerActive(false);
// ツールを表示する
NoaDebug.SetDebuggerActive(true);
// ツールの専用ウィンドウを非表示にする
NoaDebug.SetFloatingWindowActive(false);
// ツールの専用ウィンドウを表示する
NoaDebug.SetFloatingWindowActive(true);
// ツールの起動ボタンを非表示にする
NoaDebug.SetTriggerButtonActive(false);
// ツールの起動ボタンを表示する
NoaDebug.SetTriggerButtonActive(true);
// ツールをワールド座標上に表示する
NoaDebug.EnableWorldSpaceRendering(Camera.main);
// ツールの最上位階層のTransformへの参照を取得する
Transform noaDebuggerRoot = NoaDebug.RootTransform;
// ツールの座標・回転角・スケールを変更する
// - ワールド座標上に表示している場合のみ適用されます。
// - サイズの変更はスケールで制御してください。
// - NOA Debuggerのキャンバスサイズは1136x640となっているため、以下の例ではおよそ3x1.7mの大きさとなります。
noaDebuggerRoot.localPosition = Vector3.zero;
noaDebuggerRoot.localEulerAngles = Vector3.zero;
noaDebuggerRoot.localScale = new Vector3(0.00264f, 0.00264f, 0.00264f);
// ツールのレイヤーを変更する
noaDebuggerRoot.gameObject.layer = 0;
// ツールをワールド座標上に表示しているか
bool isWorldSpace = NoaDebug.IsWorldSpaceRenderingEnabled;
// ツールを2Dスクリーン座標上に表示する
NoaDebug.DisableWorldSpaceRendering();
// ツールを表示しているか
bool IsDebuggerVisible = NoaDebug.IsDebuggerVisible;
// ツールの起動ボタンを表示しているか
bool IsTriggerButtonVisible = NoaDebug.IsTriggerButtonVisible;
// 専用ウィンドウを表示しているか
bool IsFloatingWindowVisible = NoaDebug.IsFloatingWindowVisible;
// ツールの破棄を実行
NoaDebug.Destroy();
#endif
}
}