Tile-based map editor
Genre: 2D Tile-based Map Editor
Engine: Personal Engine in C++ with OpenGL
Development Time: 8 Weeks
Implemented a UI system.
Used event system to bind custom events to UI widgets.
The map can be imported and exported by using XML files.
Implemented a scrollbar widget that can move the map.
Add custom properties for different tiles.
Map with different layers
Console commands for many the features
Set and save properties for tiles.
What Went Well
UI system helps a lot.
Saving and loading with XML files is good. It is convenient to edit an XML file.
Layer system and tile system provides more potentiality to this map editor.
What Went Wrong
What I Learned
Need to create more buttons to make this editor easy to use.
Need to refine the structure for the XML files.
The structure of the UI system
Updating and rendering for layer system.
This is the first feature I implemented for this project. I took all the tiles from the tile atlas first. Then I used my UI system, created a group of buttons. I assigned texture coordinates to these buttons to show the tiles on the screen. When users click on it, the tile will be selected.
On plan features
Be able to change different tile sheets.
Add more buttons for convenience.
Toggle to show different layers.
Users can set properties for each tile on the sheet. Users can also set properties for a particular tile on the map.
Users can add different layers to a map. Users can switch the map easily by clicking the buttons in the dropdown widget.
A scrollbar widget that can help to move the map!
Saving and Loading
I used XML files to save the map. Users can save the whole map or save a single layer by using the console command. Not only the map, but all the tile properties will be saved as well.