Closed Bug 1710550 Opened 4 years ago Closed 4 years ago

WebGPU MSAA resolve target doesn't present correctly

Categories

(Core :: Graphics: WebGPU, defect)

defect

Tracking

()

RESOLVED FIXED
90 Branch
Tracking Status
firefox90 --- fixed

People

(Reporter: kvark, Assigned: kvark)

Details

Attachments

(1 file)

Refreshing the page works occasionally. Things are clearly rendered, just not displayed correctly.

Test program:

const adapter = await navigator.gpu.requestAdapter();
  const device = await adapter.requestDevice();

  const canvas = document.getElementById("webgpu-canvas");
    canvas.width = window.innerWidth;
    canvas.height = window.innerHeight;

  const context = canvas.getContext("gpupresent");
  const swapChainFormat = context.getSwapChainPreferredFormat(adapter);
  const swapChain = context.configureSwapChain({
      device,
      format: swapChainFormat,
  });

  const texture = device.createTexture({
    size: { width: canvas.width, height: canvas.height, depth: 1 },
    format: swapChainFormat,
    usage: GPUTextureUsage.RENDER_ATTACHMENT,
    sampleCount: 4,
  });
  const view = texture.createView();
  var i = 0;

  requestAnimationFrame(function draw() {
      const encoder = device.createCommandEncoder();
      const pass = encoder.beginRenderPass({
        colorAttachments: [{
          view,
          resolveTarget: swapChain.getCurrentTexture().createView(),
          loadValue: { r: i, g: 255-i, b: 0, a: 255 },
          storeOp: "clear",
        }],
      });
      pass.endPass();
      const command_buffer = encoder.finish();
      device.queue.submit([command_buffer]);

      requestAnimationFrame(draw);
      i+=1;
      if (i > 255) { i = 0; }
  });
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: