You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When drawing lines using PrimitiveTopology::LineList or PrimitiveTopology::LineStrip, they are 1px thick on Vulkan and Gl, but on Dx12 they are thicker than 1px when MSAA sample count is greater than 1.
Rasterization rules for primitives are, in general, unchanged by multisample antialiasing, except:
[...]
A line is treated as a rectangle made up of two triangles, with a line width of 1.4.
Repro steps
Draw a line on Dx12 using PrimitiveTopology::LineList or PrimitiveTopology::LineStrip with MultisampleState.count > 1.
Expected vs observed behavior
Expected: lines always have 1px.
Observed: lines have 1px for Vulkan, Gl, Dx12 without MSAA, but they are thicker than 1px for Dx12 with MSAA.
Extra materials
Dx12 with MSAA on Windows
Vulkan with MSAA on Linux
Platform
I actually do not use Windows at all, but unfortunately our tests at Ruffle started failing on the Windows runner when I started using PrimitiveTopology::LineStrip (ruffle-rs/ruffle#16619, failing job). I have confirmed that it in fact does look like that on a Windows machine.
The text was updated successfully, but these errors were encountered:
This probably needs to be bumped up to webgpu as it's unclear what we're supposed to do here - I suspect there's not a ton we can do about this, without extremely expensive polyfills.
Specifies whether to use the quadrilateral or alpha line anti-aliasing algorithm on multisample antialiasing (MSAA) render targets. Set to TRUE to use the quadrilateral line anti-aliasing algorithm and to FALSE to use the alpha line anti-aliasing algorithm. For more info about this member, see Remarks.
Description
When drawing lines using
PrimitiveTopology::LineList
orPrimitiveTopology::LineStrip
, they are 1px thick onVulkan
andGl
, but onDx12
they are thicker than 1px when MSAA sample count is greater than 1.I suspect this has something to do with their rasterization rules:
Repro steps
Draw a line on
Dx12
usingPrimitiveTopology::LineList
orPrimitiveTopology::LineStrip
withMultisampleState.count > 1
.Expected vs observed behavior
Expected: lines always have 1px.
Observed: lines have 1px for
Vulkan
,Gl
,Dx12
without MSAA, but they are thicker than 1px forDx12
with MSAA.Extra materials
Dx12
with MSAA on WindowsVulkan
with MSAA on LinuxPlatform
I actually do not use Windows at all, but unfortunately our tests at Ruffle started failing on the Windows runner when I started using
PrimitiveTopology::LineStrip
(ruffle-rs/ruffle#16619, failing job). I have confirmed that it in fact does look like that on a Windows machine.The text was updated successfully, but these errors were encountered: