AdvancedAny other field the struct declares
OptionalalphaCutoff for alphaMode: 'mask'; absent when the struct doesn't declare it
OptionalbaseBase colour in linear light, alpha in the last lane; absent when the struct doesn't declare it
Set material.baseColor and material.alpha instead, which keep displayBaseColor in step.
OptionaldisplayBase colour in display space, alpha in the last lane, for unlit bits; absent when not declared
OptionaluvThe UV transform's offset; absent when the struct doesn't declare it
OptionaluvThe UV transform's 2x2 part, row-major as [m00, m01, m10, m11]; absent when the struct doesn't declare it
A material's GPU-side values, as
material.data, with a property per field its bits declareFloat32Arrayviews and are set by copying from any array-like no longer than the field; a longer one throws. Writing into a view queues no upload, so callmaterial.update()afterwards.A material with fixed fields narrows the type, as Material3DData does.