New entity shaders for the WB modern rendering path. Modeled on WB's StaticObjectModern.* but adapted to acdream's lighting model: - Drops uActiveCells (we cull cells on CPU in WbDrawDispatcher) - Drops uDrawIDOffset (full passes, no pagination) - Drops uHighlightColor (deferred to Phase B.4 follow-up; field reserved in InstanceData struct comment) - Preserves mesh_instanced's SceneLighting UBO at binding=1 with 8 lights, fog params, lightning flash, per-channel clamp — full visual identity vert reads InstanceData[] @ binding=0 indexed by gl_BaseInstanceARB + gl_InstanceID for the per-entity model matrix; reads BatchData[] @ binding=1 indexed by gl_DrawIDARB for the per-group bindless texture handle + layer. frag samples sampler2DArray reconstructed from a uvec2 bindless handle + uint layer. uRenderPass uniform picks two-pass alpha-test thresholds: 0 = opaque (discard alpha<0.95), 1 = transparent (discard alpha>=0.95 and alpha<0.05). Not yet wired to the dispatcher — Task 6 sets up shader load + capability detection in GameWindow; Task 7-10 rewrite the dispatcher to use SSBO + glMultiDrawElementsIndirect. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| Audio | ||
| Input | ||
| Plugins | ||
| Rendering | ||
| Streaming | ||
| UI | ||
| AcDream.App.csproj | ||
| Program.cs | ||