mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-20 18:29:23 +00:00
Implement D3D12 Native Render Passes
Uses D3D12 native render pass API when possible. On pre-RS5 builds of Windows, Dawn will fall back to a software emulated render pass. A toggle was added to provide test coverage to the emulated render pass implementation and used in tests that test render pass functionality in particular. Bug: dawn:36 Change-Id: I297a3ec7655b68d28204db2d3ab78cb82bb4e7a5 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/13082 Reviewed-by: Austin Eng <enga@chromium.org> Commit-Queue: Brandon Jones <brandon1.jones@intel.com>
This commit is contained in:
committed by
Commit Bot service account
parent
eac7382eb2
commit
700cfe7664
@@ -506,6 +506,7 @@ TEST_P(MultisampledRenderingTest, ResolveInto2DArrayTexture) {
|
||||
DAWN_INSTANTIATE_TEST(MultisampledRenderingTest,
|
||||
D3D12Backend,
|
||||
ForceWorkarounds(D3D12Backend, {}, {"use_d3d12_resource_heap_tier2"}),
|
||||
ForceWorkarounds(D3D12Backend, {}, {"use_d3d12_render_pass"}),
|
||||
MetalBackend,
|
||||
OpenGLBackend,
|
||||
VulkanBackend,
|
||||
|
||||
@@ -171,4 +171,9 @@ TEST_P(RenderPassTest, NoCorrespondingFragmentShaderOutputs) {
|
||||
EXPECT_PIXEL_RGBA8_EQ(kRed, renderTarget, kRTSize - 1, 1);
|
||||
}
|
||||
|
||||
DAWN_INSTANTIATE_TEST(RenderPassTest, D3D12Backend, MetalBackend, OpenGLBackend, VulkanBackend);
|
||||
DAWN_INSTANTIATE_TEST(RenderPassTest,
|
||||
D3D12Backend,
|
||||
ForceWorkarounds(D3D12Backend, {}, {"use_d3d12_render_pass"}),
|
||||
MetalBackend,
|
||||
OpenGLBackend,
|
||||
VulkanBackend);
|
||||
|
||||
@@ -779,5 +779,8 @@ TEST_P(TextureZeroInitTest, RenderingLoadingDepthStencilStoreOpClear) {
|
||||
DAWN_INSTANTIATE_TEST(
|
||||
TextureZeroInitTest,
|
||||
ForceWorkarounds(D3D12Backend, {"nonzero_clear_resources_on_creation_for_testing"}),
|
||||
ForceWorkarounds(D3D12Backend,
|
||||
{"nonzero_clear_resources_on_creation_for_testing"},
|
||||
{"use_d3d12_render_pass"}),
|
||||
ForceWorkarounds(OpenGLBackend, {"nonzero_clear_resources_on_creation_for_testing"}),
|
||||
ForceWorkarounds(VulkanBackend, {"nonzero_clear_resources_on_creation_for_testing"}));
|
||||
|
||||
Reference in New Issue
Block a user