はじめに
UnityでHierarchyやConsoleウインドウを何かの拍子で画面外に移動してしまう事があります。このウインドウはUnityが独自に管理しているのでOSに準じた方法で移動する事ができないので何とかリセットする方法を調べました。
Windowsの場合
- Unityを終了します。
- レジストリエディタで
HKEY_CURRENT_USER\Software\Unity Technologies\Unity Editor 5.x
を開きそれらしいキーを探します。 - たとえばConsoleウインドウの場合はスクショのように座標とサイズの4つのキーがあるので
UnityEditor.ConsoleWindowx_h3505357846
とUnityEditor.ConsoleWindowy_h3505357847
を開いてすべての値を0で上書きします。
キー自体を削除したり桁数が異なると反映されないので注意してください。 - Unityを開くと画面の左上にウインドウが表示されます。
キー名末尾の_h3505357847
はハッシュ値なのでキー名を探す時は無視しても問題ありません。
余談ですが、自分の環境は4KディスプレイとフルHDディスプレイを混在していて4K側にUnityを配置してフルHD側に何かのウインドウを配置した際に画面外に移動してしまうことがありました。その時にフルHD側にUnityを移動してレイアウトをリセット後にUnityを再起動すると画面外に移動したウインドウの位置がリセットされました。
macOSの場合
~/Library/Preferences/com.unity3d.UnityEditor5.x.plist
にWindowsと同様の設定が保存されていますが変更しても反映されませんでした…