-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Open
Labels
area: naga back-endOutputs of naga shader conversionOutputs of naga shader conversionarea: naga front-endTranslation to Naga IRTranslation to Naga IRlang: WGSLWebGPU Shading LanguageWebGPU Shading LanguagenagaShader TranslatorShader Translator
Milestone
Description
naga_ext_push_constants- allows usage of
push_constantAddress Space - might become an official extension Investigation : Push Constants gpuweb/gpuweb#75
- allows usage of
naga_ext_f64- allows usage of
f64type - might become an official extension Double precision floats (IEEE-754 binary64) gpuweb/gpuweb#2805
- allows usage of
naga_ext_early_depth_test- allows usage of
@early_depth_testattribute - might become an official extension Early Depth/Stencil test directive or flag in pipeline state creation gpuweb/gpuweb#398
- allows usage of
naga_ext_multiview(ornaga_ext_view_index?)- allows usage of
@builtin(view_index)builtin
- allows usage of
naga_ext_primitive_index- allows usage of
@builtin(primitive_index)builtin - most likely won't be part of WebGPU Support for gl_PrimitiveID / SV_PrimitiveID -like construct? gpuweb/gpuweb#1786
- might have a heavy cost to performance Support PrimitiveID when possible #1669 (comment)
- allows usage of
naga_ext_binding_array(this will end up having 8Capabilitiessee Updatebinding_arrayrelatedCapabilities#4407)- allows usage of
binding_arraytype - might become an official extension
- allows usage of
All of these have their own Capabilities therefore the validator is already aware of those non-standard items but I think we should still have our own set of extensions so that it's obvious when a shader uses those items.
Introducing a strict_extensions: bool field for the Parser will limit the extensions to only those defined by the spec (for now only f16).
Relevant errors should be different based on the strict_extensions field. Example: using an f64 type with strict_extensions: true should yield an error that informs the user that there is no such type; on the other hand, if strict_extensions were false, the error should inform the user that the naga_ext_f64 extension is required.
stefnotch
Metadata
Metadata
Assignees
Labels
area: naga back-endOutputs of naga shader conversionOutputs of naga shader conversionarea: naga front-endTranslation to Naga IRTranslation to Naga IRlang: WGSLWebGPU Shading LanguageWebGPU Shading LanguagenagaShader TranslatorShader Translator
Type
Projects
Status
No status