AengusCraft
A downloadable game for Windows
This is a pretty simple Minecraft clone made in Godot, by Aengus Patterson (aka Teenage Code). View the source code here
The blocks are all rendered in using the Godot multimesh system- a performant way to render thousands of meshes at once. The multimeshes do unfortunately lead to some rendering issues, especially on the Vulcan renderer, so I had to switch it to OpenGL 3.3
There are only like 20 or so hitboxes in the game. each hitbox checks if a block SHOULD be there by using a math formula to determine if a multimesh instance (block) is there. all those hitboxes follow the player around and are only activated when they are in the position of a block, so its a seamless experience that the user doesn't notice but drastically cuts down on the number of block hitboxes.
the terrain is generated using a height map/ noisemap. all this does is create some noise, and then when populating each chunk with blocks, no blocks will spawn higher than the max height for a given location. trees and sand and flowers are all generated by using very similar noisemaps.
if the terrain is above a certain height, it is grass. if it is above another height, it is dirt. and if it is any lower, then it is stone. this makes hills look a little weird because grass only spawns at high altitudes but it gives it a cool charm.
the main performance killer is probably the chunk loading/unloading system. each chunk, and i mean every single one, surrounding the player is checked each frame to see if new ones should be loaded in or if old ones should be loaded out. its super slow because its O(n^2) where n is the chunk render distance
View the source code here
Status | In development |
Platforms | Windows |
Rating | Rated 3.0 out of 5 stars (1 total ratings) |
Author | Aengus Patterson |
Genre | Simulation, Adventure, Survival |
Tags | clone, Godot, Minecraft, Open Source, Open World, Singleplayer, teenage-code |
Install instructions
to run it, just extract the files and run the exe file.
try to avoid quitting to the menu, and then going back into the game. this may cause chunk rendering issues. instead, just quit the game entirely and reload in.
if you see buggy lines all across the screen, look away from that chunk and try to move far enough away to de-render it.
Leave a comment
Log in with itch.io to leave a comment.