Unity – 將 EditorWindow 顯示在游標上

有在使用雙螢幕(或者更多)的使用者, 應該都會碰到 EditorWindow.GetWindow 之後找不到視窗開去哪兒…
後來找到 Event.mousePositionGUIUtility.GUIToScreenPoint 的組合可以讓視窗的中心移動到滑鼠的位置:
var win = EditorWindow.GetWindow<MyEditowWindow>();
var rect = win.position;
rect.center = GUIUtility.GUIToScreenPoint(Event.current.mousePosition);
win.position = rect;
搭配 GUIUtility.GUIToScreenPoint 這個 API 可以有很多其他的定位方式~

Unity – AssetDatabase.CopyAsset() failed

AssetDatabase.CopyAsset() 的問題在這串也在討論這問題, 但因為這個 API 僅僅只回傳結果, 沒有其他訊息, 導致真正的原因很難被發掘出來…
該討論串是 2011 就發起, 直到寫這篇的版本 5.6.1f1 也仍舊如此.
所以只能記錄下來一些案例方便排除惹~
這類型的問題似乎也適用在類似的操作, 像是 CreateAssetMoveAsset…etc

(繼續閱讀…)