コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】Repaint を呼び出しても SceneTemplateAsset の Inspector の Dependencies が再描画されない場合

概要

var assembly                      = typeof( SceneTemplateAsset ).Assembly;
var type                          = assembly.GetType( "UnityEditor.SceneTemplate.SceneTemplateAssetInspectorWindow" );
var rebuildDependenciesMethodInfo = type.GetMethod( "RebuildDependencies", BindingFlags.NonPublic | BindingFlags.Instance );
var rootPropertyInfo              = type.GetProperty( "Root", BindingFlags.NonPublic | BindingFlags.Instance );
var root                          = rootPropertyInfo.GetValue( editor );

rebuildDependenciesMethodInfo.Invoke( editor, new[] { root } );

上記のコードで再描画できる

参考サイト様