Remove forceNonZeroScissor workaround

The original driver bug no longer exists after upgrading the bots. This
workaround has the side effect causing the bug 3867.

Bug: angleproject:3407
Bug: angleproject:3867
Change-Id: I64f2e41729f209a1cef5ba49140650207666992c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1870845
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
This commit is contained in:
jchen10 2019-10-21 15:32:27 +08:00 коммит произвёл Commit Bot
Родитель b307010280
Коммит df9a7500d3
4 изменённых файлов: 0 добавлений и 25 удалений

Просмотреть файл

@ -149,14 +149,6 @@ struct FeaturesVk : FeatureSetBase
"Gaps in bound descriptor set indices causes the post-gap sets to misbehave", &members,
"http://anglebug.com/2727"};
// When the scissor is (0,0,0,0) on Windows Intel, the driver acts as if the scissor was
// disabled. Work-around this by setting the scissor to just outside of the render area
// (e.g. (renderArea.x, renderArea.y, 1, 1)). http://anglebug.com/3407
Feature forceNonZeroScissor = {
"force_non_zero_scissor", FeatureCategory::VulkanWorkarounds,
"When the scissor is (0,0,0,0), the driver acts as if the scissor was disabled", &members,
"http://anglebug.com/3407"};
// OES_depth_texture is a commonly expected feature on Android. However it
// requires that D16_UNORM support texture filtering
// (e.g. VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT) and some devices

Просмотреть файл

@ -2054,19 +2054,6 @@ void ContextVk::updateScissor(const gl::State &glState)
scissoredArea.y = renderArea.height - scissoredArea.y - scissoredArea.height;
}
if (getRenderer()->getFeatures().forceNonZeroScissor.enabled && scissoredArea.width == 0 &&
scissoredArea.height == 0)
{
// There is no overlap between the app-set viewport and clippedRect. This code works
// around an Intel driver bug that causes the driver to treat a (0,0,0,0) scissor as if
// scissoring is disabled. In this case, set the scissor to be just outside of the
// renderArea. Remove this work-around when driver version 25.20.100.6519 has been
// deployed. http://anglebug.com/3407
scissoredArea.x = renderArea.x;
scissoredArea.y = renderArea.y;
scissoredArea.width = 1;
scissoredArea.height = 1;
}
mGraphicsPipelineDesc->updateScissor(&mGraphicsPipelineTransition,
gl_vk::GetRect(scissoredArea));

Просмотреть файл

@ -1385,8 +1385,6 @@ void RendererVk::initFeatures(const ExtensionNameList &deviceExtensionNames)
ANGLE_FEATURE_CONDITION((&mFeatures), forceOldRewriteStructSamplers, IsAndroid() && isQualcomm);
ANGLE_FEATURE_CONDITION((&mFeatures), forceNonZeroScissor, IsWindows() && isIntel);
ANGLE_FEATURE_CONDITION((&mFeatures), perFrameWindowSizeQuery,
isIntel || (IsWindows() && isAMD));

Просмотреть файл

@ -348,8 +348,6 @@ TEST_P(GLES1ConformanceTest, RescaleNormal)
TEST_P(GLES1ConformanceTest, Scissor)
{
// http://g.co/anglebug/3867
ANGLE_SKIP_TEST_IF(IsVulkan() && IsWindows() && IsIntel());
ASSERT_NE(CONFORMANCE_TEST_ERROR, ScissorExec());
}