The one bind-group layout this tier declares: group 0, binding 0, a
dynamically-offset uniform buffer visible to both stages.
Both stages, not one each: the vertex stage reads viewProjection,
model and normalMatrix, the fragment stage reads color, and they are
one block because splitting them would double the bind-group traffic to
save nothing — a uniform block is uploaded whole either way.
minBindingSize is set, so a mis-sized bind group is a validation error at
creation rather than a shader reading past its block at draw time.
The one bind-group layout this tier declares: group 0, binding 0, a dynamically-offset uniform buffer visible to both stages.
Both stages, not one each: the vertex stage reads
viewProjection,modelandnormalMatrix, the fragment stage readscolor, and they are one block because splitting them would double the bind-group traffic to save nothing — a uniform block is uploaded whole either way.minBindingSizeis set, so a mis-sized bind group is a validation error at creation rather than a shader reading past its block at draw time.