|
c0bbe6cf
|
2020-12-16T11:56:52
|
|
Unsuppress TextureCubeTest.CubeMapFBO on Intel/Win/Vulkan
This disables forceCpuPathForCubeMapCopy as well
Bug: angleproject:2822
Bug: angleproject:3055
Change-Id: Iecb37d0c2d109e319c67310dd64ad8d4bbc14fd8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2594707
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
56330564
|
2020-12-10T00:46:04
|
|
Vulkan: Support layered framebuffers
This feature is introduced by geometry shaders, where all the layers of
a texture can be attached to a framebuffer. The geometry shader would
use gl_Layer to decide which layer the primitive should be rendered to.
Bug: angleproject:3571
Change-Id: Ib2ae8e227b226295f9e2f62f6b230839070bc95c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2582711
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
5850c748
|
2020-11-20T22:14:27
|
|
Vulkan: Emulated RGB copies in compute
The copy between emulated RGB formats can take a number of paths:
- Sample from src (reinterpreted as UINT), output to dst
- Sample from src, output to temp buffer, copy to dst
- Copy src to temp buffer, output to dst
- Copy src to temp buffer, convert to another temp buffer, copy to dst
While directly sampling from src and outputting to dst is more
efficient, these are not always possible. The former may not have
SAMPLED_IMAGE usage bit for the reinterpreted UINT format, and the
latter may not have STORAGE_IMAGE usage at all.
This change takes the universal approach of using two temp buffers. The
ConvertVertex shader is used to transform between RGB and RGBA when
copying from the first temp buffer to the second.
Bug: angleproject:5278
Change-Id: I63d916cfdb4c389f5b817d89cd7348fdea703ce5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2556467
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Schade <b.schade@samsung.com>
|
|
f98f18f6
|
2020-11-17T18:42:35
|
|
Remove Nexus 6P expectations
Bot decommissioned in crrev.com/c/2541579
Bug: chromium:1148989, angleproject:5280, angleproject:3726
Bug: angleproject:2641, angleproject:3264, angleproject:2114
Bug: angleproject:3464, angleproject:4991, angleproject:1415
Bug: angleproject:2407, angleproject:1427, angleproject:4215
Bug: angleproject:1429, angleproject:5069, chromium:998503
Change-Id: I1b268fdbcf6465aef447e90e470c1a011c7b3747
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2545892
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
bacb8dfc
|
2020-11-17T11:31:49
|
|
Add TODOs for Apple DTK skips; update bug urls
Bug: angleproject:5360
Change-Id: Ibad5be256f08c893caebd6fa268668b966556d13
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2544907
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
12804827
|
2020-11-17T10:50:01
|
|
Disable more tests for Apple DTK (macOS ARM)
Some of these new failures are on ES3-on-Metal and probably cropped up
because they weren't running before.
Bug: chromium:1132295
Change-Id: I631c53f1e6cf1374b0f3af62c9713456c924c6a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2545122
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
|
|
c669bf52
|
2020-11-09T21:39:04
|
|
Vulkan: Optimize PBO copy from depth xor stencil src
If the buffer format of the PBO does not contain both depth and stencil,
it already has packed data ready for upload, so this change allows the
GPU path to be taken.
Bug: angleproject:5315
Bug: b/172354898
Change-Id: I424c15951594f49ffc140f9cde9e7c73486512b3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2526947
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5b52afae
|
2020-11-11T15:26:39
|
|
Fix texture buffer width query
If glTexBuffer is used, the width should be calculated based on the
buffer size. Since ES doesn't have immutable buffers,
EXT_texture_buffer allows mutable buffers to be attached to the texture.
This means that updates to the buffer must update the image description.
This is done by having the texture observe the attached buffer.
Bug: angleproject:3573
Bug: angleproject:5334
Test: dEQP-GLES31.functional.state_query.texture_level.texture_buffer.width_*
Test: TextureBufferTestES31.QueryWidthAfterBufferResize
Change-Id: I7d9e5344a3d4ea70da7ba525f13b5876481a70a3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2533495
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
36787dcb
|
2020-11-04T23:06:47
|
|
Vulkan: Fix PBO assuming color images
Bug: b/172354898
Change-Id: I777eaa33ddac853492d38a03c16caeddad0c2d16
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2520108
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
1e494cae
|
2020-10-07T19:26:01
|
|
Vulkan: Add support for EXT_copy_image
Add support for GL_EXT_copy_image which allows
image data transfer between image objects.
This is implemented by using the vkCmdCopyImage
API call.
Bug: angleproject:3593
Test: dEQP-GLES31.functional.copy_image.*
Change-Id: I30a34a8711b5d2e5834064d7453e03d6ec0df478
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2393955
Commit-Queue: Brandon Schade <b.schade@samsung.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8a275449
|
2020-10-25T03:22:10
|
|
Metal: Add ES3_METAL to ANGLE_ALL_TEST_PLATFORMS_ES3
Bug: angleproject:2634
Change-Id: Iacc3aaf17565c7b16879897db4b9dac16826d829
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2494526
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f69fe097
|
2020-10-14T16:44:37
|
|
Create test Texture2DTestES3::ChangeTexSizeWithTexStorage()
Create the test Texture2DTestES3::ChangeTexSizeWithTexStorage() which
confirms that releaseImage() needs to be called by
setStorageMultisample() to re-allocate the Image after ensuring the
ImageHelpers has been created correctly.
Bug: angleproject:5254
Bug: angleproject:5256
Test: Texture2DTestES3::ChangeTexSizeWithTexStorage
Change-Id: I7ede9f7360b73bc445125b2a99efd60c9c4c110d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2472999
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9ff58e26
|
2020-09-27T15:27:12
|
|
Metal: Implement sampler object & shadow compare mode
Note: GL_TEXTURE_COMPARE_MODE=GL_NONE is not supported on shadow sampler
for now.
Bug: angleproject:2634
Change-Id: I470bad6322e78ef1408e4334e1e778821df7cbf1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2433332
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
80d4901a
|
2020-09-26T19:22:00
|
|
Metal: Support integer textures.
Bug: angleproject:2634
Bug: angleproject:5154
Change-Id: Iffea26fe2c683557b4fa7c13fddf3523294b47d4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2433329
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
27e7e446
|
2020-09-27T00:00:35
|
|
Metal: Support 2D array textures and base & max levels.
Bug: angleproject:2634
Change-Id: If9e50cec46bdf5f472f1e58c6e82a67b524e2408
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2433327
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
4c6b4794
|
2020-10-12T12:37:29
|
|
Vulkan: TexSubImage3D using PBO should use correct layerCount
The layerCount for 3D texture and 2DArray should be 1 if it does not
have layers.
Bug: b/170657065
Change-Id: I974ddda7c0eaa92da8033f15c682820e3d4eb32a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2466616
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
b2ff69f8
|
2020-10-09T08:54:00
|
|
Suppress Mac/GL test failures with standalone runner.
These tests fail when run in certain orders with display reusei
on the bots. See issues for list of suppressed tests.
Bug: angleproject:5154
Bug: angleproject:5153
Change-Id: I1b4a523ba000785f4f8c26eeb236c518481ed7af
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462715
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e0780931
|
2020-10-08T17:57:47
|
|
Suppress gl_test failures on Mac ARM64 (Apple DTK)
BuiltinVariableFragDepthClampingFloatRBOTest.Below1/ES3_OpenGL
CopyTexImageTest.DeleteAfterCopyingToTextures/ES2_OpenGL
GLSLTest.MaxVaryingVec2Arrays/ES2_Metal
GLSLTest.MaxVaryingVec3ArrayAndOneFloatArray/ES2_Metal
GLSLTest.MoreNestedCompoundStructsWithSamplersAsFunctionArg/ES2_OpenGL
GLSLTest.NestedCompoundStructsWithSamplersAsFunctionArg/ES2_OpenGL
GLSLTest.NestedStructsWithSamplersAsFunctionArg/ES2_OpenGL
GLSLTest.NestedStructsWithSamplersAsFunctionArg/ES3_OpenGL
MipmapTestES3.BaseLevelTextureBug/ES3_OpenGL
MipmapTestES3.GenerateMipmapBaseLevel/ES3_OpenGL
MipmapTestES3.GenerateMipmapCubeBaseLevel/ES3_OpenGL
MipmapTestES3.GenerateMipmapMaxLevel/ES3_OpenGL
MipmapTestES3.GenerateMipmapPreservesOutOfRangeMips/ES3_OpenGL
OcclusionQueriesTest.MultiQueries/ES2_Metal
Texture2DBaseMaxTestES3.GenerateMipmapAfterRedefineAndRebase/ES3_OpenGL
Texture2DFloatTestES2.TextureFloatLinearLegacyTest/ES2_Metal
Texture2DFloatTestES2.TextureFloatLinearLegacyTest/ES2_OpenGL
Texture2DFloatTestES2.TextureFloatLinearTest/ES2_Metal
Texture2DFloatTestES2.TextureFloatLinearTest/ES2_OpenGL
Texture2DFloatTestES3.TextureFloatLinearLegacyTest/ES3_OpenGL
Texture2DFloatTestES3.TextureFloatLinearTest/ES3_OpenGL
TimerQueriesTest.TimeElapsed/ES3_OpenGL
TimerQueriesTest.TimeElapsedMulticontextTest/ES3_OpenGL
WebGLCompatibilityTest.TextureCopyingFeedbackLoops/ES2_OpenGL
WebGLCompatibilityTest.TextureCopyingFeedbackLoops/ES3_OpenGL
Bug: chromium:1132295
Change-Id: If64dc67275063c8046dbc941d92de273fbc226e5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2461674
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e815afbf
|
2020-09-07T22:09:22
|
|
First pass at increasing inclusivity
Link to the inclusivity rules
https://source.android.com/setup/contribute/respectful-code
Bug: b/162834212
Bug: chromium:1097198
Change-Id: Ied5a9e3879d72bff3f77ea6fcda9b82f30c32c2f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2396737
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Trevor Black <vantablack@google.com>
|
|
7bd8bd9f
|
2020-09-24T17:11:56
|
|
Skip PBO test on TSAN.
Texture2DTest.TexStorageWithPBO/ES2_OpenGL is flaky.
Bug: b/168744561
Bug: angleproject:5097
Change-Id: Ide9b5a7d22e86c6eccd83ebc3bce6797b90150a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2430163
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
cd83b608
|
2020-09-18T14:54:54
|
|
Use ImageHelper staging buffers for copyImageDataToBuffer
Revert change from using context staging buffers for
copyImageDataToBuffer. There are scenarios where the
staging buffer will become invalid before flushing
the staged update. Added a test for this case.
Bug: angleproject:5092
Test: angle_end2end_tests --gtest_filter=*ETC1CompressedImageDraws*
Change-Id: I41c457fda919938600c20336f65836952d73748a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2425250
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
6c394220
|
2020-09-09T18:55:48
|
|
Vulkan: Fix bug in compressed texel block computation
When performing a staged update to compressed images,
ensure that the bufferRowLength and bufferImageHeight
is a multiple of the compressed texel block
Bug: angleproject:5017
Test: angle_end2end_test --gtest_filter=*ETC1CompressedImageNPOT*
Change-Id: I54327ec610d1050465d112c7eff385d19dc0c390
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2393754
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
bdecaf33
|
2020-08-04T20:16:27
|
|
Metal: Implement PBO.
Bug: angleproject:2634
Change-Id: I77f085227298bf46361825d1886e04830dc9987a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2336558
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e56ccc49
|
2020-09-21T14:38:39
|
|
Skip Texture2DTest.TexStorageWithPBO on Win NVIDIA GL
Fails on 456.38 driver.
Bug: angleproject:5081
Change-Id: Ic92f4a9911d97209fd7240f5ba93ee6f81dd3ace
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2422083
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
c0dda021
|
2020-08-26T11:20:06
|
|
Vulkan: release the ImageHelper's staging buffer after flush
For mutable textures, right now glTexImage call and some of other cases,
we are still using the ImageHelper's staging buffer. This will release
the staging buffer after flush to reduce memory footprint.
Bug: b/164511310
Change-Id: Ie1e52865a1c3a8f235c88331c4bb83c50d3f04da
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2378179
Reviewed-by: back sept 10 - Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
a0d048a4
|
2020-08-27T12:03:02
|
|
Vulkan: Fool-proof usage of GL and VK level indices
Using boxed types, this change allows the compiler to catch errors when
a level index in one space (e.g. GL) is mistakenly used in another space
(e.g. VK).
This change uncovered a number of bugs due to such mistakes which are
fixed.
Mistakes are still possible when the index is explicitly extracted, for
example to be given to a Vulkan command, or when it's created, for
example when retrieved from gl::ImageIndex::getLevelIndex. Future work
can include using gl::LevelIndex in gl::ImageIndex directly to alleviate
the latter at least.
Bug: angleproject:4880
Change-Id: I6427c68c3bc096f771402f51c8554d8171758aa9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2380232
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
acda9dde
|
2020-08-08T18:36:57
|
|
Metal: Implement GL_OES_texture_3D
Bug: angleproject:2634
Change-Id: I8c46493ac28fe1bbfdb29ee3a60b23076bbc4c0c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2336119
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
a5a08b5e
|
2020-07-31T01:57:33
|
|
Metal: Enable end2end tests on Intel.
Bug: angleproject:4133
Bug: angleproject:2634
Change-Id: I3eff5ff81e908eec2990eb036728aa9878c8f802
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2329090
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0757a61a
|
2020-07-03T10:03:08
|
|
Remove suppression of passing test
Bug: angleproject:4698
Change-Id: I1c97f27534f25e1b63b1e07a82ffade353f805d2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2280983
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8ea72e86
|
2020-06-29T23:42:42
|
|
Skip failing test on NVIDIA Shield
Bug: chromium:1100613
Change-Id: I1e05b2b7829ee790f878bf99976310c8a697faa2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2274520
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
6b49449d
|
2020-06-25T12:25:33
|
|
Vulkan: Fix mipmap generation and level redefinition
When generating mipmaps, the non-base levels are redefined to be
compatible. mRedefinedLevels was not updated to take this into account,
resulting in invalid copies to the image.
Additionally, noted a few spots where ImageDesc is used to respecify the
image, but those are not up-to-date when the backend functions are
called. Changed those to directly get the necessary information from
the allocated image.
Bug: chromium:1094644
Bug: chromium:1094599
Change-Id: I2afc9e5a53f24ef56836c5d7eec2e3e11df0ef61
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2267423
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
89001914
|
2020-06-24T14:56:15
|
|
Suppress TextureTest failure on NVIDIA Shield.
Texture2DTestES3.IncompatibleMipsButNoMipmapFiltering/ES3_OpenGL started
failing on NVIDIA Shield right after it was introduced.
TBR=syoussefi@chromium.org
Bug: angleproject:4786
Change-Id: I9805e4d22a01395a8b0eb47243b07fbf2abd6f4a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2264092
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
cf11beed
|
2020-06-22T15:51:51
|
|
Add mip-related corner-case tests
Bug: angleproject:4780
Bug: angleproject:4781
Change-Id: Iaf8e1df576c3676249751413a646244da41a0eaf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2258476
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7005248b
|
2020-06-11T16:00:23
|
|
Vulkan: Fix glCopyTextureCHROMIUM if source is swizzled
A no-swizzle view is added for this use-case.
Bug: angleproject:4004
Change-Id: Id654af9a4f520357c91bf2b06501c9e1ea169f11
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2241623
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
15cff312
|
2020-06-10T22:44:22
|
|
Move lod-sampling shaders to shader utils
Will be reused in a test in a following change.
Bug: angleproject:2914
Change-Id: I4e255d5c762f2a6c064b06c558519d82ec6ead5f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2239085
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
000a79f1
|
2020-06-04T23:06:58
|
|
Vulkan: Better handling of texture level redefinition
If a texture level is being redefined, there are two scenarios to
consider:
1. The level is outside the base/max level, for which the image was
allocated.
2. The level is within the base/max level, but it's being redefined to a
different size or format.
In the former case, we simply don't need to release the image.
The latter case itself has two possibilities:
2.1. There is only one level in the image.
2.2. There are multiple levels in the image.
In case 2.1, the whole image is being redefined (as it has only a single
level), so the image can (and should) be released. Prior to this
change, this behavior was adopted for all cases. This change retains
this behavior for this case only.
In case 2.2, the texture is becoming incomplete. However, the image
shouldn't yet be released because another one of its mips may be bound
to a framebuffer. In such cases as glCopyTexImage2D(), that framebuffer
may in fact be the source of the copy operation (which would be
destroyed if the image is released). If the base/max level of the
texture doesn't change, redefining the level and making the texture
incomplete doesn't make the framebuffer incomplete; this is achieved at
the same time by not releasing the image.
This change ensures that updates to the redefined level are staged in
cases 1 and 2.2.
Bug: angleproject:4274
Change-Id: I3fac3203c2fbbc16e8e4a35b1334b767120b2dcf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2230853
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c39d25ae
|
2020-06-01T12:42:33
|
|
Update State to check mExecutable
A user may be using Program Pipelines, rather than monolithic Programs,
so State should check if mExecutable is valid, rather than mProgram,
since that indicates the presence of either a PPO or a Program.
Exercising these paths requires additional tests:
SimpleStateChangeTestComputeES31PPO::DeleteImageTextureInUse()
Texture2DTestES31PPO::TexStorage()
Texture2DTestES31PPO::SingleTextureMultipleSamplers()
These new tests exposed bugs in the PPO implementation where updates to
the active Program's ProgramExecutable were not being propagated to the
Executables of the PPO's containing that Program. In these particular
cases, updates to the active samplers/images/textures were not being
copied to the PPO's Executable.
Bug: angleproject:3570
Test: end2end tests listed above
Change-Id: I297cac2d0367f180dd7fa01a1ee7ba53996867c4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2225417
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3d2de99e
|
2020-06-09T01:14:42
|
|
Vulkan: Fix RTs attached to textures with non-0 mip
Cleared confusion between GL level indices and VK level indices by
adding the corresponding suffix to variables and function arguments. A
handful of places that sent one index and expected the other are fixed.
The conversion between the two is given by:
levelIndexGL = levelIndexVk + baseLevel;
Bug: angleproject:4695
Change-Id: I84ecbaf867d00a40fb39b6db7ad79658016f4d9a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2235362
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
dbb18b53
|
2020-06-05T15:23:17
|
|
Add texture base-level related tests
Bug: angleproject:4695
Bug: angleproject:4696
Bug: angleproject:4698
Bug: angleproject:4699
Bug: angleproject:4701
Change-Id: Ia49e2100851c029b1ae05bc1398528170d71c3cb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2233402
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
336e8915
|
2020-05-29T16:09:47
|
|
Workaround broken copyTexImage2D on iOS
Use BlitGL to reimplement copyTex[Sub]Image2D on iOS.
Bug: angleproject:4674
Change-Id: Ie3018d6d33da57797162922410f76557124df4b6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2222718
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
57f7b690
|
2020-06-05T00:45:01
|
|
Vulkan: Enable passing tests
Bug: angleproject:3950
Change-Id: I091d99951772479ef2fbdb2ac51e5bf52a263da7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2231983
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e7d27705
|
2020-04-30T05:50:21
|
|
Fix corruption when changing the base level of a framebuffer texture attachment
In the D3D renderer, changing the base level may trigger re-allocation
of the texture storage, for example if the new base level has a
different aspect ratio. During the process, image contents in the
texture storage should be backed up properly. The D3D11 backend does
this if an image has been associated with the texture storage, but it
may happen such an association has never been established, and
corruption will be observed then.
The proposed patch mitigates the problem by introducing a new method
named findRenderTarget(), with which one can tell if a mip level has
been used as the render target. This works based on the fact that render
targets are cached in the texture storage object. Hence all mip levels
of interest can be found, without relying on the association between
images and texture storage.
Bug: angleproject:2291
Change-Id: Ic73af7b603be25c65760928f276bec16df003baf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2158830
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
eba008ad
|
2020-05-05T10:46:21
|
|
Add end2end test for changing MAX_LEVEL with compressed texture
This is a follow-on to
https://chromium-review.googlesource.com/c/angle/angle/+/2180881.
This adds a comment explaining part of that solution, and an end2end
test that creates a compressed texture and then renders after
decreasing MAX_LEVEL and then again after increasing MAX_LEVEL.
Bug: b/155499736
Change-Id: I04bb0dc9ead2807f7121e4c6b95ffd3594d5dcc0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2182174
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
74e816bf
|
2020-03-26T17:40:25
|
|
Vulkan: Expose extension for ETC1 usage with subimage updates
This CL implements the GL_EXT_compressed_ETC1_RGB8_sub_texture
extension, which was added to relax restrictions on using
ETC1_RGB8_OES for subimage updates.
Test: Temple Run on Android
Bug: b:152512564
Change-Id: I78cfd7dfd54fab36dee59a93b3ec3bfce17e73e4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2123232
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
abaa3573
|
2020-02-20T10:23:02
|
|
Vulkan: Only calculate variable locations once
Variable locations and descriptor set/binding values are calculated
multiple times:
- Compiling GLSL->SPIR-V
- Creating the Vulkan pipeline layout
- Updating descriptor sets
These values should instead be calculated once and reused throughout
since they won't change without recompiling the shader program.
Bug: angleproject:3570
Change-Id: I5d8767b3b2e2f741aade7fec9991eea53ee2eb98
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2067101
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
788fa360
|
2020-02-10T14:07:12
|
|
Suppress two failing NVIDIA D3D11 tests.
Bug: angleproject:4391
Bug: angleproject:4392
Change-Id: I81cbf261cf206cd2d38cff93d16056c21bf78557
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2047416
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4546c5ce
|
2020-01-31T15:05:35
|
|
Skip failing end2end tests on Windows on ARM
There are multiple failing tests on Windows on ARM which are related to drawing differences.
They seem to be similar to an already reported issue (anglebug.com/3748).
Bug: angleproject:4356
Bug: angleproject:4357
Change-Id: Ide5cc2e6f42d4c4b6fb88352833d20e517005c14
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2033067
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
81ee4d29
|
2019-12-04T17:05:11
|
|
Workaround EXT_texture_norm16 for OpenGL ES drivers
Implement a workaround for widespread bugs calling glReadPixels with
RGBA/UNSIGNED_SHORT against R16/RG16 color attachments. Read back the
data using the GL_IMPLEMENTATION_COLOR_READ_FORMAT, and then rearrange
the read back pixels to fit the RGBA layout.
Also skip RGB16/RGB16_SNORM texture sample test on Nexus 5X/Nexus 6P
due to a another driver bug.
Bug: chromium:1000354, angleproject:4214, angleproject:4215, angleproject:4245
Change-Id: Iedea6f4136878cac5ad0dec3757c77b73502e1cd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1952166
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
fc3ec57d
|
2019-11-27T21:43:22
|
|
Reland "Vulkan: Accelerate Texture PBO updates"
This reverts commit 27d3c9399925d23726880ef910b9068fa39307cf.
Reason for revert: Investigation is unable to reproduce the regresion.
Shows up on the perf CI.
Original change's description:
> Revert "Vulkan: Accelerate Texture PBO updates"
>
> This reverts commit efb45edaefc07fc7120ebbde83bbc84876afda1a.
>
> Reason for revert: Significant perf regression on several benchmarks.
> See bug for more details.
>
> Bug: chromium:1027098
>
> Original change's description:
> > Vulkan: Accelerate Texture PBO updates
> >
> > If the format of the image and the PBO match,
> > use a vkCmdCopyBufferToImage transfer operation.
> >
> > Test: angle_end2end_tests --gtest_filter=*PBOCompressedSubImage*
> > angle_end2end_tests --gtest_filter=*PBOWithMultipleDraws*
> > dEQP-GLES3.functional.texture.specification.tex*image*d_pbo*
> > Bug: angleproject:3777
> > Change-Id: I3f271024a635be113202a16f8893a199c194172d
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1906203
> > Reviewed-by: Cody Northrop <cnorthrop@google.com>
> > Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
>
> TBR=cnorthrop@google.com,syoussefi@chromium.org,jmadill@chromium.org,m.maiya@samsung.com,b.schade@samsung.com
>
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> Bug: angleproject:3777
> Change-Id: I774655962e9ab5a866b9324002fb8edae8550834
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1939927
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
TBR=cnorthrop@google.com,syoussefi@chromium.org,jmadill@chromium.org,m.maiya@samsung.com,b.schade@samsung.com
Change-Id: I8560a2e70de230eac3256a1df5eb2ecaa6f26bcf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1027098, angleproject:3777
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1939852
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
27d3c939
|
2019-11-27T11:39:41
|
|
Revert "Vulkan: Accelerate Texture PBO updates"
This reverts commit efb45edaefc07fc7120ebbde83bbc84876afda1a.
Reason for revert: Significant perf regression on several benchmarks.
See bug for more details.
Bug: chromium:1027098
Original change's description:
> Vulkan: Accelerate Texture PBO updates
>
> If the format of the image and the PBO match,
> use a vkCmdCopyBufferToImage transfer operation.
>
> Test: angle_end2end_tests --gtest_filter=*PBOCompressedSubImage*
> angle_end2end_tests --gtest_filter=*PBOWithMultipleDraws*
> dEQP-GLES3.functional.texture.specification.tex*image*d_pbo*
> Bug: angleproject:3777
> Change-Id: I3f271024a635be113202a16f8893a199c194172d
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1906203
> Reviewed-by: Cody Northrop <cnorthrop@google.com>
> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
TBR=cnorthrop@google.com,syoussefi@chromium.org,jmadill@chromium.org,m.maiya@samsung.com,b.schade@samsung.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: angleproject:3777
Change-Id: I774655962e9ab5a866b9324002fb8edae8550834
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1939927
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
fb1c2fe8
|
2019-11-13T11:10:39
|
|
EXT_texture_norm16 readpixels fix
Adding validation logic for RGBA16 readpixels.
Change readPixels format from UNSIGNED_BYTE to UNSIGNED_SHORT in the
test.
FYI:
According to https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_texture_norm16.txt
ReadPixels format and type used during CopyTex* are limited to RGBA
Bug: 1024387, 1000354, angleproject:1365, angleproject:4089
Change-Id: I70517f255fe335f60e55bdf15f7ebf82e3de0800
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1914127
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
efb45eda
|
2019-09-24T09:23:53
|
|
Vulkan: Accelerate Texture PBO updates
If the format of the image and the PBO match,
use a vkCmdCopyBufferToImage transfer operation.
Test: angle_end2end_tests --gtest_filter=*PBOCompressedSubImage*
angle_end2end_tests --gtest_filter=*PBOWithMultipleDraws*
dEQP-GLES3.functional.texture.specification.tex*image*d_pbo*
Bug: angleproject:3777
Change-Id: I3f271024a635be113202a16f8893a199c194172d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1906203
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
9107577c
|
2019-11-18T15:00:29
|
|
Skip TextureNorm16Test on Nexus6P
Since either revert of the original patch or the new fix is failing
some bots, suppress it first.
https://chromium-review.googlesource.com/c/angle/angle/+/1917423
https://chromium-review.googlesource.com/c/angle/angle/+/1914127
TBR=geofflang@chromium.org
Bug: 1024387, angleproject:4089
Change-Id: I56fe0ba7e8a33f72b287528e920d6733e9cb5037
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1922602
Reviewed-by: Shrek Shao <shrekshao@google.com>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
1a01b4b3
|
2019-11-11T16:41:07
|
|
Refactor end2end test macros
This is a foundational CL to enabling the end2end tests on swiftshader.
Refactored infrastructure with new ANGLE_INSTANTIATE_TEST_ES*
macros that will run tests over all various combinations of all
platforms for different ES versions.
Just skipping failing tests initially to get the refactor landed.
Bug: angleproject:4081
Bug: angleproject:4092
Change-Id: I017f6c3267179e49b6ae08cc7488096b423dcdb5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1904635
Commit-Queue: Tobin Ehlis <tobine@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
e33c1582
|
2019-11-06T16:55:29
|
|
Fix EXT_texture_norm16
* Add norm16 format info for OpenGL backend
* Add validation for newly introduced norm16 formats
* Fix some logic of texture tests
Bug: chromium:1000354, angleproject:1365
Change-Id: Ie6d6e5e276da4df4b7c667be28d324d4976b35ec
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1902720
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shrek Shao <shrekshao@google.com>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
7af2676b
|
2019-10-23T16:18:57
|
|
Fix TextureAttachment support for unsized DS formats
Unsized DS formats should not pick up support from ES3 automatically.
Also unsized DEPTH COMPONENT textures should not be allowed as texture
attachments without also having support for GL_ANGLE_depth_texture or
GL_OES_depth_texture extensions.
This change modifies some unsized formats to require extension support
for TextureAttachment use.
There are a couple of tests bugs that were exposed by this change so
updated those tests as well.
This CL only changes TextureAttachment support, but it's quite possible
that renderbuffer (and texture) support may also need to be updated.
Will attempt that in a follow-on.
Bug: angleproject:3952
Change-Id: I75d15330dc418c421cd2855135e1e8100a89b2e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877135
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d192e933
|
2019-09-27T10:27:10
|
|
Vulkan: Support binding texture levels as a rendertarget
This CL refactors how TextureVk handles rendertargets. It removes
the single rendertarget that previously supported 2D, and expands
the layer/level list of rendertargets to handle all cases.
Bug: angleproject:3184
Bug: angleproject:3996
Test: Texture2DTestES3.FramebufferTextureChangingBaselevel/ES3_Vulkan
Test: FramebufferRenderMipmapTest.RenderToMipmap/ES2_Vulkan
Test: FramebufferRenderMipmapTest.RenderToMipmap/ES3_Vulkan
Test: ComputeShaderTest.ImageStoreMipmapSlice/ES3_1_Vulkan
Change-Id: I466d0389cc6744994f88c40cc388fca694b53a99
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854895
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
bbf0ce28
|
2019-10-11T06:55:36
|
|
Vulkan:Add support to stage D or S textures
Correctly set image aspect for depth or stencil texture staging.
This fixes 6 failing dEQP 3.0 tests and an end2end test.
Note that DS combined aspect textures will need special handling
to read each aspect separately which is not included in this fix.
Bug: angleproject:3949
Change-Id: I8e3f8166bdd31e2c002752b2f5c107ba411b2b0d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1855964
Commit-Queue: Tobin Ehlis <tobine@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
6b60dfd8
|
2019-10-02T07:54:18
|
|
Vulkan: Remove image views forced to one mip level
textureSize requires the view to reflect actual mip levels, so
we can't artificially limit the view based on filtering mode.
This CL removes those views.
That unearthed a problem where the VK backend wasn't properly
implementing non-mipmapped filter modes. There is a blurb in
the Vulkan spec about this:
There are no Vulkan filter modes that directly correspond to OpenGL
minification filters of GL_LINEAR or GL_NEAREST, but they can be
emulated using VK_SAMPLER_MIPMAP_MODE_NEAREST, minLod = 0, and
maxLod = 0.25, and using minFilter = VK_FILTER_LINEAR or
minFilter = VK_FILTER_NEAREST, respectively.
So this CL also adds that emulation.
Bug: angleproject:3948
Test: TextureSizeTextureArrayTest.BaseLevelVariesInTextureArray
Test: dEQP-GLES3.functional.shaders.texture_functions.texturesize.*
Change-Id: I81d5c3417e7d9abd0cdd058b935963706024a28f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1835937
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
988f7170
|
2019-09-30T15:52:37
|
|
Vulkan: Base/max level fixes and cleanup
This CL cleans up references to base/max level bug and fixes
one lingering issue regarding special handling of depth/z for
arrayed surfaces.
Bug: angleproject:3148
Bug: angleproject:3184
Bug: angleproject:3948
Bug: angleproject:3949
Bug: angleproject:3950
Test: dEQP-GLES3.functional.texture.mipmap.*base_level*
Test: dEQP-GLES3.functional.texture.mipmap.*max_level*
Test: Texture2DArrayTestES3.DrawWithLevelsOutsideRangeWithInconsistentDimensions
Change-Id: Iad72005a111507c50b8be9726adc32285bbae52b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832757
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
cb16fb5f
|
2019-08-29T16:53:55
|
|
Vulkan: Support texture base and max levels
The Vulkan backend uses a vkImage that matches the number
of effective levels in the GL texture. This is due to the fact
that GL textures can have really strange layouts that only make
sense when base level and max level are applied.
For instance, take the following layout with disjoint mip levels:
Level 0: 4x4 RGBA
Level 1: 2x2 RGBA
Level 2: 10x10 RGB
If base level is set to zero and max level is set to 1, the image is
still considered mip-complete:
Level 0: 4x4 RGBA ==> Base Level 0 ==> Level 0: 4x4 RGBA
Level 1: 2x2 RGBA ==> Max Level 1 ==> Level 1: 2x2 RGBA
Level 2: 10x10 RGB
If base and max level are then both set to 2, the texture is still
considered complete, but of a different size and format:
Level 0: 4x4 RGBA
Level 1: 2x2 RGBA
Level 2: 10x10 RGB ==> Base/Max Level 2 ==> Level 2: 10x10 RGB
When the base or max level is changed, we must recreate the vkImage to
match the new level count.
To support that, we:
- Stage updates from the current image to the new image
- Only stage updates if there aren't already staged updates for a level
- Free the current image and so it can be recreated at the next draw
This CL does the following:
- Refactors TextureVk::copyImageDataToBuffer to support staging updates
without flush
- Adds TextureVk::copyImageDataToBufferAndGetData to support previous
use model
- Adds TextureVk::changeLevels, triggered during syncState, which stages
updates and releases the current image.
- Updates ImageHelper::flushStagedUpdates to understand base/max levels
- Updates TextureVk::ensureImageInitialized and TextureVk::generateMipmap
to account for base/max level
- Tracks base and max levels in ImageHelper
- Adds ImageHelper::stageSubresourceUpdateFromBuffer to support
this use case
- Adds ImageHelper::isUpdateStaged to determine if changeLevels
should propagate data
- Makes gl::TextureTypeToTarget available for use outside of ImageIndex
- Enables several deqp and end2end tests
Bug: angleproject:3148
Test: dEQP-GLES3.functional.texture.mipmap.*base_level*
Test: dEQP-GLES3.functional.texture.mipmap.*max_level*
Change-Id: I14ca071c9c62eb310dfed7ef9290dc65fc3ff696
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1776933
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
20bb47d3
|
2019-09-16T12:55:30
|
|
Skip a angle_end2end_tests on Linux Intel OZone.
Texture2DFloatTestES2.TextureFloatRenderTest/ES2_OpenGLES
R=jmadill@chromium.org
Bug: chromium:1003971
Change-Id: I96d858bbfbbaa7d98d9a7488cb98e0c1fca18ba3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1807581
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6caa2652
|
2019-09-11T08:06:13
|
|
Vulkan: Support float textures and renderbuffers
Fixed support in the vulkan backend for legacy
GLES2.0 formats (luminance, alpha,
luminance_alpha)
Correctly exposed the following extensions:
OES_texture_float
OES_texture_half_float
OES_texture_float_linear
OES_texture_half_float_linear
EXT_color_buffer_float
EXT_color_buffer_half_float
Some of the above extensions have different
requirements depending on other extension support
and the context client version, and were
incorrectly assuming the most restrictive
requirements to be exposed.
Implemented end2end tests for:
OES_texture_float
OES_texture_half_float
OES_texture_float_linear
OES_texture_half_float_linear
EXT_color_buffer_float
EXT_color_buffer_half_float
Bug: angleproject:2898
Bug: angleproject:2726
Test: ./angle_end2end_tests --gtest_filter='Texture2DFloatTest*'
Change-Id: I7024aa1393eadafb5a0fb83c23e9035aae650b67
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1740276
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1f2782e0
|
2019-08-29T14:19:23
|
|
Vulkan: fix unsized internalformat depth sampling
Many implementations provide OES_depth_texture behavior if the
texture was specified with a non-sized format (e.g. GL_DEPTH_COMPONENT).
This change implements that behavior for Vulkan and adds a couple of
tests to verify it.
Bug: angleproject:3890
Change-Id: I005b1eaa30db033f7d78a5cf2236aab7f442b7f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1764301
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
566c2e3c
|
2019-08-28T18:37:58
|
|
Suppress correct failure on Android FYI Release (NVIDIA Shield TV)
TBR=geofflang@chromium.org
BUG=chromium:998505
Change-Id: I8e49ee063c2e06f5031a288c5fe32fd7683fcd7d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1774723
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
7f00d338
|
2019-08-28T15:19:16
|
|
Suppress end2end tests failures on Android FYI Release (NVIDIA Shield TV)
These were fixed on desktop drivers but not this Android driver.
TBR=geofflang@chromium.org
BUG=chromium:998505
Change-Id: Ie5f434c52753beff4d8f119713ef55f229ee7b95
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1773253
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
2a19c59f
|
2019-08-23T14:10:24
|
|
GL: Check for errors around GL calls.
Add a macro to check for GL errors after each GL call to catch errors as they
happen even if the debug callbacks are unavailable. GL errors are only checked
when asserts are enabled unless explicitly requested with the
ANGLE_GL_TRY_ALWAYS_CHECK macro to verify GL calls that may allocate memory.
Updated TextureGL to use the macro.
BUG=angleproject:3020
Change-Id: I7678b204899e940824b010ab4be7e7f159bee6de
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1764476
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
76a93c33
|
2019-08-21T13:21:52
|
|
Remove skipping of several tests on NVIDIA since they are now passing
Remove skipping of several tests on NVIDIA since they are now passing.
- MissingReturnStructOfArrays
- DrawWithLevelsOutsideRangeWithInconsistentDimensions
- TextureFormatChangesWithBaseLevel
- TextureLuminance16Implicit
BUG=angleproject:3849
BUG=angleproject:1305
BUG=angleproject:596
Change-Id: Ie3c3ba6634a251a7320a61c6c4cc03cb178db925
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1763964
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1dbbc7b3
|
2019-07-31T17:49:39
|
|
Skip couple TextureBorderClampIntegerTestES3 tests.
TextureBorderClampIntegerTestES3.TextureBorderClampInteger/ES3_OpenGL
TextureBorderClampIntegerTestES3.TextureBorderClampInteger2/ES3_OpenGL
failing on Win10 FYI x64 Release (AMD RX 550).
Bug: angleproject:3760
Change-Id: I0ccd56f190b1a3775f6a9a0448ca3003baa331ac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1729564
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
bd4ff479
|
2019-07-19T22:08:17
|
|
Revert "Reland "Temporarily disable creating D3D debug device.""
This reverts commit 6064e6ab6bc7355b410543301a578d22d2f6e477.
Reason for revert: flakiness should be fixed by https://chromium-review.googlesource.com/c/angle/angle/+/1709726
Original change's description:
> Reland "Temporarily disable creating D3D debug device."
>
> This reverts commit 28394c2295335929c17bbfe0ab74f923cd234ff2.
>
> Reason for revert: may be the cause of flakiness on Win10 Debug (NVIDIA) per http://crbug.com/972914 .
>
> Original change's description:
> > Revert "Temporarily disable creating D3D debug device."
> >
> > This reverts commit 3d544fffe7ff9284b21e3a15f638297c827bbc21.
> >
> > Reason for revert: Seems like flakiness is not related.
> >
> > Suppress D3D11 test failures uncovered by re-enabling D3D debug device:
> > ComputeShaderTest.DispatchCompute
> > Texture2DTestES3.TextureImplPropogatesDirtyBits
> > D3DTextureTestMS.*
> >
> > Also a small fix to ANGLETestBase::checkD3D11SDKLayersMessages
> > to clear reported messages, otherwise the failures are also reported
> > for tests following the one with the actual failure.
> >
> > Original change's description:
> > > Temporarily disable creating D3D debug device.
> > >
> > > To diagnose whether Windows Intel end2end tests flakiness
> > > is related to creating debug device and new version of Windows SDK.
> > >
> > > Bug: angleproject:3153
> > > Change-Id: Ica7eae3fe875e22203b6dfd98b83604d66a97737
> > > Reviewed-on: https://chromium-review.googlesource.com/c/1476954
> > > Reviewed-by: Geoff Lang <geofflang@chromium.org>
> > > Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
> >
> > Bug: angleproject:3153, angleproject:3493
> > Bug: angleproject:3501, angleproject:3512, angleproject:3513
> >
> > Change-Id: I232da72aa09c2b9230cf179dd54e1731f8365f8e
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1480854
> > Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
> > Reviewed-by: Jamie Madill <jmadill@chromium.org>
> > Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
>
> TBR=ynovikov@chromium.org,geofflang@chromium.org,jmadill@chromium.org
>
> Change-Id: I38a5cc9bb6ebcd50e97e40cc972a82679e73732a
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: angleproject:3153, angleproject:3493, angleproject:3501, angleproject:3512, angleproject:3513
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1652784
> Reviewed-by: Kenneth Russell <kbr@chromium.org>
> Commit-Queue: Kenneth Russell <kbr@chromium.org>
TBR=ynovikov@chromium.org,geofflang@chromium.org,kbr@chromium.org,jmadill@chromium.org
Bug: angleproject:3153, angleproject:3493, angleproject:3501, angleproject:3513
Change-Id: I16eff79172dcfa2dd6d4f6445a74c9c65c1bd27c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1710861
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
8bb6baa0
|
2019-06-18T15:30:16
|
|
Vulkan: improve handling of RGB texture formats
Adds fallback for some RGB textures using the corresponding RGBA formats
and modifies fallback calculation to not require filtering/rendering for
formats which are not required to support filtering by GL spec.
Bug: angleproject:3190
Bug: angleproject:3196
Change-Id: I7beaf9881d63e3c6bd9339faede0333919a4174c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1665894
Commit-Queue: James Dong <dongja@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8f1169eb
|
2019-06-27T15:32:32
|
|
Added end2end tests for GL_EXT_texture_rg
Bug: angleproject:3195
Test: ./angle_end2end_tests --gtest_filter='Texture2DRGTest.*'
Change-Id: I076af9e0b4ee78623dcc9c4e07b4e1bececd05c7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1681109
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c5da7997
|
2019-06-27T12:57:13
|
|
Fix skip Texture3DTestES3.DrawWithLevelsOutsideRangeWithInconsistentDimensions
on Linux Intel GL.
Wrongly skipped
Texture2DTestES3.DrawWithLevelsOutsideRangeWithInconsistentDimensions
in previous CL.
Bug: angleproject:2782
Change-Id: Ifb54f394f7c7b953365bd04b93231a6880f709f6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1680844
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
f857b501
|
2019-06-26T20:15:46
|
|
Skip end2end tests failing on Intel Ubuntu 19.04 Mesa 19.0.2
Failing:
MaskedScissoredClearTest.Test/ES2_OpenGL_clear_cd
MaskedScissoredClearTest.Test/ES2_OpenGL_clear_cd_mask_c
MaskedScissoredClearTest.Test/ES2_OpenGL_clear_cds
MaskedScissoredClearTest.Test/ES2_OpenGL_clear_cds_mask_c
MaskedScissoredClearTest.Test/ES2_OpenGL_clear_cds_mask_cs
MaskedScissoredClearTest.Test/ES2_OpenGL_clear_cds_mask_s
MaskedScissoredClearTest.Test/ES2_OpenGL_clear_d
MaskedScissoredClearTest.Test/ES2_OpenGL_clear_ds
MaskedScissoredClearTest.Test/ES2_OpenGL_clear_ds_mask_s
MaskedScissoredClearTest.Test/ES3_OpenGL_clear_cd
MaskedScissoredClearTest.Test/ES3_OpenGL_clear_cd_mask_c
MaskedScissoredClearTest.Test/ES3_OpenGL_clear_cds
MaskedScissoredClearTest.Test/ES3_OpenGL_clear_cds_mask_c
MaskedScissoredClearTest.Test/ES3_OpenGL_clear_cds_mask_cs
MaskedScissoredClearTest.Test/ES3_OpenGL_clear_cds_mask_s
MaskedScissoredClearTest.Test/ES3_OpenGL_clear_d
MaskedScissoredClearTest.Test/ES3_OpenGL_clear_ds
MaskedScissoredClearTest.Test/ES3_OpenGL_clear_ds_mask_s
BlitFramebufferTest.MultisampleDepthClear/ES3_OpenGL
DrawBuffersTest.FirstHalfNULL/ES2_Vulkan
DrawBuffersTest.Gaps/ES2_Vulkan
WebGLCompatibilityTest.DrawBuffers/ES2_Vulkan
Crashing:
Texture3DTestES3.DrawWithLevelsOutsideRangeWithInconsistentDimensions/ES3_OpenGL
Bug: angleproject:2782, angleproject:3614, angleproject:3616
Change-Id: Ib9bc72d8fd050ba1db1269d5fb3b38e80636211e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1679630
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
6064e6ab
|
2019-06-11T04:01:12
|
|
Reland "Temporarily disable creating D3D debug device."
This reverts commit 28394c2295335929c17bbfe0ab74f923cd234ff2.
Reason for revert: may be the cause of flakiness on Win10 Debug (NVIDIA) per http://crbug.com/972914 .
Original change's description:
> Revert "Temporarily disable creating D3D debug device."
>
> This reverts commit 3d544fffe7ff9284b21e3a15f638297c827bbc21.
>
> Reason for revert: Seems like flakiness is not related.
>
> Suppress D3D11 test failures uncovered by re-enabling D3D debug device:
> ComputeShaderTest.DispatchCompute
> Texture2DTestES3.TextureImplPropogatesDirtyBits
> D3DTextureTestMS.*
>
> Also a small fix to ANGLETestBase::checkD3D11SDKLayersMessages
> to clear reported messages, otherwise the failures are also reported
> for tests following the one with the actual failure.
>
> Original change's description:
> > Temporarily disable creating D3D debug device.
> >
> > To diagnose whether Windows Intel end2end tests flakiness
> > is related to creating debug device and new version of Windows SDK.
> >
> > Bug: angleproject:3153
> > Change-Id: Ica7eae3fe875e22203b6dfd98b83604d66a97737
> > Reviewed-on: https://chromium-review.googlesource.com/c/1476954
> > Reviewed-by: Geoff Lang <geofflang@chromium.org>
> > Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
>
> Bug: angleproject:3153, angleproject:3493
> Bug: angleproject:3501, angleproject:3512, angleproject:3513
>
> Change-Id: I232da72aa09c2b9230cf179dd54e1731f8365f8e
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1480854
> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
TBR=ynovikov@chromium.org,geofflang@chromium.org,jmadill@chromium.org
Change-Id: I38a5cc9bb6ebcd50e97e40cc972a82679e73732a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3153, angleproject:3493, angleproject:3501, angleproject:3512, angleproject:3513
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1652784
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
28394c22
|
2019-02-21T03:24:58
|
|
Revert "Temporarily disable creating D3D debug device."
This reverts commit 3d544fffe7ff9284b21e3a15f638297c827bbc21.
Reason for revert: Seems like flakiness is not related.
Suppress D3D11 test failures uncovered by re-enabling D3D debug device:
ComputeShaderTest.DispatchCompute
Texture2DTestES3.TextureImplPropogatesDirtyBits
D3DTextureTestMS.*
Also a small fix to ANGLETestBase::checkD3D11SDKLayersMessages
to clear reported messages, otherwise the failures are also reported
for tests following the one with the actual failure.
Original change's description:
> Temporarily disable creating D3D debug device.
>
> To diagnose whether Windows Intel end2end tests flakiness
> is related to creating debug device and new version of Windows SDK.
>
> Bug: angleproject:3153
> Change-Id: Ica7eae3fe875e22203b6dfd98b83604d66a97737
> Reviewed-on: https://chromium-review.googlesource.com/c/1476954
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bug: angleproject:3153, angleproject:3493
Bug: angleproject:3501, angleproject:3512, angleproject:3513
Change-Id: I232da72aa09c2b9230cf179dd54e1731f8365f8e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1480854
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
06055b5e
|
2019-05-29T14:31:42
|
|
Update Windows AMD suppression.
Should have been specified for OpenGL instead of D3D11.
Bug: chromium:967796
Change-Id: I099ab51709f69e7abb7fe698e6010241bdccb4bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1635751
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
262e2824
|
2019-05-20T14:24:40
|
|
Use D3D11 GetDimensions driver workaround for 3D textures
Some NVIDIA D3D11 drivers are buggy and interprets the level passed to
GetDimensions as being relative to 0, rather than the SRV's MostDetailedMip.
This affects all integer format textures, because the dimensions are used for
sample position calculations with integer format textures, which leads to
sampling outside texture when the base level is non-zero.
Bug: angleproject:3441
Change-Id: Ic54328e3d712e28a40efb4e63b8fce0baeb4ef42
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1619785
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
29ac274f
|
2019-05-28T15:53:00
|
|
D3D11: Suppress failing Texture test on AMD.
Bug: chromium:967796
Change-Id: I48280909db9c927c12d3c0d97f1ad451dffb849e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1632949
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
69d04939
|
2019-05-20T14:04:13
|
|
Use D3D11 GetDimensions driver workaround for 2D array textures
Some NVIDIA D3D11 drivers are buggy and interprets the level passed to
GetDimensions as being relative to 0, rather than the SRV's MostDetailedMip.
This affects all integer format textures, because the dimensions are used for
sample position calculations with integer format textures, which leads to
sampling outside texture when the base level is non-zero.
Bug: angleproject:3441
Change-Id: Ic012cac94ce0a627221087ecb2ee6aa3665900d1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1617780
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Kimmo Kinnunen FI <kkinnunen@nvidia.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1b6aded6
|
2019-05-20T12:56:34
|
|
Test D3D11 GetDimensions driver workaround for textureProjOffset
Some NVIDIA D3D11 drivers are buggy and interprets the level passed to
GetDimensions as being relative to 0, rather than the SRV's MostDetailedMip.
This affects all integer texture formats because the dimensions are used for
sample position calculations on integer format textures, which leads to sampling
outside the texture when the base level is non-zero.
Bug: angleproject:3441
Change-Id: I9d2f8fa8e66caca704cbc46d4933d3f97aaf93ea
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1617779
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Kimmo Kinnunen FI <kkinnunen@nvidia.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d2683459
|
2019-05-23T16:11:19
|
|
Skip Texture2DIntegerTestES3.IntegerTextureNonZeroBaseLevel
on Win AMD OpenGL
Bug: angleproject:3478
Change-Id: I8f0ffeb0da31d08f4f4f45048d295c847cf095bd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1626328
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
8224a58b
|
2019-05-20T12:39:29
|
|
Normalize fragment color in Texture2DIntegerTestES3
The sampler returns colors with components in the range 0-255.
Bug: chromium:963595
Change-Id: I7030ab9da6e0803e3aaf8aef4691ce7276636b10
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1617778
Reviewed-by: Kimmo Kinnunen FI <kkinnunen@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e4452440
|
2019-05-09T13:29:49
|
|
Fix integer cube map sample HLSL calculation
This patch fixes two issues in the HLSL generated to sample an integer cube map.
The first issue was that an inappropriate major axis was selected when sampling
from corners of the cube map. In particular, the added test case demonstrates a
situation where a major axis of length 0 was selected, which lead to an infinite
LOD being calculated. The fix was to adjust inequalities such that always
exactly one of xMajor, yMajor and zMajor is true.
The second issue was that the derivative functions ddx and ddy were being used
on values that depended on the choice of major axis, which is not continuous at
the corners of a cube map. This lead to a finite but incorrect LOD being
calculated. The fix was to make sure major axis choice is not included when
estimating the scaling factor.
Bug: angleproject:3442
Change-Id: Ia3eb8c89f47d1bfdadc18aec989e8cbebc088ec0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1601515
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
60cc751a
|
2019-05-06T09:25:27
|
|
Use D3D11 GetDimensions driver workaround for integer cube maps
Some NVIDIA D3D11 drivers are buggy and interprets the level passed to
GetDimensions as being relative to 0, rather than the SRV's MostDetailedMip.
This affects integer cube maps because the dimensions are used for sample
position calculations, which leads to sampling outside the cube side textures
when the base level is non-zero.
Bug: angleproject:3441
Change-Id: I151f9336b9c6d8ec7012bf5010a2d45fb2951e73
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1595688
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
36f47169
|
2019-05-15T15:36:06
|
|
Suppress flaky OpenGL ES3 test.
Texture2DIntegerTestES3.IntegerTextureNonZeroBaseLevel/ES3_OpenGL
Bug: chromium:963595
Change-Id: I6cdd845a5b7bc1a4b5a16029eaf170db40f1787c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1613894
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5cbaa3f8
|
2019-05-07T15:49:22
|
|
Don't inherit ANGLETest SetUp and TearDown.
Instead of inheriting from testing::Test's SetUp and TearDown we add
new methods 'testSetUp' and 'testTearDown'. This helps prevent a common
error of forgetting to call the base class method.
Also add a check in the ANGLETest destructor that SetUp and TearDown
have been called.
Bug: angleproject:3393
Change-Id: Iab211305cc06ffea9ca649e864ddc9b180f2cba0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1593960
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f6cbe44a
|
2019-04-18T15:32:07
|
|
Use D3D11 GetDimensions driver workaround for 2D integer textures
Some NVIDIA D3D11 drivers are buggy and interprets the level passed to
GetDimensions as being relative to 0, rather than the SRV's MostDetailedMip.
A test is added which reads from non-zero base level integer texture. When the
workaround is not being used, reads outside the first quadrant return black.
Bug: chromium:679639
Change-Id: I5282a1ba207b2d553d1836f9460ec09cb5590ea6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1591594
Commit-Queue: Kimmo Kinnunen FI <kkinnunen@nvidia.com>
Reviewed-by: Kimmo Kinnunen FI <kkinnunen@nvidia.com>
|
|
ddc4d33a
|
2019-05-01T15:11:46
|
|
Remove several underused platform configs.
* Removes D3D11 Warp and Reference configs from tests.
* Removes several permutations of OpenGL back-end specific configs.
* Removes FL 9_3 since it is no longer supported.
* Removes present path "Copy" since it's redundant with normal D3D11.
Reduces number of configs from over 60 to 25.
Bug: angleproject:3393
Change-Id: Ia5a23de3c4865b17ee50673a4066757b901a4b5a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1574675
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b8149075
|
2019-04-30T16:14:44
|
|
Clean up ANGLE test extension functions.
None of these functions needed to be member functions. Also make the
naming more consistent.
Bug: angleproject:3393
Change-Id: I7aafe2269a48af703a87bd9a8cf4cfab9e177dd3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1574673
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6f691fbb
|
2019-04-25T11:01:52
|
|
Port the WebGL2 framebuffer-texture-changing-base-level test to native
A nearly direct port of the https://www.khronos.org/registry/webgl/sdk/tests/conformance2/rendering/framebuffer-texture-changing-base-level.html
test for easier debugging.
BUG=angleproject:2291
Change-Id: Ibc8a7e77629f1ea3f15e92ea93f1210fa850c524
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1584361
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shrek Shao <shrekshao@google.com>
|
|
d18c048a
|
2019-04-04T19:56:43
|
|
Remove Nexus 5X Vulkan test suppressions.
SimpleStateChangeTest.DrawArraysThenDrawElements
TextureUploadFormatTest.All
VertexAttributeTest.UnsignedByteNormalized
VertexAttributeTest.ByteNormalized
EXTMultisampleCompatibilityTest.DrawAlphaOneAndResolve
was skipped on all Android for unspecified reason in
https://chromium-review.googlesource.com/c/angle/angle/+/451877
seems to be passing now.
Make some suppressions OpenGL ES specific:
MultisampleCompatibilityTest.DrawCoverageAndResolve
RobustResourceInitTest.TexImageThenSubImage
RobustResourceInitTest.ReadingPartiallyInitializedTexture
RobustResourceInitTestES3.MultisampledDepthInitializedCorrectly
RobustResourceInitTest.MaskedDepthClear
RobustResourceInitTestES3.MaskedDepthClearBuffer
RobustResourceInitTest.MaskedStencilClear
RobustResourceInitTestES3.MaskedStencilClearBuffer
TransformFeedbackTest.OffsetResetOnBeginTransformFeedback
Bug: angleproject:3262
Bug: angleproject:3124, angleproject:2657, angleproject:2797
Change-Id: I3ed7a3f0ebbb4598bff75e2b3bd8b3b0630779f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1572484
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
e6b23e45
|
2019-04-10T17:19:15
|
|
Skip Texture2DTestES3.TextureImplPropogatesDirtyBits on Win AMD GL
Bug: angleproject:3371
Change-Id: I7601e6b658835b9c948acab98491f5bd01ea9497
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1562517
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
3702d8c9
|
2019-04-08T13:44:06
|
|
Propogate dirty bit signals from TextureImpl to Texture up to Context.
If TextureImpl sets a local dirty bit and signals gl::Texture of it, the
dirtyness is not propogated to context. This can result in draw calls
with textures that are not synchronized
BUG=949985
Change-Id: I9baf82c96598265a6a4850f1fd48e213b5e98ab5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1556699
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
24980278
|
2019-04-03T09:03:51
|
|
D3D11: Skip DepthTexturesWithMipmaps on AMD/D3D11.
Possible driver bug.
Bug: angleproject:3342
Change-Id: Ia171a7ac0d764859c4440b1fe2986aa931ff75c2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1550799
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
0c128e15
|
2019-03-25T23:50:14
|
|
Vulkan: Use render pass ops to clear images when possible
On tiling GPUs, render pass loadOp and stencilLoadOp can be used to very
cheaply clear an image as it is being render to. This change uses this
feature to clear render targets when possible.
Bug: angleproject:2361
Change-Id: Ic4bdc908873f4802760d549f4893f84a47beac0f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1500576
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9078c6a7
|
2019-03-19T11:10:15
|
|
Update necessary angle_end2end_tests to check the Android device name
Some tests fail only on specific devices, so the tests should be updated
to reflect that, and allow more tests to run on more devices.
Bug: angleproject:3275
Change-Id: I8e3183c1769c0bb8ed6d2605afcaf399cb1d9ed0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1534463
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
962c222a
|
2019-02-20T15:43:41
|
|
Vulkan: Enable anisotropy feature when available
If anisotropic filtering is used, the feature must be enabled at device
creation time. This was missing.
Bug: angleproject:2901
Change-Id: I86db55f8b1696dc04eae922b941512f786aa12b8
Reviewed-on: https://chromium-review.googlesource.com/c/1479264
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@google.com>
|
|
d8506c7e
|
2019-01-29T15:35:09
|
|
Disable broken tests on Fuchsia (reland)
This disables tests that do not work on Fuchsia. Most of them are related
to cube maps which currently crash inside the intel driver.
Reland disabling -Wextra-semi.
BUG=angleproject:2475, angleproject:3145, angleproject:3081
TEST=angle_end2end_tests on Fuchsia
Change-Id: I65ad84f43c88e8ee83c581cc2f41046d00bbae7f
Reviewed-on: https://chromium-review.googlesource.com/c/1467604
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Michael Spang <spang@chromium.org>
|
|
c66fb571
|
2019-02-12T03:56:16
|
|
Revert "Disable broken tests on Fuchsia"
This reverts commit ad194995ed7228078d5b937dd1eff87c1dcac9c0.
Reason for revert: broke GPU optional bots since the revert of its previous CL
Original change's description:
> Disable broken tests on Fuchsia
>
> This disables tests that do not work on Fuchsia. Most of them are related
> to cube maps which currently crash inside the intel driver.
>
> BUG=angleproject:2475, angleproject:3145, angleproject:3081
> TEST=angle_end2end_tests on Fuchsia
>
> Change-Id: Ifc0be390c6d5c43a756e1afb6ced9e3bd5b6986e
> Reviewed-on: https://chromium-review.googlesource.com/c/1446497
> Commit-Queue: Michael Spang <spang@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=spang@chromium.org,geofflang@chromium.org,jmadill@chromium.org
Change-Id: Id1861ee94b89020bcd64dd8e7e52588b76830783
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:2475, angleproject:3145, angleproject:3081
Reviewed-on: https://chromium-review.googlesource.com/c/1465881
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
|