Commit graph

12 commits

Author SHA1 Message Date
Kelsi
3e6de8485b Fix ground clutter height sampling and terrain shader GPU crash
- Fix HeightMap::getHeight() to use interleaved 17-wide row layout
  matching MCVT storage (was using wrong 9-wide contiguous indexing)
- Guard terrain bump mapping normalize against zero-length vectors
  to prevent NaN propagation and GPU faults
2026-02-23 06:46:31 -08:00
Kelsi
e12141a673 Add configurable MSAA anti-aliasing, update auth screen and terrain shader
- MSAA: conditional 2-att (off) vs 3-att (on) render pass with auto-resolve
- MSAA: multisampled color+depth images, query max supported sample count
- MSAA: .setMultisample() on all 25+ main-pass pipelines across 17 renderers
- MSAA: recreatePipelines() on every sub-renderer for runtime MSAA changes
- MSAA: Renderer::setMsaaSamples() orchestrates swapchain+pipeline+ImGui rebuild
- MSAA: Anti-Aliasing combo (Off/2x/4x/8x) in Video settings, persisted
- Update auth screen assets and terrain fragment shader
2026-02-22 02:59:24 -08:00
Kelsi
bf31da8c13 Add MCLQ water, TaxiPathNode transports, and vanilla M2 particles
- Parse MCLQ sub-chunks in vanilla ADTs for water rendering (WotLK uses MH2O)
- Load TaxiPathNode.dbc for MO_TRANSPORT world-coordinate paths (vanilla boats)
- Parse data[] from SMSG_GAMEOBJECT_QUERY_RESPONSE (taxiPathId for transports)
- Support vanilla M2 particle emitters (504-byte struct, different from WotLK 476)
- Add character preview texture diagnostic logging
- Fix disconnect handling on character screen (show error only when no chars)
2026-02-14 20:20:43 -08:00
Kelsi
5171f9cad4 Fix taxi state sync and transport authority; reduce runtime log overhead; restore first-person self-hide 2026-02-11 22:27:02 -08:00
Kelsi
c7d9a6d511 Add detailed MODF placement logging for STORMWIND.WMO
Log all MODF placements of STORMWIND.WMO with complete details:
- uniqueId (should be unique per instance)
- position (x, y, z) - to detect duplicate placements at different Z
- rotation (pitch, yaw, roll)
- doodadSet and flags

This will immediately reveal if the floating cathedral is caused by
duplicate MODF placements at different heights vs a renderer issue.
If multiple entries have same XY but different Z, that's the culprit.
2026-02-09 18:33:08 -08:00
Kelsi
0b1f1ec2e3 Always log MWMO parsing results, even when empty
Removed condition that suppressed logging when wmoNames.size() == 0.
Now will always show 'Loaded X WMO names from MWMO chunk' to confirm
MWMO parsing is happening and reveal if ADT tiles have empty or missing
WMO name lists. This will help diagnose why cathedral WMOs aren't appearing
in logs.
2026-02-09 18:28:47 -08:00
Kelsi
0a7719790d Change WMO name logging to INFO level for visibility
Changed LOG_DEBUG to LOG_INFO for WMO filenames so they appear in logs
without requiring debug mode. This will show all WMO files loaded from
ADT tiles and make cathedral detection messages visible.
2026-02-09 18:26:47 -08:00
Kelsi
0a93186cfd Add cathedral WMO detection logging for duplicate model debugging
Added detailed logging in ADT loader to identify cathedral WMO duplicates:
- Log all WMO filenames from MWMO chunks with index numbers
- Flag and highlight any WMO containing "cathedral" or "Cathedral"
- Log cathedral placement positions from MODF chunks

This will help identify if both WotLK and classic cathedral models are
being loaded from the same ADT tile, causing the floating duplicate effect:
- World\wmo\Azeroth\Buildings\Stormwind\SW_CathedralDistrict.wmo
- world/wmo/azeroth/stormwind/zClassic/cathedral.wmo

The logs will show which cathedral variants exist and their exact positions
to determine if one should be filtered/hidden.
2026-02-09 18:21:04 -08:00
Kelsi
dab23f1895 Add ambient sound system and eliminate log spam
- Implement AmbientSoundManager with tavern/outdoor ambience
- Fix audio buffer limit (5s → 60s) for long ambient loops
- Set log level to INFO to eliminate DEBUG spam (130MB → 3.2MB logs)
- Remove excessive terrain/model/network logging
- Fix ambient sound timer sharing and pitch parameter bugs
2026-02-09 14:50:14 -08:00
Kelsi
f3f97cf9de Fix heightmap loading detection and widen wall collision radius
- Use explicit loaded flag for heightmap instead of checking height values
- Increase player collision radius from 0.50 to 0.55 for better wall collision
2026-02-05 18:01:16 -08:00
Kelsi
c825dbd752 Stabilize city rendering and water/collision behavior 2026-02-03 21:11:10 -08:00
Kelsi
ce6cb8f38e Initial commit: wowee native WoW 3.3.5a client 2026-02-02 13:03:22 -08:00