Kelsidavis-WoWee/include
Kelsi b0466e9029 perf: eliminate ~70 unnecessary sqrt ops per frame, optimize caches and threading
Squared distance optimizations across 30 files:
- Convert glm::length() comparisons to glm::dot() (no sqrt)
- Use glm::inversesqrt() for check-then-normalize patterns (1 rsqrt vs 2 sqrt)
- Defer sqrt to after early-out checks in collision/movement code
- Hottest paths: camera_controller (21), weather particles, WMO collision,
  transport movement, creature interpolation, nameplate culling

Container and algorithm improvements:
- std::map<string> → std::unordered_map for asset/DBC/MPQ/warden caches
- std::mutex → std::shared_mutex for asset_manager and mpq_manager caches
- std::sort → std::partial_sort in lighting_manager (top-2 of N volumes)
- Double-lookup find()+operator[] → insert_or_assign in game_handler
- Add reserve() for per-frame vectors: weather, swim_effects, WMO/M2 collision

Threading and synchronization:
- Replace 1ms busy-wait polling with condition_variable in character_renderer
- Move timestamp capture before mutex in logger
- Use memory_order_acquire/release for normal map completion signaling

API additions:
- DBC getStringView()/getStringViewByOffset() for zero-copy string access
- Parse creature display IDs from SMSG_CREATURE_QUERY_SINGLE_RESPONSE
2026-03-27 16:33:16 -07:00
..
addons feat: display Lua addon errors as in-game UI errors 2026-03-21 06:00:06 -07:00
audio fix: auto-detect CharSections.dbc layout and add Blood Elf/Draenei NPC voices 2026-03-23 11:00:49 -07:00
auth Vanilla/Turtle WoW support: M2 loading, bone parsing, textures, auth 2026-02-13 16:53:28 -08:00
core refactor: extract loadWeaponM2() to deduplicate weapon model loading 2026-03-25 14:17:19 -07:00
game perf: eliminate ~70 unnecessary sqrt ops per frame, optimize caches and threading 2026-03-27 16:33:16 -07:00
network refactor: add Packet::hasData(), replace 52 position checks and 14 more Lua guards 2026-03-25 14:39:01 -07:00
pipeline perf: eliminate ~70 unnecessary sqrt ops per frame, optimize caches and threading 2026-03-27 16:33:16 -07:00
platform Fix all remaining build warnings and eliminate UB in binary parsers 2026-02-23 19:58:38 -08:00
rendering perf: eliminate ~70 unnecessary sqrt ops per frame, optimize caches and threading 2026-03-27 16:33:16 -07:00
third_party Fix cross-platform FSR3 compile path and Path-A runtime wiring 2026-03-09 04:24:24 -07:00
ui refactor: add kCastGreen/kQueueGreen constants, remove dead code 2026-03-27 15:01:12 -07:00