depthOnlyVertex property
The vertex shader and layout the depth-style passes (the directional shadow map, the camera depth prepass, and the object-selection mask) should use for this geometry, or null to reuse vertexShader with instancedVertexLayout.
Unskinned geometry returns a position-only shader and layout so those passes fetch only the position attribute. Skinned geometry returns null (its joints-driven shader has no position-only variant yet), so the depth passes drive it through bind like the color pass.
Implementation
@override
({gpu.Shader shader, VertexLayoutDescriptor layout})? get depthOnlyVertex => (
shader: _depthVertexShader ??= baseShaderLibrary['UnskinnedDepthVertex']!,
layout: _isDeInterleaved
? kUnskinnedSoADepthLayout
: kUnskinnedPositionOnlyLayout,
);