Part 1: Introduction to Tool Development
[Part 2 ~ Part 6]
Editor class에 대한 설명
Menu Item 생성 방법 설명
using UnityEditor; //헤더파일 추가
using UnityEngine; //헤더파일 추가
[MenuItem ("kkk/MakeFolders")] //클래스 안 kkk매뉴툴 -> MakeFolders 생성됨
static void DoSomething () //MakeFiolders클릭스 콘솔창에 "Test"생성
{
Debug.Log ("Test");
}
Menu Item을 이용해서 자동적으로 Folder를 생성하게 하고 있음
Part 2: Tool Folder Creator Start
static void GenerateFolders() //MakeFolder클릭시 Project창에 폴더가 생긴다
{
Debug.Log("Test");
Directory.CreateDirectory(Application.dataPath + "/ DefaultFolders");
}
Part 3: Tool Folder Creator Add Menu Item
[MenuItem("kkk/Make Folders #&_g")]
static void MakeFolder()
{
GenerateFolders();
}
static void GenerateFolders() //여러개의 폴더를 만든다.
{
//문자열 선언하여 처리 Debug.Log("Test");없어짐
string path = Application.dataPath +"/";
Directory.CreateDirectory(path + "Audio");
Directory.CreateDirectory(path + "Texture");
Directory.CreateDirectory(path + "Numbers");
}
Part 4: Tool Folder Creator First Folder
Part 5: Tool Folder Creator Complete
Part 6: Tool Folder Creator Comments Refresh
[Part 7 ~ Part 13]
Editor class / Menu Item 에 대한 설명
Menu Item을 이용해서 자동적으로 Prefab을 만들어지게 하고 있음
Part 7: Tool Prefab Creator Menu Item
using UnityEditor; //헤더파일추가
[MenuItem("kkk/Make PreFab")] //콘솔창에 PreFab이뜬다.
static void CreatePreFab()
{
Debug.Log("PreFab");
}
Part 8: Tool Prefab Creator Selection Array
//콘솔에 Cube문자열생성
[MenuItem("kkk/Make PreFab")]
static void CreatePreFab()
{
Debug.Log("PreFab");
GameObject[] selectionObject = Selection.gameObjects;
Debug.Log(selectionObject[0].name);
}
//실행후 -> FreFab(콘솔창 Cube);
Part 9: Tool Prefab Creator Create Empty Prefab
static void CreatePreFab()
{
//Debug.Log("PreFab");
GameObject[] selectionObject = Selection.gameObjects;
int objectSize = (int)Selection.gameObjects.Length;
//Debug.Log(selectionObject[0].name);
//print(objectSize);
GameObject pObject ;
for(int i = 0; i < objectSize; ++i)
{
pObject = selectionObject[i];
print (pObject.name);
//pObject = selectionObject.get(i);
// print(pObject.name);
}
}
Part 10: Tool Prefab Creator Replace Prefab
static public String StrCpy;
[MenuItem("kkk/Make PreFab")]
//public int Index = 0;
static void CreatePreFab()
{
//Debug.Log("PreFab");
GameObject[] selectionObject = Selection.gameObjects;
int objectSize = (int)Selection.gameObjects.Length;
GameObject pObject ;
for(int i = 0; i < objectSize; ++i)
{
pObject = selectionObject[i];
string name = pObject.name;
string localPath = "Assets/" + name + ".preFab";
print (localPath);
//pObject = selectionObject.get(i);
// print(pObject.name);
}
createNew(StrCpy);
}
static void createNew(String localPath)
{
GameObject obj = Selection.activeGameObject;
string name = obj.name;
UnityEngine.Object prefab = UnityEditor.PrefabUtility.CreateEmptyPrefab("Assets/" + name + ".prefab");
}
Part 11: Tool Prefab Creator Conditional
createNew(pObject,localPath);
static void createNew(GameObject selectObject,String localPath)
{
GameObject obj = Selection.activeGameObject;
string name = obj.name;
UnityEngine.Object prefab = UnityEditor.PrefabUtility.CreateEmptyPrefab("Assets/" + name + ".prefab");
EditorUtility.ReplacePrefab(selectObject, prefab);
AssetDatabase.Refresh();
}
Part 12: Tool Prefab Creator Comment Review
Part 13: Tool Prefab Creator Code Review
[Part 14 ~ Part 31]
Sprite Sheet를 이용한 애니메이션 구현하는 방법 설명 (aniSprite class 생성)
향후 2D Game Development 프로젝트에서 활용함
Part 14: Tool 2D Ani Sheet Introduction
Part 15: Tool 2D Ani Sheet Brainstorming
Part 16: Tool 2D Ani Sheet Sketch Idea
Part 17: Tool 2D Ani Sheet Research
Part 18: Tool 2D Ani Sheet Step by Step Guide
Part 19: Tool 2D Ani Sheet Pseudocode Explained
Part 20: Tool 2D Ani Sheet Sprite Ani Pseudocode
Part 21: Tool 2D Ani Sheet Step 1 - UV Offset
Part 22: Tool 2D Ani Sheet Step 2 - UV Scale
Part 23: Tool 2D Ani Sheet Step 3 - UV Row Column
Part 24: Tool 2D Ani Sheet Step 4 - UV Offset Scale
Part 25: Tool 2D Ani Sheet Step 5 - UV Offset Scale FPS
Part 26: Tool 2D Ani Sheet Step 6 - 2D Array Offset Scale FPS
Part 27: Tool 2D Ani Sheet Step 7 - Start and End Complete
Part 28: Tool 2D Ani Sheet Step 8 - Adding a Normal Map
Bump 매핑 설정
Part 29: Tool 2D Ani Sheet Step 9 - Making a Function
Part 30: Tool 2D Ani Sheet Step 10 - AniSprite Component
Part 31: Tool 2D Ani Sheet AniSprite Conclusion
[Part 32 ~ Part 48]
Part 32: Tool Time Introduction
Part 33: Tool Time Step 1 - Time
Part 34: Tool Time Step 2 - Minute, Second, Fraction
Part 35: Tool Time Step 3 - Print Time to GUI
Part 36: Tool Time Step 4 - Start Time
Part 37: Tool Time Step 5 - From Load Time
Part 38: Tool Time Step 6 - Stop Time
Part 39: Tool Time Step 7 - Continue Time
Part 40: Tool Time Step 8 - Reset Time
Part 41: Tool Time Step 9 - Count Down Time
Part 42: Tool Time Step 10 - Delay Time
Part 43: Tool Time Step 11 - Add to Time
Part 44: Tool Time Step 12 - Since Startup Time
Part 45: Tool Time Step 13 - Piece it Together
Part 46: Tool Time Step 14 - Time Polished Code
Part 47: Tool Time Step 15 - Time Tool Complete
Part 48: Tool Time Step 16 - Wrap Up and Lab Explained
[Part 49 ~ Part 52]
Part 49: External Tool - 3DS Max - Scriptspot and Area
Part 50: External Tool - 3DS Max - Sprite Renderer
Part 51: External Tool - 3DS Max - Batching and Breakables
Part 52: External Tool - 3DS Max - Biped Transfer Tool