Kelsidavis-WoWee/tools/editor
Kelsi a845723635 fix(editor): create M2 instances AFTER upload flush (isValid fix)
ROOT CAUSE: createInstance() checks mdlRef.isValid() which requires
vertexBuffer != VK_NULL_HANDLE. But vertex buffers are uploaded via
staging and only finalized by waitAllUploads(). Instances were being
created BEFORE the upload flush, so vertexBuffer was still null,
cachedIsValid was set to false, and all instances were skipped during
render (0 draws despite loaded models).

Fix: split rebuildObjects into two phases:
1. Load all models (upload geometry to staging)
2. waitAllUploads + pollUploadBatches (finalize GPU buffers)
3. Create all instances (vertexBuffer is now valid, isValid() = true)

This matches the client's terrain_manager pattern where models are
loaded on background threads and instances created after finalization.
2026-05-06 00:11:44 -07:00
..
adt_writer.cpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
adt_writer.hpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
asset_browser.cpp feat(editor): Find Valid Tile button, improved ADT loading workflow 2026-05-05 06:35:37 -07:00
asset_browser.hpp feat(editor): Find Valid Tile button, improved ADT loading workflow 2026-05-05 06:35:37 -07:00
content_pack.cpp feat: WOC collision mesh format — 7th novel open format 2026-05-05 15:23:58 -07:00
content_pack.hpp feat: WOC collision mesh format — 7th novel open format 2026-05-05 15:23:58 -07:00
dbc_exporter.cpp feat(editor): complete importOpen, keyboard shortcuts, DBC exporter 2026-05-05 13:15:00 -07:00
dbc_exporter.hpp feat(editor): DBC→JSON export for open format zone data tables 2026-05-05 10:21:14 -07:00
editor_app.cpp fix(editor): debounce M2 rebuild to prevent clear+reload loop 2026-05-05 23:59:51 -07:00
editor_app.hpp feat(editor): WMO-only instance loading (Dire Maul, dungeons, raids) 2026-05-05 22:44:38 -07:00
editor_brush.cpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
editor_brush.hpp feat(editor): erosion brush, NPC load, auto-save 2026-05-05 04:44:54 -07:00
editor_camera.cpp feat(editor): middle mouse orbit camera around terrain point 2026-05-05 06:48:05 -07:00
editor_camera.hpp feat(editor): middle mouse orbit camera around terrain point 2026-05-05 06:48:05 -07:00
editor_history.cpp fix(editor): undo now covers texture painting, fix stale buffer bug 2026-05-05 12:58:11 -07:00
editor_history.hpp fix(editor): undo now covers texture painting, fix stale buffer bug 2026-05-05 12:58:11 -07:00
editor_markers.cpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
editor_markers.hpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
editor_project.cpp fix: shell injection in gitCommit projectDir, test directory cleanup 2026-05-05 15:16:20 -07:00
editor_project.hpp feat(editor): git integration for collaborative expansion development 2026-05-05 09:45:00 -07:00
editor_ui.cpp feat(editor): WMO-only instance loading (Dire Maul, dungeons, raids) 2026-05-05 22:44:38 -07:00
editor_ui.hpp feat(editor): path preview line, transform undo, complete undo coverage 2026-05-05 13:33:28 -07:00
editor_viewport.cpp fix(editor): create M2 instances AFTER upload flush (isValid fix) 2026-05-06 00:11:44 -07:00
editor_viewport.hpp fix(editor): shrink NPC markers, add show/hide toggle 2026-05-05 22:11:53 -07:00
editor_water.cpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
editor_water.hpp feat(editor): brush radius circle indicator on terrain 2026-05-05 04:10:46 -07:00
FORMAT_SPEC.md feat: WOM2 animated model format with bones and keyframe animation 2026-05-05 16:16:07 -07:00
main.cpp fix(editor): batch convert CLI has visible output and proper exit codes 2026-05-05 16:57:06 -07:00
npc_presets.cpp fix(editor): filter bad M2 models, toast on tile not found, robustness 2026-05-05 07:10:29 -07:00
npc_presets.hpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
npc_spawner.cpp fix(editor): version string, NPC ID reset, author attribution + UX 2026-05-05 14:05:22 -07:00
npc_spawner.hpp fix(editor): ID counter resets, quest panel guard, zone rename, load paths 2026-05-05 14:10:47 -07:00
object_placer.cpp feat(editor): biome vegetation auto-population system 2026-05-05 16:42:41 -07:00
object_placer.hpp feat(editor): biome vegetation auto-population system 2026-05-05 16:42:41 -07:00
quest_editor.cpp fix(editor): harden JSON handling, quest loading, and content validation 2026-05-05 12:48:50 -07:00
quest_editor.hpp fix(editor): harden JSON handling, quest loading, and content validation 2026-05-05 12:48:50 -07:00
server_module_gen.cpp feat(editor): AzerothCore server module generator 2026-05-05 16:31:13 -07:00
server_module_gen.hpp feat(editor): AzerothCore server module generator 2026-05-05 16:31:13 -07:00
sql_exporter.cpp feat(editor): SQL spawn export for AzerothCore/TrinityCore 2026-05-05 16:06:34 -07:00
sql_exporter.hpp feat(editor): SQL spawn export for AzerothCore/TrinityCore 2026-05-05 16:06:34 -07:00
stb_image_impl.cpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
terrain_biomes.hpp feat(editor): biome vegetation auto-population system 2026-05-05 16:42:41 -07:00
terrain_editor.cpp feat(editor): PNG/JPG/BMP heightmap image import, undo for all imports 2026-05-05 15:42:35 -07:00
terrain_editor.hpp feat(editor): PNG/JPG/BMP heightmap image import, undo for all imports 2026-05-05 15:42:35 -07:00
texture_exporter.cpp feat(editor): BLP→PNG texture export for open format zones 2026-05-05 10:17:03 -07:00
texture_exporter.hpp feat(editor): BLP→PNG texture export for open format zones 2026-05-05 10:17:03 -07:00
texture_painter.cpp feat(editor): texture eyedropper, WOT/WHM preference loading 2026-05-05 13:39:53 -07:00
texture_painter.hpp feat(editor): texture eyedropper, WOT/WHM preference loading 2026-05-05 13:39:53 -07:00
transform_gizmo.cpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
transform_gizmo.hpp feat(editor): add standalone world editor (rough/WIP) 2026-05-05 03:47:03 -07:00
wowee_terrain.cpp feat(editor): zone map image export (colored top-down PNG) 2026-05-05 16:01:29 -07:00
wowee_terrain.hpp feat(editor): zone map image export (colored top-down PNG) 2026-05-05 16:01:29 -07:00
zone_manifest.cpp feat(editor): zone metadata panel with mapId, displayName, gameplay flags 2026-05-05 15:52:59 -07:00
zone_manifest.hpp feat(editor): zone metadata panel with mapId, displayName, gameplay flags 2026-05-05 15:52:59 -07:00