apply method
Implementation
@override
void apply(covariant RenderContext3D context) {
vertexShader
..setMatrix4('VertexInfo.model', context.model)
..setMatrix4('VertexInfo.view', context.view)
..setMatrix4('VertexInfo.projection', context.projection);
final jointTransforms = context.jointsInfo.jointTransforms;
if (jointTransforms.length > _maxJoints) {
throw Exception(
'At most $_maxJoints joints per surface are supported;'
' found ${jointTransforms.length}',
);
}
for (final (index, transform) in jointTransforms.indexed) {
vertexShader.setMatrix4('JointMatrices.joints[$index]', transform);
}
fragmentShader
..setTexture('albedoTexture', albedoTexture)
..setColor('Material.albedoColor', albedoColor);
}