Kelsidavis-WoWee/include
Kelsi f855327054 fix: eliminate 490ms transport-doodad stall and GPU device-loss crash
Three root causes identified from wowee.log crash at frame 134368:

1. processPendingTransportDoodads() was doing N separate synchronous
   GPU uploads (vkQueueSubmit + vkWaitForFences per texture per doodad).
   With 30+ doodads × multiple textures, this caused the 489ms stall in
   the 'gameobject/transport queues' update stage. Fixed by wrapping the
   entire batch in beginUploadBatch()/endUploadBatch() so all texture
   layout transitions are submitted in a single async command buffer.

2. Game objects whose M2 model has no geometry/particles (empty or
   unsupported format) were retried every frame because loadModel()
   returns false without adding to gameObjectDisplayIdModelCache_.
   Added gameObjectDisplayIdFailedCache_ to permanently skip these
   display IDs after the first failure, stopping the per-frame spam.

3. renderM2Ribbons() only checked ribbonPipeline_ != null, not
   ribbonAdditivePipeline_. If additive pipeline creation failed, any
   ribbon with additive blending would call vkCmdBindPipeline with
   VK_NULL_HANDLE, causing VK_ERROR_DEVICE_LOST on the GPU side.
   Extended the early-return guard to cover both ribbon pipelines.
2026-03-13 01:45:31 -07:00
..
audio feat: play audio notification when a whisper is received 2026-03-12 06:12:37 -07:00
auth Vanilla/Turtle WoW support: M2 loading, bone parsing, textures, auth 2026-02-13 16:53:28 -08:00
core fix: eliminate 490ms transport-doodad stall and GPU device-loss crash 2026-03-13 01:45:31 -07:00
game fix: correct corpse retrieval coordinate mismatch and detect corpse objects 2026-03-13 00:59:43 -07:00
network Fix Windows socket WSAENOTCONN disconnect; add boss encounter frames 2026-03-09 20:05:09 -07:00
pipeline feat: implement M2 ribbon emitter rendering for spell trail effects 2026-03-13 01:17:30 -07:00
platform Fix all remaining build warnings and eliminate UB in binary parsers 2026-02-23 19:58:38 -08:00
rendering feat: implement M2 ribbon emitter rendering for spell trail effects 2026-03-13 01:17:30 -07:00
third_party Fix cross-platform FSR3 compile path and Path-A runtime wiring 2026-03-09 04:24:24 -07:00
ui feat: handle SMSG_BATTLEFIELD_MGR_* and SMSG_CALENDAR_* opcodes 2026-03-12 22:25:46 -07:00