Redundant copies of MeshUniform #11770
Labels
A-Rendering
Drawing game state to the screen
C-Bug
An unexpected or incorrect behavior
C-Performance
A change motivated by improving speed, memory usage or compile times
D-Complex
Quite challenging from either a design or technical perspective. Ask for help!
P-High
This is particularly urgent, and deserves immediate attention
S-Needs-Benchmarking
This set of changes needs performance benchmarking to double-check that they help
S-Needs-Design
This issue requires design work to think about how it would best be accomplished
X-Controversial
There is active debate or serious implications around merging this PR
Since #9685, each instance of
batch_and_prepare_render_phase
will append a copy ofMeshUniform
to theGpuArrayBuffer<MeshUniform>
resource for each entity x phase. For 2 cameras, each with 3 phases (shadow, prepass, main pass), that's 6 total copies per entity... Additionally, eachbatch_and_prepare_render_phase
cannot run in parallel with each other due toResMut<GpuArrayBuffer>
.This was kind of intended as it makes it easy for each draw to find the correct MeshUniform in the shader, but it does have the above downsides.
The text was updated successfully, but these errors were encountered: