Unity Package Structure
This commit is contained in:
40
Editor/ProjectStructureCreatorEditor.cs
Normal file
40
Editor/ProjectStructureCreatorEditor.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
Author: Syntriax <Syntriax@gmail.com>
|
||||
Creation Date: 22 September, 2022 - 12:48:16 PM UTC
|
||||
Signed by an automated program written by the author
|
||||
*/
|
||||
using UnityEditor;
|
||||
|
||||
namespace Syntriax.Editor
|
||||
{
|
||||
public class ProjectStructureCreatorEditor : EditorWindow
|
||||
{
|
||||
private const string AssetPath = "Assets";
|
||||
|
||||
[MenuItem("Syntriax/Create Project Structure", false, int.MaxValue)]
|
||||
private static void CreateStructure()
|
||||
{
|
||||
CreateSubFolder($"{AssetPath}", "Art");
|
||||
CreateSubFolder($"{AssetPath}/Art", "Animations");
|
||||
CreateSubFolder($"{AssetPath}/Art", "Materials");
|
||||
CreateSubFolder($"{AssetPath}/Art", "Models");
|
||||
CreateSubFolder($"{AssetPath}/Art", "Textures");
|
||||
CreateSubFolder($"{AssetPath}/Art", "Audio");
|
||||
CreateSubFolder($"{AssetPath}/Art/Audio", "Musics");
|
||||
CreateSubFolder($"{AssetPath}/Art/Audio", "Sounds");
|
||||
|
||||
CreateSubFolder($"{AssetPath}", "Scripts");
|
||||
|
||||
CreateSubFolder($"{AssetPath}", "Prefabs");
|
||||
CreateSubFolder($"{AssetPath}/Prefabs", "UI");
|
||||
|
||||
CreateSubFolder($"{AssetPath}", "Modules");
|
||||
}
|
||||
|
||||
private static void CreateSubFolder(string parentFolder, string subFolder)
|
||||
{
|
||||
if (!AssetDatabase.IsValidFolder($"{parentFolder}/{subFolder}"))
|
||||
AssetDatabase.CreateFolder(parentFolder, subFolder);
|
||||
}
|
||||
}
|
||||
}
|
11
Editor/ProjectStructureCreatorEditor.cs.meta
Normal file
11
Editor/ProjectStructureCreatorEditor.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f6a4f8a4159c5314e86814a765d14ec2
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
16
Editor/Syntriax.ProjectStructureCreator.Editor.asmdef
Normal file
16
Editor/Syntriax.ProjectStructureCreator.Editor.asmdef
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"name": "Syntriax.ProjectStructureCreator.Editor",
|
||||
"rootNamespace": "",
|
||||
"references": [],
|
||||
"includePlatforms": [
|
||||
"Editor"
|
||||
],
|
||||
"excludePlatforms": [],
|
||||
"allowUnsafeCode": false,
|
||||
"overrideReferences": false,
|
||||
"precompiledReferences": [],
|
||||
"autoReferenced": true,
|
||||
"defineConstraints": [],
|
||||
"versionDefines": [],
|
||||
"noEngineReferences": false
|
||||
}
|
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 34011ba7095fe4a46b1fd143973dba26
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Reference in New Issue
Block a user