WebGPU Sponza Demo does not run
Categories
(Core :: Graphics: WebGPU, defect)
Tracking
()
People
(Reporter: ErichDonGubler, Unassigned)
References
(Blocks 1 open bug, )
Details
Steps to reproduce
- Open the page. Observe that the page loads some controls, but otherwise only renders a black screen.
| Comment hidden (obsolete) |
| Reporter | ||
Comment 2•1 year ago
|
||
I opened a PR to track the code I wrote to triage and uncover the issues I wrote earlier: gnikoloff/webgpu-sponza-demo#24
Comment 3•1 year ago
|
||
Nice analysis!
I think permitting ptr.member was a later addition to the spec. At one point it was not allowed.
I thin relevant CTS test is here: https://github.com/gpuweb/cts/blob/9873a0fcea54ecb223e1312486dea37618eb5841/src/webgpu/shader/execution/expression/unary/address_of_and_indirection.spec.ts#L121, but it gets skipped because there is no pointer_composite_access wgsl extension in firefox/wgpu. See relevant change in spec: https://github.com/gpuweb/gpuweb/pull/4311.
| Reporter | ||
Comment 5•1 year ago
|
||
:samson: Just added tracking for the pointer_composite_access language extension via bug 1938932.
| Reporter | ||
Comment 6•1 year ago
|
||
:jimb: I've updated comment 1 to have the full set of shader validation errors emitted to console for item (1). Hope it helps!
| Reporter | ||
Comment 8•1 year ago
|
||
@must_use is now usable, now that bug 1878314 has been resolved.
Updated•1 year ago
|
Updated•1 year ago
|
| Reporter | ||
Comment 9•11 months ago
|
||
Getting the following errors now:
Shader validation error: Function [12] 'FindIntersectionHiZ' is invalid
┌─ Shader Module #23:251:3
│
251 │ ╭ fn FindIntersectionHiZ(
252 │ │ samplePosInTexSpace: vec3f,
253 │ │ reflDirInTexSpace: vec3f,
254 │ │ maxTraceDistance: f32,
· │
309 │ │ let thickness = select(0, (ray.z - cellMinZ), level == 0);
│ │ ^^^^^^ naga::ir::Expression [108]
· │
331 │ │
332 │ │ return intensity;
│ ╰─────────────────────^ naga::ir::Function [12]
│
= Expression [108] is invalid
= Expected selection argument types to match, but reject value of type Scalar(Scalar { kind: Sint, width: 4 }) does not match accept value of value Scalar(Scalar { kind: Float, width: 4 })
This is bug 1960453.
Shader validation error: Entry point main at Compute is invalid
┌─ Shader Module #25:34:13
│
34 │ let a = textureSampleLevel(srcTexture, srcSampler, vec2(texCoords.x - 2 * x, texCoords.y + 2 * y), 0).rgb;
│ ^^^^^^^^^^^^^^^^^^ naga::ir::Expression [41]
│
= Expression [41] is invalid
= Sample level (exact) type [40] has an invalid type
Shader validation error: Entry point main at Compute is invalid
┌─ Shader Module #31:94:23
│
94 │ irradiance += textureSampleLevel(inTexture, cubeSampler, sampleVector, 2).rgb * cos(theta) * sin(theta);
│ ^^^^^^^^^^^^^^^^^^ naga::ir::Expression [80]
│
= Expression [80] is invalid
= Sample level (exact) type [79] has an invalid type
This is bug 1952980.
| Reporter | ||
Comment 10•11 months ago
|
||
I can confirm that the shader compilation issues caused by bug 1952980 are now resolved. Just waiting for bug 1960453, it seems!
| Reporter | ||
Comment 11•9 months ago
|
||
Running into this error now that bug 1960453 is resolved:
Uncaptured WebGPU error: In a pass parameter, caused by: Attempted to use Texture with 'Depth + Stencil GBuffer Texture' label (mips 0..1 layers 0..1) with conflicting usages. Current usage TextureUses(RESOURCE) and new usage TextureUses(DEPTH_STENCIL_WRITE). TextureUses(DEPTH_STENCIL_WRITE) is an exclusive usage and cannot be used with any other usages within the usage scope (renderpass or compute dispatch).
Uncaptured WebGPU error: Encoder is invalid
Uncaptured WebGPU error: CommandBuffer with 'Frame Command Encoder' label is invalid
Comment 12•9 months ago
|
||
I think for this to work we need to make the trackers aware of a view's aspect; the demo probably wants to read from one aspect and write to the other in the same pass.
Description
•