Implement EXT_texture_sRGB_decode. This builds on the existing functionality from EXT_texture_sRGB_override, with 2 major edge cases: 1. sRGB_decode allows the texture state to be overridden by sampler state, which is implemented by forcing a a texture state sync during updateActiveTextures if a texture is bound to the same unit as a sampler with that state 2. texelFetch calls require us to reenable decoding, regardless of decode state. We add a new compiler pass (FlagSamplersWithTexelFetch) to mark samplers that are used with texelFetch in order to support this. This change also re-enables EXT_texture_sRGB_R8, which was disabled due to a dEQP bug that this change will bypass. Bug: angleproject:3609 Bug: angleproject:4503 Test: dEQP.GLES31/functional_srgb_texture_decode_skip_decode_* Test: GLES31/functional_state_query_texture_*_srgb_decode_* Test: GLES31/functional_state_query_sampler_*_srgb_decode_* Test: GLES31/functional_debug_negative_coverage_*_srgb_decode_* Test: GLES31/functional_android_extension_pack_extensions_ext_texture_srgb_decode Test: angle_end2end_tests --gtest_filter=SRGBTextureTest.*Vulkan* Change-Id: I4a67e487dc82e2f57c8c87d4bcd8ef442b6fe220 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2359481 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:Jamie Madill <jmadill@chromium.org> Reviewed-by:
Tim Van Patten <timvp@google.com>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| gles1 | Loading commit data... | |
| media | Loading commit data... | |
| ActiveTextureCacheTest.cpp | Loading commit data... | |
| AtomicCounterBufferTest.cpp | Loading commit data... | |
| AttributeLayoutTest.cpp | Loading commit data... | |
| BPTCCompressedTextureTest.cpp | Loading commit data... | |
| BindGeneratesResourceTest.cpp | Loading commit data... | |
| BindUniformLocationTest.cpp | Loading commit data... | |
| BlendFuncExtendedTest.cpp | Loading commit data... | |
| BlendIntegerTest.cpp | Loading commit data... | |
| BlendMinMaxTest.cpp | Loading commit data... | |
| BlendPackedTest.cpp | Loading commit data... | |
| BlitFramebufferANGLETest.cpp | Loading commit data... | |
| BufferDataTest.cpp | Loading commit data... | |
| BuiltinVariableTest.cpp | Loading commit data... | |
| ClearTest.cpp | Loading commit data... | |
| ClientArraysTest.cpp | Loading commit data... | |
| ClipDistanceTest.cpp | Loading commit data... | |
| ColorMaskTest.cpp | Loading commit data... | |
| ComputeShaderTest.cpp | Loading commit data... | |
| ContextLostTest.cpp | Loading commit data... | |
| ContextNoErrorTest.cpp | Loading commit data... | |
| CopyCompressedTextureTest.cpp | Loading commit data... | |
| CopyTexImageTest.cpp | Loading commit data... | |
| CopyTexture3DTest.cpp | Loading commit data... | |
| CopyTextureTest.cpp | Loading commit data... | |
| CubeMapTextureTest.cpp | Loading commit data... | |
| D3D11EmulatedIndexedBufferTest.cpp | Loading commit data... | |
| D3D11FormatTablesTest.cpp | Loading commit data... | |
| D3D11InputLayoutCacheTest.cpp | Loading commit data... | |
| D3DImageFormatConversionTest.cpp | Loading commit data... | |
| D3DTextureTest.cpp | Loading commit data... | |
| DXT1CompressedTextureTest.cpp | Loading commit data... | |
| DXTSRGBCompressedTextureTest.cpp | Loading commit data... | |
| DXTSRGBCompressedTextureTestData.inl | Loading commit data... | |
| DebugMarkerTest.cpp | Loading commit data... | |
| DebugTest.cpp | Loading commit data... | |
| DepthStencilFormatsTest.cpp | Loading commit data... | |
| DepthStencilTest.cpp | Loading commit data... | |
| DifferentStencilMasksTest.cpp | Loading commit data... | |
| DiscardFramebufferEXTTest.cpp | Loading commit data... | |
| DrawBaseVertexBaseInstanceTest.cpp | Loading commit data... | |
| DrawBaseVertexVariantsTest.cpp | Loading commit data... | |
| DrawBuffersTest.cpp | Loading commit data... | |
| DrawElementsTest.cpp | Loading commit data... | |
| ETCTextureTest.cpp | Loading commit data... | |
| ErrorMessages.cpp | Loading commit data... | |
| ExplicitContextTest.cpp | Loading commit data... | |
| ExternalWrapTest.cpp | Loading commit data... | |
| FenceSyncTests.cpp | Loading commit data... | |
| FloatingPointSurfaceTest.cpp | Loading commit data... | |
| FormatPrintTest.cpp | Loading commit data... | |
| FramebufferMixedSamplesTest.cpp | Loading commit data... | |
| FramebufferMultiviewTest.cpp | Loading commit data... | |
| FramebufferRenderMipmapTest.cpp | Loading commit data... | |
| FramebufferTest.cpp | Loading commit data... | |
| GLSLTest.cpp | Loading commit data... | |
| GeometryShaderTest.cpp | Loading commit data... | |
| GetImageTest.cpp | Loading commit data... | |
| ImageTest.cpp | Loading commit data... | |
| IncompleteTextureTest.cpp | Loading commit data... | |
| IndexBufferOffsetTest.cpp | Loading commit data... | |
| IndexedPointsTest.cpp | Loading commit data... | |
| InstancingTest.cpp | Loading commit data... | |
| LineLoopTest.cpp | Loading commit data... | |
| LinkAndRelinkTest.cpp | Loading commit data... | |
| MatrixTest.cpp | Loading commit data... | |
| MaxTextureSizeTest.cpp | Loading commit data... | |
| MemoryObjectTest.cpp | Loading commit data... | |
| MemorySizeTest.cpp | Loading commit data... | |
| MipmapTest.cpp | Loading commit data... | |
| MultiDrawTest.cpp | Loading commit data... | |
| MultisampleCompatibilityTest.cpp | Loading commit data... | |
| MultisampleTest.cpp | Loading commit data... | |
| MultisampledRenderToTextureTest.cpp | Loading commit data... | |
| MultithreadingTest.cpp | Loading commit data... | |
| MultiviewDrawTest.cpp | Loading commit data... | |
| ObjectAllocationTest.cpp | Loading commit data... | |
| OcclusionQueriesTest.cpp | Loading commit data... | |
| PBOExtensionTest.cpp | Loading commit data... | |
| PackUnpackTest.cpp | Loading commit data... | |
| ParallelShaderCompileTest.cpp | Loading commit data... | |
| PbufferTest.cpp | Loading commit data... | |
| PixmapTest.cpp | Loading commit data... | |
| PointSpritesTest.cpp | Loading commit data... | |
| ProgramBinaryTest.cpp | Loading commit data... | |
| ProgramInterfaceTest.cpp | Loading commit data... | |
| ProgramParameterTest.cpp | Loading commit data... | |
| ProgramPipelineTest.cpp | Loading commit data... | |
| ProvokingVertexTest.cpp | Loading commit data... | |
| ReadOnlyFeedbackLoopTest.cpp | Loading commit data... | |
| ReadPixelsTest.cpp | Loading commit data... | |
| RenderbufferMultisampleTest.cpp | Loading commit data... | |
| RendererTest.cpp | Loading commit data... | |
| RequestExtensionTest.cpp | Loading commit data... | |
| RobustBufferAccessBehaviorTest.cpp | Loading commit data... | |
| RobustClientMemoryTest.cpp | Loading commit data... | |
| RobustResourceInitTest.cpp | Loading commit data... | |
| S3TCTextureSizesTest.cpp | Loading commit data... | |
| SRGBFramebufferTest.cpp | Loading commit data... | |
| SRGBTextureTest.cpp | Loading commit data... | |
| SamplersTest.cpp | Loading commit data... | |
| SemaphoreTest.cpp | Loading commit data... | |
| ShaderInterpTest.cpp | Loading commit data... | |
| ShaderNonConstGlobalInitializerTest.cpp | Loading commit data... | |
| ShaderStorageBufferTest.cpp | Loading commit data... | |
| SimpleOperationTest.cpp | Loading commit data... | |
| SixteenBppTextureTest.cpp | Loading commit data... | |
| StateChangeTest.cpp | Loading commit data... | |
| SwizzleTest.cpp | Loading commit data... | |
| SyncQueriesTest.cpp | Loading commit data... | |
| TextureExternalUpdateTest.cpp | Loading commit data... | |
| TextureFilteringHintTest.cpp | Loading commit data... | |
| TextureMultisampleTest.cpp | Loading commit data... | |
| TextureRectangleTest.cpp | Loading commit data... | |
| TextureTest.cpp | Loading commit data... | |
| TextureUploadFormatTest.cpp | Loading commit data... | |
| TimerQueriesTest.cpp | Loading commit data... | |
| TransformFeedbackTest.cpp | Loading commit data... | |
| UniformBufferTest.cpp | Loading commit data... | |
| UniformTest.cpp | Loading commit data... | |
| UnpackAlignmentTest.cpp | Loading commit data... | |
| UnpackRowLength.cpp | Loading commit data... | |
| VertexAttributeTest.cpp | Loading commit data... | |
| ViewportTest.cpp | Loading commit data... | |
| VulkanDescriptorSetTest.cpp | Loading commit data... | |
| VulkanExternalImageTest.cpp | Loading commit data... | |
| VulkanFormatTablesTest.cpp | Loading commit data... | |
| VulkanFramebufferTest.cpp | Loading commit data... | |
| VulkanPerformanceCounterTest.cpp | Loading commit data... | |
| VulkanUniformUpdatesTest.cpp | Loading commit data... | |
| WEBGLVideoTextureTest.cpp | Loading commit data... | |
| WebGLCompatibilityTest.cpp | Loading commit data... | |
| WebGLFramebufferTest.cpp | Loading commit data... | |
| WebGLReadOutsideFramebufferTest.cpp | Loading commit data... |