Closed Bug 1785576 Opened 2 years ago Closed 2 years ago

navigator.gpu.getPreferredCanvasFormat is not a function

Categories

(Core :: Graphics: WebGPU, defect)

Firefox 105
defect

Tracking

()

RESOLVED DUPLICATE of bug 1814091

People

(Reporter: 61304189, Unassigned)

References

Details

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0

Steps to reproduce:

Open "https://austin-eng.com/webgpu-samples/samples/helloTriangle".

Actual results:

navigator.gpu.getPreferredCanvasFormat is not a function

Expected results:

getPreferredCanvasFormat should be available.
https://gpuweb.github.io/gpuweb/#gpu-interface

I try another demo that I develop myself.
It seems that the WebGPU shipped with Firefox Nightly is old.
Uncaught (in promise) TypeError: GPUCommandEncoder.beginRenderPass: Missing required 'loadValue' member of GPURenderPassColorAttachment.
loadValue has been modified to loadOp for a long time.
https://gpuweb.github.io/gpuweb/#color-attachments

Same with GPURenderPassEncoder.end (in FF it is endPass).
Am I missing ticket with WebGPU spec update or should create new one?

Where is the ticket that I can follow the update? Could you plese give me a link? Thank you.

The severity field is not set for this bug.
:jimb, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(jimb)

It still can be reproduced on latest firefox nightly.
navigator.userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:108.0) Gecko/20100101 Firefox/108.0".

step to reproduce:

expect results: show graphic test results normally.

I've tried some tests and found other deprecated properties like loadValue in RenderPassColorAttachment, endPass in RenderPassEncoder, etc.

Some WebGPU developers rely on this, it will be really appreciated if the webgpu api exposed in JS is updated.

It's still happening on latest firefox nightly.

This issue ruins support for webgpu on Firefox for a long time. Are there any attentions?

Now that bug 1726245 (turning on WebGPU by default in Nightly on Windows and Linux) is ready to be closed, catching up with the spec becomes our priority. You can see work there in the blockers of bug 1616739. We're planning on using a mix of CTS failures and specifically the Austin Eng examples to guide our initial priorities.

There's a lot of low-hanging fruit at the moment. For example, it looks like fixing bug 1821219 causes ~5000 unexpected passes in the CTS. I think getPreferredCanvasFormat is probably in this class as well, so I've added it to the blockers list.

Blocks: webgpu-v1
Flags: needinfo?(jimb)

TL;DR: I'm gonna mark this issue as a dupe of 1814091, and explain what we've been doing for the last little bit.

CC :jimb, :jgilbert, :teoxoy, viltalyankh, 61304189, Dmitriy Nikiforov.


I can speak for progress on this as a member of the Firefox WebGPU team! We're so happy that y'all are interested in using WebGPU on Firefox! Sorry for the radio silence. There's been a lot of work we've needed to do to comply with the spec that the OP refers to. We're not quite there yet, but we think we're close to the point where we can start engaging the community about it! 😊

Like I alluded to earlier, our team has had a very full plate for the last few months. We've been:

  • Finalizing the WebGPU v1 spec alongside Google and Apple (and others) in the gpuweb/gpuweb repo on GitHub. Getting key players in the industry to agree on what WebGPU should be is not easy!
  • Working hard to finish webgpu-in-nightly, which will enable WebGPU in Nightly in Linux and Windows without flipping a pref (🙌🏻).
  • Analyzing what work we have left before we can start really inviting people to play with WebGPU on Firefox (which, N.B., we haven't really done yet). This sounds simple, but it's a lot of work for a platform as large as WebGPU. For reference, we've been working against the webgpu-v1 issue, which is the "MVP" for Firefox's implementation of WebGPU.
  • Handling some fairly chunky outstanding implementation issues that are blockers for webgpu-v1. :jimb, :jgilbert, and :teoxoy have been working super hard to make this happen. Some of the effort they've gone to is represented that Bugzilla issue, but much of the team's work is still only represented in the wgpu and naga repository milestones on GitHub, rather than here in Bugzilla.
  • Integrating the WebGPU conformance test suite (AKA the "CTS") into Firefox's CI, which proves that we're actually implementing the spec (which I did in webgpu-cts). We're now tackling the most significant blockers for getting the CTS' test cases to run successfully at webgpu-v1-cts-blockers, which we expect to mostly involve fixing the glue between JavaScript and wgpu (our back end doing all the magic). Doing this should resolve the OP and multiple other blockers you'd likely still encounter while using WebGPU.

I'm going to mark the OP issue as a dupe of 1814091, which is already linked up WRT the tracking I mentioned above. I'll add those already on CC list here to that issue, for convenience.

No longer blocks: webgpu-v1
Status: UNCONFIRMED → RESOLVED
Closed: 2 years ago
Duplicate of bug: 1814091
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.