Welcome to the devlog of November, this month I had a lot of time and thanks to my last black Friday's purchase, Alexa, setting up a good mood while programming has never been this easy.
This month I worked on.
- Fish mutation
- Physically-based particles
- Portal Metroidvania like behavior
- Huge performance boost
- Physic optimization
- Rendering Optimizations
- Garbage Collection optimizations
- Minor(particle generation, better in-game text visualization)
- Level Editor(layering)
I've changed the algorithm of the fish generation to make it even more random and sometimes
a fish will have inverted or missing bodyparts that will create monstrosity like this:
The player will now get affected by every particle inside
the game and this will create cool game mechanics
Huge performance boost
After several nights of profiling the game, I was surprised
that the biggest bottleneck inside the game were: physics calculations, and the frustum culling performed by unity.
To fix those problems I wrote some custom systems and did some smart optimizations:
- Enable/disable rigid bodied based on the distance from the player
- Automatically group objects inside quads and only shows the quads that are visible(using the good old bounding box) by the camera
- Located and fixed every garbage allocation(most of them were inside the AI system), inside the code to avoid the garbage collection and ugly lag spikes.
- replaced every Coutourine with tasks when I could since Coroutine allocates garbage every time they are called.
- used Sprite Atlas to batch multiple sprites inside a single draw call
- Removed every unnecessary polygon collider with basic geometry shapes
- Optimized physic layers, by removing unnecessary casts between layers.
Particle generation and better in-game texts
I improved the algorithm that generated the bubbles of a current to increase/decrease
his size and particle count based on the volume of the shape that they are spawned in
I also changed the way texts are displayed inside the game:
Stalactites are cool and will improve the overall mood of the game
the official website is finally up:
still working on the front end :/
The level editor got a huge boost in the user experience and also
a big feature that everyone(only me) was waiting for:
the layer system to create cool graphic effects.
I will make an article on the level editor because it's really complex and deserves his own post
to explain in detail everything that you can do with it!
How to support me?
Be sure to join the discord server, where you can talk about the game, give feedback and follow each step of the development.
Follow the game on indiedb (DUH!)