mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-23 07:40:14 +00:00
Fix water descriptor pool leak and add water rendering diagnostics
- Add VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT to water material descriptor pool so individual sets can be freed when tiles are unloaded - Free descriptor sets in destroyWaterMesh() instead of leaking them - Add terrain manager unloadAll() during logout to properly clear stale tiles, water surfaces, and queues between sessions - Add diagnostic logging for water surface loading, material allocation failures, and render skip reasons to investigate missing water
This commit is contained in:
parent
94e4a0bdb3
commit
872b10fe68
4 changed files with 38 additions and 5 deletions
|
|
@ -705,7 +705,15 @@ bool TerrainManager::advanceFinalization(FinalizingTile& ft) {
|
|||
// Load water immediately after terrain (same frame) — water is now
|
||||
// deduplicated to ~1-2 merged surfaces per tile, so this is fast.
|
||||
if (waterRenderer) {
|
||||
size_t beforeSurfaces = waterRenderer->getSurfaceCount();
|
||||
waterRenderer->loadFromTerrain(pending->terrain, true, x, y);
|
||||
size_t afterSurfaces = waterRenderer->getSurfaceCount();
|
||||
if (afterSurfaces > beforeSurfaces) {
|
||||
LOG_INFO("Water: tile [", x, ",", y, "] added ", afterSurfaces - beforeSurfaces,
|
||||
" surfaces (total: ", afterSurfaces, ")");
|
||||
}
|
||||
} else {
|
||||
LOG_WARNING("Water: waterRenderer is null during tile [", x, ",", y, "] finalization!");
|
||||
}
|
||||
|
||||
// Ensure M2 renderer has asset manager
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue