-
Notifications
You must be signed in to change notification settings - Fork 335
Description
When I implemented vertex formats based on webgpu idl in dawn, I found some vertex formats cannot be supported on all platforms.
For metal, some formats only supported on mac OS 10.13+(Metal Vertex Formats Lists). Here are the formats :
MTLVertexFormatUChar --> uchar
MTLVertexFormatChar --> char
MTLVertexFormatUCharNormalized --> ucharnorm
MTLVertexFormatCharNormalized --> charnorm
MTLVertexFormatUShort --> ushort
MTLVertexFormatShort --> short
MTLVertexFormatUShortNormalized --> ushortnorm
MTLVertexFormatShortNormalized --> shortnorm
MTLVertexFormatHalf --> half
MTLVertexFormatUChar4Normalized_bgra --> uchar4norm-bgra
For D3D12(DXGI format lists), there are some 3-component webgpu formats cannot find native DXGI formats to support it.(e.g. uchar3 should be supported by formats like DXGI_FORMAT_R8G8B8_UINT, but D3D12 doesn't have this format). Here are the formats :
uchar3, char3, uchar3norm, char3norm, ushort3, short3, ushort3norm, short3norm, half3
For these formats that are not supported on all platforms, I think we shouldn't support them in webgpu.