Status Update + Streaming (Patreon)
Content
Hey folks!
Continuing to chisel away at this next update, which is going to be primarily performance-related.
So far, I've been focusing on load time and character initialization optimization. By making some big changes and conversions to character rendering (specifically, changes that allow me to do most texture building as a series of shader calculations instead of CPU calculations), I've been able to dramatically reduce both the build time and the memory footprint of characters. This new system also allows for better fur and embellishment obscurance by clothing.
Speaking of clothing, clothing is now loaded from DAE files in the game's application directory, which means the next update will support moddable clothing, similar to the moddable embellishments added in the last update. The clothing system has also been overhauled to pool resources more efficiently, dramatically reducing the memory footprint of clothing.
The next part of this update is going to be performance/runtime optimization. The latest Unity builds have introduced better multithreading support, and I'll be going through my existing systems to see what can be sped up.
On that note, I was very happy to learn that FinalIK, the 3rd party system I'm using to handle inverse kinematics (which is currently the slowest part of the game), is working directly with Unity to convert some of their own systems to the new multithreaded job framework. While I don't have any control over FinalIK's development, any improvements they make will have a dramatic impact on how well Rack 2 runs, so I'm looking forward to those changes.
Anyway, I know that this update will take a little longer than most previous updates, and it will also contain very little in the way of actual content / gameplay changes. This is one of the reasons I'm always leery about doing premature optimization: it's a very long, boring process that doesn't really add anything new and exciting to the game. All the same, after 0.2.4 and 0.2.5, it became clear that a performance patch was overdue.
If you're interested in following this patch, feel free to swing by my streams or keep an eye on trello! I'm actually just about to go live on picarto, so feel free to come hang out for a bit!