WebGPU Internals - Miscellaneous

Validation tests

These validation tests are excluded from WebGPU because some features are not implemented in Babylon.js yet:

  • GLTF Mesh Primitive Mode (0) and GLTF Mesh Primitive Mode (1): line loop / triangle fan not implemented yet
  • GLTF Buggy with Meshopt Compression: formats others than float for the vertex buffers (position, normal, uv, ...) are not supported yet

When the features are implemented, the corresponding validation tests should be re-enabled.

The Self shadowing validation test generates rendering errors (but is still ok because there are less than 2.5% errors) because it uses exponential shadow map whose parameters (depthScale especially) depend on the precision of the depth map. In WebGL we are using a 32 bits float texture but in WebGPU it's only a half-float texture because linear filtering of 32 bits float textures are not supported (for the time being at least):

WebGPU chart

Note to core developers: YOU SHOULD RUN THE VALIDATION TESTS LOCALLY OFTEN BECAUSE THEY ARE NOT RUN ON THE AZURE SERVERS!

Run both the:

You should also run them in the "check resource creation" mode: see Check Resource Creation - WebGPU only .

TintWASM

You should update the TWGSL (Tint WASM) module regularly so that it stays in sync with the Tint source code.