Full notes
Full Tower Knight update
Read the full published notes in a cleaner layout. The original post stays linked below.
What changed
- Performance
Overview
This update is a texture optimization that will make the game perform slightly better with larger waves.
This is a small update that might yield better performance for some users. I am also working on a more significant optimization right now, but that optimization is going to take a bit more time.
Tech Details
The optimization for 0.8.4 is very simple: disable "mipmaps" for enemy character images. The enemies in Tower Knight are just PNG images. Game engines (in this case, Godot) use mipmaps to store an image at different sizes, so that the best resolution is used when needed. Enabling mipmaps makes an image's imported size larger, which means when the game is displaying the image, more VRAM needs is used to display the images.
This is a very minor improvement, but it should help a little bit. The more significant optimization that I am looking into is to somehow use just one instance of an enemy image for all occurrences of that enemy in the 3D world.
Godot Details
My plan is to use a 2D plane in 3D space with a Shader Material that reads from the image -- as opposed to using a Sprite3D + Viewport for each enemy. I have a hunch that by removing the need for a Viewport for each enemy occurrence there will be a huge improvement.
If you've played the latest updates please share your thoughts in the discussions or reviews. Your feedback is appreciated!
Source
Changelog.gg summarizes and formats this update. How we read updates.
