|
1 | | -# Grid Level Editor |
| 1 | +# Grid Level Editor 🧩 |
| 2 | + |
| 3 | +A powerful, fully customized level editor made in Unity using Odin Inspector. Built to quickly prototype and manage grid-based levels both in the editor and at runtime. |
| 4 | +--- |
| 5 | + |
| 6 | +## ✨ Features |
| 7 | + |
| 8 | +### 🧱 Block Library |
| 9 | +- Create and manage block types via a dedicated editor window. |
| 10 | +- Set block ID, icon, and prefab. |
| 11 | +- Sort and filter blocks easily. |
| 12 | + |
| 13 | + |
| 14 | + |
| 15 | +### 🧭 Level Editor |
| 16 | +- Visual grid-based editor using Odin's `TableMatrix`. |
| 17 | +- Support for both rectangular and hexagonal grids. |
| 18 | +- Selection via Ctrl + LMB drag. |
| 19 | +- Context popup with block selection, rotation, clear, copy and paste. |
| 20 | +- Persistent saving as ScriptableObjects. |
| 21 | + |
| 22 | + |
| 23 | + |
| 24 | + |
| 25 | +### 🎮 Runtime Preview |
| 26 | +- Spawn blocks and tiles in the scene. |
| 27 | +- Auto-animation with DOTween. |
| 28 | +- Level switching, auto-transition every 5 seconds. |
| 29 | + |
| 30 | +<table> <tr> |
| 31 | + <td><img src="https://github.com/SinlessDevil/Grid_Level_Editor/blob/main/Images/4.png" width="300"/></td> |
| 32 | + <td><img src="https://github.com/SinlessDevil/Grid_Level_Editor/blob/main/Images/5.png" width="300"/></td> |
| 33 | + <td><img src="https://github.com/SinlessDevil/Grid_Level_Editor/blob/main/Images/6.png" width="300"/></td> |
| 34 | +</tr> </table> |
| 35 | + |
| 36 | +--- |
| 37 | + |
| 38 | +## 🎥 GIF Showcase |
| 39 | + |
| 40 | +<table> <tr> <th>Block Library</th> <th>Level Editor</th> <th>Popup Menu</th> </tr> <tr> <td><img src="https://github.com/SinlessDevil/Grid_Level_Editor/blob/main/Gifs/2.gif" width="450"/></td> <td><img src="https://github.com/SinlessDevil/Grid_Level_Editor/blob/main/Gifs/1.gif" width="450"/></td> <td><img src="https://github.com/SinlessDevil/Grid_Level_Editor/blob/main/Gifs/5.gif" width="450"/></td> </tr> <tr> <td><img src="https://github.com/SinlessDevil/Grid_Level_Editor/blob/main/Gifs/4.gif" width="450"/></td> <td><img src="https://github.com/SinlessDevil/Grid_Level_Editor/blob/main/Gifs/3.gif" width="450"/></td> <td><img src="https://github.com/SinlessDevil/Grid_Level_Editor/blob/main/Gifs/6.gif" width="450"/></td> </tr> </table> |
| 41 | + |
| 42 | +--- |
| 43 | + |
| 44 | +## 🔧 Technologies Used |
| 45 | +- Unity 2022+ |
| 46 | +- Odin Inspector |
| 47 | +- DOTween |
| 48 | + |
| 49 | +--- |
| 50 | + |
| 51 | +## 📂 Project Structure |
| 52 | +``` |
| 53 | +Assets/ |
| 54 | +├── Code/ |
| 55 | +│ ├── Infrastructure/ (Runtime Generator, Factories) |
| 56 | +│ ├── LevelEditor/ (Editor logic and windows) |
| 57 | +│ ├── StaticData/ (ScriptableObject blocks/levels) |
| 58 | +├── Resources/ |
| 59 | +│ └── StaticData/ |
| 60 | +│ ├── LevelsData/ |
| 61 | +│ └── BlockLibrary.asset |
| 62 | +``` |
0 commit comments