Skip to content
Permalink
Browse files

Merge pull request #8283 from stenzek/d3d11-null-render-target

D3D11: Only use integer RTV when logic op is supported+enabled
  • Loading branch information...
stenzek committed Aug 4, 2019
2 parents 64c0ff5 + d78a935 commit 4ccb4ef74fc8fd88b8fc62a2ec05ddb3fc84a94e
Showing with 9 additions and 5 deletions.
  1. +9 −5 Source/Core/VideoBackends/D3D/DXPipeline.cpp
@@ -55,10 +55,14 @@ std::unique_ptr<DXPipeline> DXPipeline::Create(const AbstractPipelineConfig& con
vertex_shader->GetByteCode().size()) :
nullptr;

return std::make_unique<DXPipeline>(
input_layout, vertex_shader->GetD3DVertexShader(),
geometry_shader ? geometry_shader->GetD3DGeometryShader() : nullptr,
pixel_shader->GetD3DPixelShader(), rasterizer_state, depth_state, blend_state,
primitive_topology, config.blending_state.logicopenable);
// Only use the integer RTV if logic op is supported, and enabled.
const bool use_logic_op =
config.blending_state.logicopenable && g_ActiveConfig.backend_info.bSupportsLogicOp;

return std::make_unique<DXPipeline>(input_layout, vertex_shader->GetD3DVertexShader(),
geometry_shader ? geometry_shader->GetD3DGeometryShader() :
nullptr,
pixel_shader->GetD3DPixelShader(), rasterizer_state,
depth_state, blend_state, primitive_topology, use_logic_op);
}
} // namespace DX11

0 comments on commit 4ccb4ef

Please sign in to comment.
You can’t perform that action at this time.