Welcome to the repository of my Dual Grid implementation for Unity.
Available in the Unity Asset Store!
Here's what this library can do:
- 🔥 Fully working Dual Grid System: Paint a Data Tilemap and it all gets visually updated in a Render Tilemap.
- 🔄 Automatic Setup: It takes seconds to setup a dual grid system;
- 🤝 Full Unity Integration: Full integration with Unity's Tilemap and Rule Tiles;
- 🧩 Rule Tile Creation: Streamlined rule tile creation with full rule definition;
The Dual Grid Tilemap is a method to render tiles using two grids, instead of one. One grid is to indicate what each tile is and the render tilemap renders tiles with a half-tile offset in both axis.
Many people use different terms for each grid, but in this library you'll find the Data Tilemap and the Render Tilemap.
These are the big reasons (in my view) why using this approach is powerful:
- 🚀 Scalability: Create all tilemap combinations with only 16 tiles, saving a lot of work.
- ✨ Corner design flexibility: Fully round corners not possible with traditional tilemap structures.
To learn more about how this technique works, which I recommend, check my user guide, or these useful resources:
- Jess Hammer's Youtube Dual-Grid Tutorial
- Oskar Stålberg's Twitter Post
- ThinMatrix's Terrain Generation Devlog
To start using this library, check the installation guide. It has a guide on how to install and setup the library with a detailed explanation.
To start using it, I recommend the user guide. It's a page with an article on how to use the dual grid with detailed explanations.
If you're looking for quick step-by-step usage instructions, there's also a cheatsheet.
This library depends on:
This package is compatible with Unity 2021.3 or newer.
I knew about the Dual Grid system before, but seeing Jess Hammer's implementation inspired me to use my programming abilities to make my own implementation, as I couldn't find more anywhere.
Everything is open source and it's also available in the Unity Asset Store for free so anyone can readily use it without having to get it from Git.
You can reach me at [email protected] with suggestions or feedback.
Thanks for reading.