atdunbg
cef32ea1ba
fix: Shadow pass 接入 GPUDriven batch,实例上限提至 16384
100 背包掉帧 + 警告刷屏的根因与修复:
1. backpack.obj 有 44 个 mesh 部件,100 实体 × 44 = 4400 实例
打爆 4096 上限 → 每帧截断 + 告警刷屏。上限提至 16384
(1MB/slot),告警改一次性
2. Shadow pass 仍逐实体逐部件画(4400 draw,CPU 提交瓶颈)。
改为与 Forward 共用同一批 batch:Set0 绑 ObjectBuffer,
lightVP 一次 push,44 draw 完成。shadow.vert 经
gl_InstanceIndex 从 SSBO 取模型矩阵
3. 遥测补全:Application::Run 每 120 帧输出 CPU 归属
(update/ui/render/total),Render 输出实例收集耗时——
实测 100 背包 CPU 2.0ms/帧 GPU 0.6ms/帧 ≈ 500fps
2026-09-22 20:17:05 +08:00
..
2026-09-22 20:17:05 +08:00
2026-09-22 20:17:05 +08:00
2026-09-22 19:00:56 +08:00