HansKristian-Work / vkd3d-proton

Fork of VKD3D. Development branches for Proton's Direct3D 12 implementation.
GNU Lesser General Public License v2.1
1.76k stars 184 forks source link

tests: Add initial view instancing test. #1898

Closed doitsujin closed 5 months ago

doitsujin commented 5 months ago

Tests a bunch of different use cases, including one that can be directly supported via Vulkan multiview, dynamic view masks, layer/viewport export from both VS and GS, as well as a very simple mesh shader test (task shaders do not support ViewID in either API).

Only major thing this doesn't test right now is interations with VRS; this needs some exploring w.r.t. whether D3D12 even allows layered VRS images, everything else should behave as expected.

Status:

This does not test specifics of Tier 3 behaviour since they don't seem interesting to us, and it's difficult to observe anyway, since e.g. VS UAV writes already don't have a strong guarantee on how many times we end up running them.

Also doesn't text xfb since using multiview with xfb just seems conceptually broken, Vulkan bans it outright for this reason.