再生中にこのパネルをC#スクリプトでオン/オフしたいと思っています。 これは可能ですか?このためのエディタAPI関数は見つかりませんでした。再生中にエディタの統計パネルをオン/オフに切り替えるにはどうすればいいですか?
0
A
答えて
2
あなたが永続的なハッカーでない限りありませんそれは、不可能です。 GameViewは内部クラスであり、エディタスクリプトではアクセスできません。しかし、ねえ、いつも良いolの反射のためのオプションがあります。この質問は適切なトラックに設定されます: http://answers.unity3d.com/questions/179775/game-window-size-from-editor-window-in-editor-mode.html
3
あなたはリフレクションで行うことができます。修正済みsimilar答え私はずっと前に作った。以下は、作業セット/統計情報の取得機能です。 Unity 5.4.0f1でテストされています。 Unityのバージョンを入れて、作業が止まったときに人々が苦情を言わないようにします。 Unityのアップデートでは、の名前をの名前に変更すると、いつでもこれを破ることができます。
GameView
EditorでユニティGameViewタブを表すために使用されるクラスを=。GetMainGameView
=現在の返す静的関数GameView
インスタンスです。m_Stats
=統計情報 を表示するかどうかを判断するためのブール変数です。
コード:
//Show/Hide stats
void showStats(bool enableStats)
{
Assembly asm = Assembly.GetAssembly(typeof(Editor));
Type type = asm.GetType("UnityEditor.GameView");
if (type != null)
{
MethodInfo gameViewFunction = type.GetMethod("GetMainGameView", BindingFlags.Static |
BindingFlags.NonPublic);
object gameViewInstance = gameViewFunction.Invoke(null, null);
FieldInfo getFieldInfo = type.GetField("m_Stats", BindingFlags.Instance |
BindingFlags.NonPublic | BindingFlags.Public);
getFieldInfo.SetValue(gameViewInstance, enableStats);
}
}
//Returns true if stats is enabled
bool statsIsEnabled()
{
Assembly asm = Assembly.GetAssembly(typeof(Editor));
Type type = asm.GetType("UnityEditor.GameView");
if (type != null)
{
MethodInfo gameViewFunction = type.GetMethod("GetMainGameView", BindingFlags.Static |
BindingFlags.NonPublic);
object gameViewInstance = gameViewFunction.Invoke(null, null);
FieldInfo getFieldInfo = type.GetField("m_Stats", BindingFlags.Instance |
BindingFlags.NonPublic | BindingFlags.Public);
return (bool)getFieldInfo.GetValue(gameViewInstance);
}
return false;
}
使用:
//Show stats
showStats(true);
//Hide stats
showStats(false);
//Read stats
bool stats = statsIsEnabled();
関連する問題
- 1. 生産時にDockerコンテナをすばやく切り替えるにはどうすればいいですか?
- 2. Cocos2dシーンを切り替えるにはどうすればいいですか?
- 3. JS .textを切り替えるにはどうすればいいですか
- 4. サーバーのセットアップ中にルートacountを切り替えるにはどうすればいいですか?
- 5. ワークシートに切り替えるにはどうすればよいですか?
- 6. フィルタを切り替えるにはどうすればよいですか?
- 7. バックグラウンドを切り替えるにはどうすればよいですか?
- 8. 実行中のアプリに意図を切り替えるにはどうすればよいですか?
- 9. トレーニング中にtf.train.Optimizersを切り替えるにはどうすればよいですか?
- 10. タブを1つ右に切り替えるようにするにはどうすればいいですか?
- 11. スパンを表示するにはhtisリンクを切り替えるにはどうすればいいですか
- 12. vuexの状態に基づいてビューを切り替えるにはどうすればいいですか?
- 13. Tensorflow:テンソルのチャンネルをRGBからBGRに切り替えるにはどうすればいいですか?
- 14. クイズをテキストタイプからアンドロイドの画像タイプに切り替えるにはどうすればいいですか?
- 15. JavaFx:別のタブへの切り替えを無効にするにはどうすればいいですか?
- 16. C#でアプリケーションのデフォルトフォームを新しいフォームに切り替えるにはどうすればよいですか?
- 17. EmacsのECBでキーボードを使ってブラウザウィンドウに切り替えるにはどうすればいいですか?
- 18. レイアウトを適切に切り替えるにはどうすればよいですか?
- 19. フォームの送信時に[ログイン]タブに切り替えるにはどうすればいいですか?
- 20. ember/handlebars - ブール値に基づいてオブジェクトクラスを切り替えるにはどうすればいいですか?
- 21. matplotlib 1.5の新しいカラーマップに切り替えるにはどうすればいいですか?
- 22. FileReaderの画像プレビューの例をVueコンポーネントに切り替えるにはどうすればいいですか?
- 23. jQueryドキュメントの準備をビューポートの要素に切り替えるにはどうすればいいですか?
- 24. WebアプリケーションをHTMLからMarkdownに切り替えるにはどうすればいいですか?
- 25. サイトをPrototypeからjQueryに切り替えるにはどうすればいいですか
- 26. VBAでソルバーを使用するときに、再計算をオフに切り替えるにはどうすればよいですか?
- 27. jqueryを使用して再生と一時停止ボタンを切り替えてオーディオを再生するにはどうすればよいですか?
- 28. セレクタの変更に基づいてコンポーネントを切り替えるにはどうすればよいですか?
- 29. フラグメントを別のフラグメントに切り替えるにはどうすればいいですか?
- 30. WebRTCのネットワークを正常に切り替えるにはどうすればいいですか?
これは良いオプションのように見えます! しかし、彼らはそれが何をするメソッドの正確な名前を見つけたのですか? 私は必要な方法の名前を(そして存在する場合)どのように見つけることができますか?方法や何かのリストはありますか? – Dmitry
ああ、私はそれに答えることはできません。私はgameViewを掘り下げたことはありません –