0.0.16
Pre-release
Pre-release
- Completely eliminated thread pool bottlenecks by switching to C++ standard threading APIs for mutexes
- This resolves stutters, frame drops, etc, due to poor scheduling within the Windows APIs
- These stutters were very heavily associated with particle simulation, since that system was queued within the thread pool
- Before, particle simulation start and finish could be delayed by up to 10 milliseconds!
- There are still some frame stutters and drops associated with D3D9 device calls, but work is ongoing to fix these as well
- Fixed inefficient recursive thread locking in various places
- When a thread already had a lock, in some cases, it would try to get that lock again, due to incorrect placement of locks
- This generally makes locking/mutexes faster
- Tuned some thread timing parameters
- Removed debug overhead in threading from release builds
- Fixed MvM Heavy Rage voice lines not being used
- Optimized renderable bounds computation (now cached and only computed once per frame)
- This optimization was ported from CS:GO
- Fixed all player animation being less efficient due to an inefficient check for the Passtime ball
- Fixed the Jag doing very low damage to enemy buildings except for Sappers (https://www.youtube.com/watch?v=Poa-YjPFs9k)
- Fixed various crashes commonly encountered due to old settings from live TF2
- Now compiled with the C++latest standard (with MSVC permissive mode)
- Fixed some C++latest standard non-compliance (work is ongoing to be compatible with non-permissive mode)
- Set
r_fastzreject
back to 0 as intended
Known issues:
- Medigun heal sound does not play
- Facial expressions do not play (facial expressions)