Glassix 2 - Dev Log #4 - City map (Patreon)
Content
Hi everybody,
So... I've been trying to shoot a video to show off my work on the Glassix 2 city interface but god, don't I like my voice lol. Plus, I've struggled for 2 hours trying to organize my thoughts and explanations only to end up with a mess, so I decided to just show a soundless video of what's done then detail everything in the post instead.
This post focus on 2 new main entities in the game: The city maps and the infrastructure models, both are using XML files to get information and all of it can be easily modded so that in the long run, players can create their own cities and add their own models to the game.
City map
Glassix 2 cities are generated through a XML file in which creators will be able to specify the name, size, textures and infrastructures use in the city.
Size are given in meters and everything is scaled to 1/5 of the values, meaning one cell in Glassix 2 is 5m by 5m, so 25 square meters. This makes it easier for calculations.
Textures are simple JPG files applied on the ground which can are tiled depending on the size you choose. Some material properties are also exposed so that metallic, smoothness and bump strength values can be modified enhancing the result.
In the above example, we have a grassy texture but we could easily change it to a snowy texture and add some snowy weather to give it a different feeling.
Then you simply place buildings in the city wherever you want and connect everything through roads using a grid system.
The city comes with a weather and day/night cycle.
Of course, editing XML files is a real pain in the ass so the game will come with a full city editor so players don't have to use XML at all to create their own cities and will be able to share their cities by simply sharing the generated XML file.
Infrastructures
Cities will be filled with different structures which are all low poly 3D models and are all loaded externally. Meaning modders will be able to add their own models to the game easily, drop it in your mod folder, configure the XML file and you're good to go.
The most common 3D extensions are working with the game: FBX, OBJ, GLTF2, STL, PLY, 3MF, and ZIP.
The XML file will tell the game how big the building is, its pivot point needed for rotation and the type of building to know what the game can allow player to do with it, such as it being a residential building, for offices or commerce, etc...
Then the designs part allow creators to use different designs for the same model.
Glassix 2 uses a two layers texture system, meaning you first choose the wall texture then add a detail texture over the first layer, in our examples: windows and door.
For example, here is the default design for the brown building. Creators will be able to specify which textures and which material properties to apply at runtime. Which give this result.
But by simply creating a child design based on this default design, we can change the colors, textures, tiling, offset or material properties, to give this same model a different feeling.
And there you have your building with a new design.
I only changed the color here but you can basically change the windows or door style and more.
Designs also allow creators to specify emissive texture so that the building can shine during the night.
Even better, it's possible to add lights directly, such as the street lights seen in the picture which are a structure of their own.
All those files and models are located in their respective mods folder and it will be easy to add new stuff in the game.
All of this is quite technical but I'll create an online documentation to explain everything in detail once the development is more advanced. With all this, it could be possible to recreate Glassix map into Glassix 2 ;)
For v0.4, I'll aim at creating a tutorial city which will guide the player through the different features of the game so the city will be quite small.
A few players also requested the ability to move between cities which should be possible in the future but not a priority at the moment.
That's about it for this dev log. There's still a lot to do before v0.4 is out but I hope this will show you the potential of the game.
As always, thanks a lot for your patience and support! I'll do my best to deliver the next version asap!