Browse Source
Merge pull request #4013 from ReinUsesLisp/skip-no-xfb
vk_rasterizer: Skip transform feedbacks when extension is unavailable
pull/15/merge
bunnei
6 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
7 additions and
0 deletions
-
src/video_core/renderer_vulkan/vk_rasterizer.cpp
|
|
|
@ -838,6 +838,10 @@ void RasterizerVulkan::BeginTransformFeedback() { |
|
|
|
if (regs.tfb_enabled == 0) { |
|
|
|
return; |
|
|
|
} |
|
|
|
if (!device.IsExtTransformFeedbackSupported()) { |
|
|
|
LOG_ERROR(Render_Vulkan, "Transform feedbacks used but not supported"); |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
UNIMPLEMENTED_IF(regs.IsShaderConfigEnabled(Maxwell::ShaderProgram::TesselationControl) || |
|
|
|
regs.IsShaderConfigEnabled(Maxwell::ShaderProgram::TesselationEval) || |
|
|
|
@ -866,6 +870,9 @@ void RasterizerVulkan::EndTransformFeedback() { |
|
|
|
if (regs.tfb_enabled == 0) { |
|
|
|
return; |
|
|
|
} |
|
|
|
if (!device.IsExtTransformFeedbackSupported()) { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
scheduler.Record( |
|
|
|
[](vk::CommandBuffer cmdbuf) { cmdbuf.EndTransformFeedbackEXT(0, 0, nullptr, nullptr); }); |
|
|
|
|