728x90
<서론>
유니티에서 매번 프로젝트를 만들때 폴더를 일일이 생성해 주는것이 너무 귀찮아서
자주 사용하는 폴더를 자동으로 생성해주는 간단한 폴더가 있으면 좋겠다고 생각하여 만들어 보았다.
1. namespace변경하기 만약 이름이 같은 스크립트가 있으면 충돌이 발생할 수 있으므로 namespace를 변경해준다
> Edit -> ProjectSettings -> Editor -> root namespace를 변경해 준다
2. Project창에 Editor파일을 생성후 이 파일만 남긴다 -> 이름이 꼭 Editor일 필요는 없지만 명명 규칙에 의해 이 파일을 만들어 주는 것이 좋다
3. Editor파일에 위와 같이 스크립트를 하나 생성해 주고 이름은 상관 없다
그다음 스크립에 아래의 코드를 집어 넣는다.
using UnityEditor;
using static System.IO.Directory;
using static System.IO.Path;
using static UnityEngine.Application;
using static UnityEditor.AssetDatabase;
namespace PKW
{
public static class ToolsMenu
{
// 옵션창에 Tools팁이 추가된다
[MenuItem("Tools/Setup/Create Default Folders")]
public static void CreateDefaultFolders()
{
// 순서대로 root 디렉토리의 이름 그다음은 그안에 생성시킬 폴더들을 나열하면 된다
Dir("_Project", "Scripts", "Arts", "Scenes", "Prefabs", "Resources", "ScriptableObject");
Refresh();
}
public static void Dir(string root, params string[] dir)
{
string fullPath = Combine(dataPath, "_project");
foreach (string newDirectory in dir)
{
CreateDirectory(Combine(fullPath, newDirectory));
}
}
}
}
위의 스크립트에서 이름만 수정하면 간단한 클릭으로 원하는 폴더들을 생성시킬수 있다.
4. 이번 경우는 위의 작업까지만 해줘도 상관이 없지만 default 어셈블리에 종속되는 것을 방지하기위해 Assembly Definition을 설정해준다. https://docs.unity3d.com/kr/2019.4/Manual/ScriptCompilationAssemblyDefinitionFiles.html 이 문서에서 어셈블리 정의의 이점을 살펴보면 이해가 될것이다.
5. 다름작업으로 는 폴더를 패키지를 정리해둘 폴더를 생성하고 그 공간에 package.json을 만들어 준다 이때 이름은 무조건 package.json 으로 해줘야 된다
6. 위의 경로의 Tools안에 package.json을 생성해 주었으면 내용을 채울 차례이다
여기서 유의할 점은 무조건 name은 소문자로 해줘야 된다 자세한 명명 규칙은 아래 문서를 참조하면 좋다
https://docs.unity3d.com/kr/2021.3/Manual/upm-manifestPkg.html
{
"name": "com.pkw.tools",
"version": "0.0.1",
"displayName": "PKW's Tools"
}
7. 다음으로는 원래 프로젝트로 돌아가서 프로젝트 파일을 열어본다 -> Show in Explorer 클릭
8. 전부 복사한뒤 Tools 안에 전부 추가해 준다
9. 이제 최종 단계로 만든 패키지를 사용해 보면
window -> packagemanager -> addpackage from disk -> Tools -> package.json을 더블클릭하면 된다
10. 이제 Tools옵션이 생기며 이를 통해 자동으로 폴더를 생성할 수 있다.
728x90
'unity > 유니티 Tools' 카테고리의 다른 글
Unity Tool - 버튼 attribute 만들기 (0) | 2024.10.25 |
---|---|
유니티 TreeView를 활용한 Custom tool 만들기 (0) | 2024.07.30 |
유니티 폴더 및 스크립트 초기 생성 ver.2- 유니티 툴제작 (0) | 2024.07.25 |
유니티 폴더 + 파일까지 자동생성하기 (0) | 2024.07.12 |