// Init //-------------------------------------------------------------- public void Init(apEditor editor, object loadKey, apMeshGroup targetMeshGroup, FUNC_ADD_MODIFIER_RESULT funcResult) { _editor = editor; _loadKey = loadKey; _targetMeshGroup = targetMeshGroup; _funcResult = funcResult; _modifiers.Clear(); //int nMod = Enum.GetValues(typeof(apModifierBase.MODIFIER_TYPE)).Length; //어떤 Modifier를 추가할지 타입을 배열로 정리 apVersion.I.RequestAddableModifierTypes(OnAddableModifierResult); _curSelectedMod = null; }
// Show Window //-------------------------------------------------------------- public static object ShowDialog(apEditor editor, apMeshGroup targetMeshGroup, FUNC_ADD_MODIFIER_RESULT funcResult) { CloseDialog(); if (editor == null || editor._portrait == null || editor._portrait._controller == null) { return(null); } EditorWindow curWindow = EditorWindow.GetWindow(typeof(apDialog_AddModifier), true, "Select Modifier", true); apDialog_AddModifier curTool = curWindow as apDialog_AddModifier; object loadKey = new object(); if (curTool != null && curTool != s_window) { int width = 250; int height = 400; s_window = curTool; s_window.position = new Rect((editor.position.xMin + editor.position.xMax) / 2 - (width / 2), (editor.position.yMin + editor.position.yMax) / 2 - (height / 2), width, height); s_window.Init(editor, loadKey, targetMeshGroup, funcResult); return(loadKey); } else { return(null); } }