|
1 | | -# Scriptable-Object-Editor-Window-Project |
2 | | - |
| 1 | +# Unity ScriptableObject Editor |
| 2 | + |
| 3 | +A custom Unity Editor tool designed to streamline the process of viewing and editing multiple ScriptableObjects (SOs) in a single window. This editor allows you to display ScriptableObjects of the same type side-by-side for quick comparison and modification, as well as list different types of ScriptableObjects vertically in a structured layout. |
| 4 | + |
| 5 | +## Features |
| 6 | +- **Side-by-Side Editing**: View and edit multiple ScriptableObjects of the same type in a single window for faster workflows. |
| 7 | +- **Multi-Type Support**: Display different types of ScriptableObjects in a vertical list for easy access. |
| 8 | +- **Customizable Layout**: Easily switch between viewing configurations and types. |
| 9 | +- **Intuitive Interface**: Built with Unity's Editor API for a seamless integration into your Unity projects. |
| 10 | + |
| 11 | +## Installation |
| 12 | +1. Copy and paste the script located at ``Assets/Editor/Editor Windows/ScriptableObjectEditorWindow.cs`` into your Unity project's ``Assets/Editor`` folder. |
| 13 | +2. For this version, your ScriptableObjects must be placed in the ``Assets/Resources/ScriptableObjects/`` folder (the program will automatically fetch all ScriptableObjects from this directory). |
| 14 | +3. In Unity, go to the top menu and find the new "Game Configuration Editor" window. |
| 15 | +4. Open the editor window to start managing your ScriptableObjects. |
| 16 | + |
| 17 | +## Usage |
| 18 | +1. **Open the Editor Window**: |
| 19 | + - Navigate to the Unity menu and open the "Game Configuration Editor" window. |
| 20 | +2. **Select Config Types**: |
| 21 | + - Use the dropdown or selection area to choose the ScriptableObject types you want to edit. |
| 22 | +3. **Edit Side-by-Side**: |
| 23 | + - For the selected types, view multiple instances side-by-side. |
| 24 | + - Modify fields such as `int`, `string`, `vector3`, `gameObject`, `array`, `enum` etc., directly in the editor. |
| 25 | +4. **Refresh and Filter**: |
| 26 | + - Use the "Refresh" button to reload the ScriptableObjects and the "Filter" option to narrow down your selection. |
| 27 | + |
| 28 | +## Example |
| 29 | +In the screenshot below, you can see two `TestSO` ScriptableObjects (`TestConfig` and `TestConfig1`) being edited side-by-side. Fields like `number`, `text`, `position`, and references to `GameObject`, `Transform`, or `Material` are displayed for quick modification. |
| 30 | + |
| 31 | + |
| 32 | + |
| 33 | +## Contributing |
| 34 | +Feel free to fork this repository and submit pull requests with improvements or bug fixes. If you encounter any issues, please open an issue on GitHub. |
| 35 | + |
| 36 | +## License |
| 37 | +This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. |
0 commit comments