Commit 8ace36f8 by Geoff Lang Committed by Commit Bot

Revert "Add a Vulkan feature to compress float32 vertex formats."

Bug: b/167404532 Bug: b/161716126 Change-Id: I95157a006d5c1fd2d3c0c2c2be37fa0403c07f93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2510011Reviewed-by: 's avatarTim Van Patten <timvp@google.com> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
parent 3fe652d0
...@@ -449,14 +449,6 @@ struct FeaturesVk : FeatureSetBase ...@@ -449,14 +449,6 @@ struct FeaturesVk : FeatureSetBase
FeatureCategory::VulkanWorkarounds, FeatureCategory::VulkanWorkarounds,
"Force nearest mip filtering when sampling.", &members}; "Force nearest mip filtering when sampling.", &members};
// Compress float32 vertices in static buffers to float16 at draw time. ANGLE is non-conformant
// if this feature is enabled.
angle::Feature compressVertexData = {"compress_vertex_data",
angle::FeatureCategory::VulkanWorkarounds,
"Compress vertex data to smaller data types when "
"possible. Using this feature makes ANGLE non-conformant.",
&members};
// Qualcomm missynchronizes vkCmdClearAttachments in the middle of render pass. // Qualcomm missynchronizes vkCmdClearAttachments in the middle of render pass.
// https://issuetracker.google.com/166809097 // https://issuetracker.google.com/166809097
Feature preferDrawClearOverVkCmdClearAttachments = { Feature preferDrawClearOverVkCmdClearAttachments = {
......
...@@ -1998,8 +1998,6 @@ void RendererVk::initFeatures(DisplayVk *displayVk, const ExtensionNameList &dev ...@@ -1998,8 +1998,6 @@ void RendererVk::initFeatures(DisplayVk *displayVk, const ExtensionNameList &dev
ANGLE_FEATURE_CONDITION(&mFeatures, forceNearestFiltering, false); ANGLE_FEATURE_CONDITION(&mFeatures, forceNearestFiltering, false);
ANGLE_FEATURE_CONDITION(&mFeatures, forceNearestMipFiltering, false); ANGLE_FEATURE_CONDITION(&mFeatures, forceNearestMipFiltering, false);
ANGLE_FEATURE_CONDITION(&mFeatures, compressVertexData, false);
ANGLE_FEATURE_CONDITION( ANGLE_FEATURE_CONDITION(
&mFeatures, preferDrawClearOverVkCmdClearAttachments, &mFeatures, preferDrawClearOverVkCmdClearAttachments,
IsPixel2(mPhysicalDeviceProperties.vendorID, mPhysicalDeviceProperties.deviceID)); IsPixel2(mPhysicalDeviceProperties.vendorID, mPhysicalDeviceProperties.deviceID));
......
...@@ -579,14 +579,6 @@ angle::Result VertexArrayVk::syncDirtyAttrib(ContextVk *contextVk, ...@@ -579,14 +579,6 @@ angle::Result VertexArrayVk::syncDirtyAttrib(ContextVk *contextVk,
bool bindingIsAligned = BindingIsAligned( bool bindingIsAligned = BindingIsAligned(
binding, intendedFormat, intendedFormat.channelCount, attrib.relativeOffset); binding, intendedFormat, intendedFormat.channelCount, attrib.relativeOffset);
if (renderer->getFeatures().compressVertexData.enabled &&
gl::IsStaticBufferUsage(bufferGL->getUsage()) &&
vertexFormat.actualCompressedBufferFormatID != angle::FormatID::NONE &&
vertexFormat.actualBufferFormatID != vertexFormat.actualCompressedBufferFormatID)
{
compressed = true;
}
if (vertexFormat.getVertexLoadRequiresConversion(compressed) || !bindingIsAligned) if (vertexFormat.getVertexLoadRequiresConversion(compressed) || !bindingIsAligned)
{ {
ConversionBuffer *conversion = bufferVk->getVertexConversionBuffer( ConversionBuffer *conversion = bufferVk->getVertexConversionBuffer(
...@@ -594,13 +586,6 @@ angle::Result VertexArrayVk::syncDirtyAttrib(ContextVk *contextVk, ...@@ -594,13 +586,6 @@ angle::Result VertexArrayVk::syncDirtyAttrib(ContextVk *contextVk,
binding.getOffset() + attrib.relativeOffset, !bindingIsAligned); binding.getOffset() + attrib.relativeOffset, !bindingIsAligned);
if (conversion->dirty) if (conversion->dirty)
{ {
if (compressed)
{
INFO() << "Compressing vertex data in buffer " << bufferGL->id().value
<< " from " << vertexFormat.vkBufferFormat << " to "
<< vertexFormat.vkCompressedBufferFormat << ".";
}
if (bindingIsAligned) if (bindingIsAligned)
{ {
ANGLE_TRY(convertVertexBufferGPU(contextVk, bufferVk, binding, attribIndex, ANGLE_TRY(convertVertexBufferGPU(contextVk, bufferVk, binding, attribIndex,
......
...@@ -167,7 +167,7 @@ void Format::initBufferFallback(RendererVk *renderer, ...@@ -167,7 +167,7 @@ void Format::initBufferFallback(RendererVk *renderer,
vertexLoadRequiresConversion = info[i].vertexLoadRequiresConversion; vertexLoadRequiresConversion = info[i].vertexLoadRequiresConversion;
} }
if (renderer->getFeatures().compressVertexData.enabled && compressedStartIndex < numInfo) if (compressedStartIndex < numInfo)
{ {
int i = FindSupportedFormat(renderer, info, compressedStartIndex, numInfo, int i = FindSupportedFormat(renderer, info, compressedStartIndex, numInfo,
HasFullBufferFormatSupport); HasFullBufferFormatSupport);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment