Commit graph

  • 98eebef740 feat(net): #13 read options2 gated on CHARACTER_OPTIONS2 flag Erik 2026-05-10 08:46:32 +02:00
  • b17dc3b152 feat(net): #13 read optional spellbook_filters u32 Erik 2026-05-10 08:44:05 +02:00
  • 28d2c6018e feat(A.5 T22.5): wire QualityPreset into renderer + streaming (commit 2/2) Erik 2026-05-10 08:43:06 +02:00
  • 75e8e260f2 feat(net): #13 read desired_comps list in PD trailer Erik 2026-05-10 08:39:31 +02:00
  • afa4200107 feat(A.5 T22.5): QualityPreset schema + tests (commit 1/2) Erik 2026-05-10 08:37:17 +02:00
  • 8cbb991d95 feat(net): #13 read hotbar spells (SPELL_LISTS8 + legacy path) Erik 2026-05-10 08:35:03 +02:00
  • c473feedb3 feat(A.5 T23): BUDGET_OVER flag in [WB-DIAG] / [TERRAIN-DIAG] Erik 2026-05-10 08:28:45 +02:00
  • f7a5eea8e8 feat(net): #13 read shortcuts list (SHORTCUT bit) in PD trailer Erik 2026-05-10 08:28:25 +02:00
  • 3b684db0f1 feat(A.5 T22): fog wired from N₁/N₂ + ACDREAM_FOG_*_MULT env vars Erik 2026-05-10 08:27:55 +02:00
  • 1488ec62b7 test(A.5 T21): lock in depth-write attribution per translucency kind Erik 2026-05-10 08:27:03 +02:00
  • 9a0dfe03da refactor(net): #13 Parsed.TrailerTruncated + diag logging Erik 2026-05-10 08:26:08 +02:00
  • 26b2871b10 feat(A.5 T20): MSAA 4x + alpha-to-coverage on foliage Erik 2026-05-10 08:25:59 +02:00
  • 4b84e5650b feat(A.5 T19): mipmaps + 16x anisotropic on TerrainAtlas Erik 2026-05-10 08:24:44 +02:00
  • 0afd741ea7 feat(A.5 T18): use cached WorldEntity AABB in dispatcher; populate at register Erik 2026-05-10 08:20:20 +02:00
  • becbde60a4 feat(net): #13 read OptionFlags + Options1 after enchantments Erik 2026-05-10 08:18:38 +02:00
  • 003443cd1a feat(A.5 T17): WbDrawDispatcher Change #1 — animated-walk fix + WalkEntities helper Erik 2026-05-10 08:18:02 +02:00
  • 65870349a8 refactor(net): #13 rename Shortcut → ShortcutEntry, expand doc citations Erik 2026-05-10 08:16:01 +02:00
  • 0de6bc9c96 fix(A.5 T13-T16): canonical LB id in Tick_DrainingPromoted test Erik 2026-05-10 08:09:53 +02:00
  • c2c8a532db fix(A.5 T13-T16): WorldEntity required-member fields in new tests Erik 2026-05-10 08:09:10 +02:00
  • 19b4465257 fix(A.5 T13-T16): canonicalize ids; init-only radii; demote/promote tests Erik 2026-05-10 08:08:23 +02:00
  • d3b58c97e0 feat(net): #13 scaffold trailer fields on PlayerDescriptionParser.Parsed Erik 2026-05-10 08:06:33 +02:00
  • 31d312add3 fix(A.5 T16): debug overlay shows _nearRadius instead of legacy _streamingRadius Erik 2026-05-10 08:01:30 +02:00
  • c4fd37384a feat(A.5 T16): wire two-tier streaming into GameWindow Erik 2026-05-10 07:58:12 +02:00
  • b8d80fe282 feat(A.5 T13): StreamingController two-tier Tick Erik 2026-05-10 07:56:57 +02:00
  • aff35d2a76 refactor(A.5 T15): TerrainModernRenderer.AddLandblockWithMesh entry point Erik 2026-05-10 07:54:40 +02:00
  • fb10c3fa8c feat(A.5 T14): GpuWorldState RemoveEntitiesFromLandblock + AddEntitiesToExisting Erik 2026-05-10 07:53:34 +02:00
  • 774a7070a8 fix(A.5 T10-T12): Start() race + null mesh test + real mesh stub Erik 2026-05-10 07:49:14 +02:00
  • 76e1a64d78 fix(A.5 T10): lock 2 missed _dats.Get<Setup> sites Erik 2026-05-10 07:41:36 +02:00
  • 0405947bac feat(A.5 T12): inject mesh-build dependency into LandblockStreamer Erik 2026-05-10 07:35:45 +02:00
  • 00bb030c9f feat(A.5 T11): activate LandblockStreamer worker thread Erik 2026-05-10 07:32:35 +02:00
  • 0cf86bb126 fix(A.5 T10): serialize DatCollection access via _datLock Erik 2026-05-10 07:32:23 +02:00
  • c5f98b276e fix(A.5 T7-T9): migrate entity.Position= → SetPosition; add Promoted arm Erik 2026-05-10 07:25:07 +02:00
  • 4be392b361 refactor(A.5 T9): _surfaceCache -> ConcurrentDictionary for off-thread mesh build Erik 2026-05-09 22:55:53 +02:00
  • a0741bd13a feat(A.5 T8): WorldEntity AABB cache + dirty flag Erik 2026-05-09 22:54:25 +02:00
  • 295bce9bb2 feat(A.5 T7): LandblockStreamResult.Loaded.Tier+MeshData; Promoted variant Erik 2026-05-09 22:53:07 +02:00
  • 1658882439 fix(A.5 T4-T6): bootstrap guard + dead enum + test cleanups Erik 2026-05-09 22:49:35 +02:00
  • 326b698161 test(A.5 T6): StreamingRegion transitions + hysteresis + oscillation coverage Erik 2026-05-09 22:39:16 +02:00
  • fb6b61e8ef feat(A.5 T5): StreamingRegion two-tier RecenterTo + TierResidence tracking Erik 2026-05-09 22:36:20 +02:00
  • 7bcababf82 feat(A.5 T4): StreamingRegion ComputeFirstTickDiff Erik 2026-05-09 22:34:55 +02:00
  • 378f32ac7a fix(A.5 T3): pin Radius==FarRadius invariant in two-tier ctor test Erik 2026-05-09 22:30:30 +02:00
  • 7fd9c82954 test(A.5 T3): StreamingRegion two-radius constructor Erik 2026-05-09 22:27:50 +02:00
  • 21550ecff2 fix(A.5 T2): document Kind placeholder in HandleJob Erik 2026-05-09 22:25:26 +02:00
  • 90a2027d14 feat(A.5 T2): TwoTierDiff record + LandblockStreamJob.Load.Kind Erik 2026-05-09 22:20:48 +02:00
  • d67d16fcfc feat(A.5 T1): LandblockStreamTier + LandblockStreamJobKind enums Erik 2026-05-09 22:15:57 +02:00
  • b373523f98 docs(A.5): two-tier streaming + horizon LOD implementation plan Erik 2026-05-09 22:10:38 +02:00
  • fcaff71352 docs(A.5): two-tier streaming + horizon LOD design spec Erik 2026-05-09 21:52:00 +02:00
  • 1e6a8123c6 Merge branch 'claude/happy-joliot-f67060' — Phase N.5b SHIP + A.5 handoff Erik 2026-05-09 21:13:55 +02:00
  • f7f88674e1 docs(A.5): cold-start handoff for the next session Erik 2026-05-09 21:11:46 +02:00
  • 08b736207c phase(N.5b): SHIP — terrain on modern rendering path Erik 2026-05-09 13:05:12 +02:00
  • 083c10c514 docs(N.5b T10): roadmap + ISSUES + CLAUDE.md + perf baseline updates Erik 2026-05-09 13:03:14 +02:00
  • 7dfa2af6c0 phase(N.5b): retire legacy terrain renderers Erik 2026-05-09 12:59:05 +02:00
  • da56063be5 fix(N.5b): black terrain — switch to uvec2 handle + sampler constructor Erik 2026-05-09 12:53:21 +02:00
  • 55e516c538 fix(N.5b T8): TerrainDiagMedian/P95 IndexOutOfRangeException on first flush Erik 2026-05-09 09:40:22 +02:00
  • 336ad34444 chore(N.5b): TEMPORARY perf benchmark toggle for legacy↔modern terrain Erik 2026-05-09 09:36:13 +02:00
  • 75913c1c97 phase(N.5b): wire TerrainModernRenderer into GameWindow Erik 2026-05-09 09:21:32 +02:00
  • 3418f65462 fix(N.5b T6): index-length validation + document VertsPerLandblock %6 invariant Erik 2026-05-09 09:15:51 +02:00
  • 0a77bd1fd7 phase(N.5b) Task 6: TerrainModernRenderer Erik 2026-05-09 09:05:28 +02:00
  • 4ed79207a6 fix(N.5b T7): tighten conformance sample upper bound to 191.975f Erik 2026-05-09 08:59:01 +02:00
  • e54d5ca2cf phase(N.5b) Task 7: TerrainModernConformanceTests Erik 2026-05-09 08:49:15 +02:00
  • 1ea00a075e phase(N.5b) Task 5: terrain_modern.frag Erik 2026-05-09 08:45:40 +02:00
  • 3c108a0d68 phase(N.5b) Task 4: terrain_modern.vert Erik 2026-05-09 08:45:22 +02:00
  • ba852993e9 phase(N.5b) Task 2: TerrainSlotAllocator + tests Erik 2026-05-09 08:44:51 +02:00
  • db0f010544 phase(N.5b) Task 1: TerrainAtlas bindless extension Erik 2026-05-09 08:37:23 +02:00
  • 79367d4c15 plan(N.5b): implementation plan for terrain on modern path Erik 2026-05-09 08:32:19 +02:00
  • b35ddf3426 spec(N.5b): design for terrain on the modern rendering path Erik 2026-05-09 08:23:09 +02:00
  • 47f2cea1e8 test(N.5b): quantify WB vs retail terrain split formula divergence Erik 2026-05-09 08:22:50 +02:00
  • 380922cdbe docs(N.5b): cold-start handoff for next session Erik 2026-05-09 07:16:10 +02:00
  • a64cd11def docs(roadmap): add A.5 — two-tier streaming + terrain horizon LOD Erik 2026-05-08 23:45:05 +02:00
  • d73dcd56ba docs: defer per-instance highlight to open backlog (no scheduled phase) Erik 2026-05-08 22:22:23 +02:00
  • 27eaf4e0be Merge branch 'claude/priceless-feistel-c12935' — Phase N.5 SHIP Erik 2026-05-08 22:13:20 +02:00
  • e0dbc9c66f phase(N.5): SHIP-amendment — escape hatch retired Erik 2026-05-08 22:01:48 +02:00
  • dcae2b6b94 phase(N.5): retirement amendment — InstancedMeshRenderer + StaticMeshRenderer + WbFoundationFlag deleted Erik 2026-05-08 22:01:36 +02:00
  • 55ecec683f phase(N.5): SHIP — modern rendering path on N.4 dispatcher Erik 2026-05-08 21:14:50 +02:00
  • 77e619d48a phase(N.5): roadmap — N.5 shipped, N.6 next Erik 2026-05-08 21:13:49 +02:00
  • 38eb999f2c phase(N.5) Task 18: plan finalization — SHIP record appended Erik 2026-05-08 21:13:37 +02:00
  • e6378b90ed phase(N.5) Task 15: delete legacy mesh_instanced shader files Erik 2026-05-08 21:13:05 +02:00
  • 39ccd29030 phase(N.5) Task 16: extend CLAUDE.md WB cribs with N.5 patterns Erik 2026-05-08 21:11:29 +02:00
  • 2eeb6bd613 phase(N.5) Task 13: perf baseline — Holtburg courtyard measured Erik 2026-05-08 21:08:21 +02:00
  • d114dca1e8 phase(N.5) Task 12: CPU stopwatch + GL_TIME_ELAPSED queries in [WB-DIAG] Erik 2026-05-08 20:57:26 +02:00
  • cfe1ca3151 phase(N.5) Task 11: translucency partition contract test Erik 2026-05-08 20:53:36 +02:00
  • f533414edf phase(N.5) Task 10: glMultiDrawElementsIndirect dispatch — visual verified Erik 2026-05-08 20:51:49 +02:00
  • b163c53622 phase(N.5) Task 9 fixup: layout assertion + DrawCommandStride const Erik 2026-05-08 20:42:49 +02:00
  • 9a7a250b62 phase(N.5) Task 9: BuildIndirectArrays — CPU layout for indirect dispatch Erik 2026-05-08 20:38:22 +02:00
  • 424d7b9015 phase(N.5) Task 8: InstanceGroup + GroupKey carry bindless handle + layer Erik 2026-05-08 20:32:38 +02:00
  • 1b6995d2df phase(N.5) Task 7 fixup: BatchData Pack=8 for ulong alignment Erik 2026-05-08 20:29:58 +02:00
  • 86c471d2d1 phase(N.5) Task 7: dispatcher SSBO + indirect buffer infrastructure Erik 2026-05-08 20:25:29 +02:00
  • 12170f9d78 phase(N.5) Task 6 fixup: log symmetry + Silk extension shortcut Erik 2026-05-08 20:21:10 +02:00
  • 93ebd9e433 phase(N.5) Task 6: GameWindow capability detection + plumb BindlessSupport Erik 2026-05-08 20:15:06 +02:00
  • 166af9a53e phase(N.5) Task 5 fixup: shader doc + extension cleanup Erik 2026-05-08 20:11:03 +02:00
  • aad2aa67da phase(N.5) Task 5: mesh_modern.vert + .frag — bindless + SSBO + indirect Erik 2026-05-08 20:05:35 +02:00
  • 6f90997a43 docs(N.5): plan amendment — Task 5 shader matches mesh_instanced lighting Erik 2026-05-08 20:03:12 +02:00
  • 0bfe536858 phase(N.5) Task 3+4 fixup: two-phase Dispose + doc consistency Erik 2026-05-08 19:59:10 +02:00
  • 0d96716825 phase(N.5) Task 3: TextureCache bindless GetOrUpload + parallel cache Erik 2026-05-08 19:53:10 +02:00
  • 4b9a9bb721 docs(N.5): plan amendment — Task 3+4 use parallel bindless caches Erik 2026-05-08 19:50:36 +02:00
  • 0b73875d39 phase(N.5) Task 2 fixup: name TexImage3D depth + border arguments Erik 2026-05-08 19:48:00 +02:00
  • f48a6cf65c phase(N.5) Task 2: parallel Texture2DArray upload path in TextureCache Erik 2026-05-08 19:44:10 +02:00
  • aba2cfc3b6 docs(N.5): plan amendment — Task 2 uses parallel upload path, not replace Erik 2026-05-08 19:42:18 +02:00
  • 3a88c361ce phase(N.5) Task 1 fixup: remove unused _gl field + IsAvailable Erik 2026-05-08 19:35:32 +02:00
  • d8c7bf67d8 docs(N.5): plan amendment — clarify Task 1 vs Task 3 file ownership Erik 2026-05-08 19:34:38 +02:00
  • 4d1a7977cb phase(N.5) Task 1: ArbBindlessTexture wrapper + capability detection Erik 2026-05-08 19:31:02 +02:00