|
62342590
|
2015-06-18T17:29:52
|
|
Revert "Add workaround for flushing before readPixels."
This reverts commit 46c13a15fa90130eca14301a4ef6deed12315037.
Seems to have introduced significant flakiness on the Windows AMD FYI bot. Reverting while investigating.
Change-Id: I9cfdb09a4a0d792a0c5db76c8b0b9d3285c0695a
Reviewed-on: https://chromium-review.googlesource.com/280365
Tested-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
46c13a15
|
2015-06-17T16:33:50
|
|
Add workaround for flushing before readPixels.
This has been found necessary on the D3D11 backend on AMD GPUs, and on
the D3D9 backend on all GPUs.
Tested an earlier version of this patch overnight on one of the
affected Windows AMD bots; it eliminated the flakiness observed on one
of the WebGL conformance tests.
BUG=491419
Change-Id: I668493eb5ec109b5e0650c154dc97b786e0745bd
Reviewed-on: https://chromium-review.googlesource.com/278265
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Kenneth Russell <kbr@chromium.org>
|
|
6ee1e786
|
2015-05-29T17:05:37
|
|
Implement GL_EXT_debug_marker in D3D9/D3D11 renderers
BUG=angleproject:1043
Change-Id: I7f3bfb35050662520b901828d0478719fa8d11b3
Reviewed-on: https://chromium-review.googlesource.com/274054
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
8eeb2bd1
|
2015-06-10T18:56:09
|
|
Add multisample render target info to DXGI tables.
Saves us some time on startup. Also assume every multisample format
can support 1x multisampling, and that if we support a higher format
we support all lower sample counts (eg - if we support 16x we support
8x and 4x, etc)
BUG=angleproject:1014
Change-Id: I62143e5db561b717edd1a0c96f5e3acd4de3d154
Reviewed-on: https://chromium-review.googlesource.com/275777
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
5d121e1e
|
2015-06-10T18:56:04
|
|
Add generated tables to mirror D3D11 format support.
*re-land with fix for test build*
These tables can save us on startup time. Instead of querying the
tables, we can keep certain assumptions about texture formats
because certain formats are guaranteed to be supported in various
feature levels.
Testing with angle_perftests indicates this patch series will save
about 50% of the time we spend in Renderer11::initializeDevice.
BUG=angleproject:1014
Change-Id: I5477eea3e8433d36119cd099fb0c08eea168489a
Reviewed-on: https://chromium-review.googlesource.com/276758
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
00787935
|
2015-06-10T22:52:51
|
|
Revert "Add generated tables to mirror D3D11 format support."
Hidden conflict with Geoff's test refactor patch.
BUG=angleproject:1014
This reverts commit 396ee48b639189465039cd62ef8409e86d5f6dd1.
Change-Id: I8182acb350b61b31f4040a20c86652e23706905a
Reviewed-on: https://chromium-review.googlesource.com/276774
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
396ee48b
|
2015-06-10T14:54:07
|
|
Add generated tables to mirror D3D11 format support.
These tables can save us on startup time. Instead of querying the
tables, we can keep certain assumptions about texture formats
because certain formats are guaranteed to be supported in various
feature levels.
Testing with angle_perftests indicates this patch series will save
about 50% of the time we spend in Renderer11::initializeDevice.
BUG=angleproject:1014
Change-Id: I84dbeaba1d1c635ad60c8413705cc41af8a51f06
Reviewed-on: https://chromium-review.googlesource.com/275772
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
08332634
|
2015-05-05T13:35:47
|
|
Implement EXT_discard_framebuffer in D3D11 renderer
Change-Id: I52bcf0cfb1aa123e085a35730fdefb006b617c3c
Reviewed-on: https://chromium-review.googlesource.com/269232
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
10eb591a
|
2015-05-28T13:26:03
|
|
D3D11: Optimize sample caps checks.
We don't need to check NPOT sample counts. This should save us some
time on eglInitialize.
BUG=angleproject:1014
Change-Id: Id3b0a440689746d5de9a7fbc3641ff9452b18601
Reviewed-on: https://chromium-review.googlesource.com/274430
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
10b7f46a
|
2015-05-20T14:03:14
|
|
Determine packed depth stencil extension support automatically.
BUG=angleproject:884
Change-Id: If2b8fd94b0354449ba7e629606d7b1b2c2430fd1
Reviewed-on: https://chromium-review.googlesource.com/272421
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ba8a0bf8
|
2015-05-13T09:48:59
|
|
Add plumbing for D3D11 device caps
BUG=angleproject:1002
Change-Id: Id24783c75377ea92a73a43f2605693e07f63dc15
Reviewed-on: https://chromium-review.googlesource.com/270545
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
8cf813c7
|
2015-05-04T12:55:18
|
|
Query attachment render targets from Impl class.
*re-land with fix for D3D9*
This allows us to eradicate the GetAttachmentRenderTarget methods.
This improves potential performance, at the cost of exposing a
Renderer-specific function at the API object level.
BUG=angleproject:963
Change-Id: Iee9f985ddaed668df0c622228004b348eb4d2ea8
Reviewed-on: https://chromium-review.googlesource.com/269006
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e737b06c
|
2015-05-04T16:53:56
|
|
Revert "Query attachment render targets from Impl class."
D3D9 bug is causing failures in the WebGL depth texture test.
BUG=angleproject:963
This reverts commit 804e8436f91733e1d0f769ec10082e4741f2e549.
Change-Id: I660f05033360e97258794138cb50b604f5ac16b6
Reviewed-on: https://chromium-review.googlesource.com/269005
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
804e8436
|
2015-04-30T09:42:23
|
|
Query attachment render targets from Impl class.
This allows us to eradicate the GetAttachmentRenderTarget methods.
This improves potential performance, at the cost of exposing a
Renderer-specific function at the API object level.
BUG=angleproject:963
Change-Id: Ifc227b5f42e87bd4deb451d685618cf61fea39f1
Reviewed-on: https://chromium-review.googlesource.com/263491
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
def624bc
|
2015-04-13T10:46:56
|
|
Move maxSamples from Extensions to Caps because it is an ES3 limit.
BUG=angleproject:886
Change-Id: Ibcfc2f06e8308e2e6eb1a6c38206b803f689d7af
Reviewed-on: https://chromium-review.googlesource.com/265470
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
9102e3ab
|
2015-03-23T20:25:45
|
|
Add UBO offset emulation for D3D11.0 and below.
BUG=angleproject:507
Change-Id: I6c5028930051a2af0bd6ffa0ee213e692d3892ef
Reviewed-on: https://chromium-review.googlesource.com/261824
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
95663914
|
2015-04-02T15:54:45
|
|
Add stubs for GL_OES_fbo_render_mipmap.
BUG=angle:905
Change-Id: Idd4964bd2d9d07cd98137770e1cc57397f1dd3a6
Reviewed-on: https://chromium-review.googlesource.com/263762
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f4bf3811
|
2015-04-01T16:15:32
|
|
Use GetAs/GetImplAs whenever possible.
This patch cleans up the rest of our custom casting helper
functions.
Change-Id: I41975c736765fca855c4498acca31116df3e8317
Reviewed-on: https://chromium-review.googlesource.com/263477
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
68694e99
|
2015-03-24T14:03:37
|
|
Add UBO offset support for D3D11.1.
Also fixes the uniform count upper limit in glGetActiveUniformsiv,
as well as an assert hit with used but unbound uniform buffer.
BUG=angleproject:507
BUG=angleproject:962
Change-Id: I096fe1c9b4f0f398f3a638cd8311278987dfb7dc
Reviewed-on: https://chromium-review.googlesource.com/263404
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
|
|
90a09b56
|
2015-04-01T18:21:24
|
|
Revert "Add UBO offset support for D3D11.1."
Failed on 32-bit builds. See: https://build.chromium.org/p/chromium.gpu.fyi/builders/GPU%20Win%20Builder/builds/24828/steps/compile/logs/stdio
angle\src\libangle\validationes.cpp(1461) : error C2220: warning treated as error - no 'object' file generated
angle\src\libangle\validationes.cpp(1461) : warning C4018: '<' : signed/unsigned mismatch
This reverts commit 381f969315c0c70bacf183e58de7194f42486112.
Change-Id: I05f09f19e40046994d34809c5b79095458f56148
Reviewed-on: https://chromium-review.googlesource.com/263474
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
381f9693
|
2015-03-24T14:03:37
|
|
Add UBO offset support for D3D11.1.
Also fixes the uniform count upper limit in glGetActiveUniformsiv,
as well as an assert hit with used but unbound uniform buffer.
BUG=angleproject:507
BUG=angleproject:962
Change-Id: I263b14df41d4e45a67304c1d145646398721cf0a
Reviewed-on: https://chromium-review.googlesource.com/263412
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
3917f578
|
2015-04-01T15:17:21
|
|
Revert "Add UBO offset support for D3D11.1."
Was ignoring the uniform block bindings.
This reverts commit 7159ea6778eb73c233736cc2fa59ae9177b75e4b.
Change-Id: Ie7d2b40d3fb2adedd309f1162fb6fd33ab0b4c3c
Reviewed-on: https://chromium-review.googlesource.com/263420
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
7159ea67
|
2015-03-24T14:03:37
|
|
Add UBO offset support for D3D11.1.
Also fixes the uniform count upper limit in glGetActiveUniformsiv.
BUG=angleproject:507
Change-Id: Icfc90ed64cf94b1bab2d4cc93a8fb5e11b28d666
Reviewed-on: https://chromium-review.googlesource.com/261874
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1ea584c5
|
2015-03-26T21:08:33
|
|
Revert "Implement EXT_discard_framebuffer in D3D11 renderer"
Causes failures in video related WebGL tests. Either there is a bug in the implementation or how chrome is using it.
This reverts commit b13daa8f79f4d16a990d968d7d2c04da6b72d302.
Change-Id: Ic0d74840c664bf4de18d85cc3ff7f7153936d9b0
Reviewed-on: https://chromium-review.googlesource.com/262715
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b13daa8f
|
2015-03-19T17:00:44
|
|
Implement EXT_discard_framebuffer in D3D11 renderer
Change-Id: I0e39a196796813203c841c46aa2a6b89957f6051
Reviewed-on: https://chromium-review.googlesource.com/261355
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
8b695ee3
|
2015-03-12T13:12:20
|
|
Reduce unnecessary built-in varying usage in D3D renderer
Change-Id: I0c404e77aa3f56ddc5b97a206b06c7907edfb1eb
Reviewed-on: https://chromium-review.googlesource.com/259812
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d4475816
|
2015-03-18T10:53:05
|
|
Always use static_assert for compile-time assertions and remove META_ASSERT.
BUG=468139
Change-Id: I696ef307f2faa54bb72df66784bc79a055499987
Reviewed-on: https://chromium-review.googlesource.com/260776
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
481373d8
|
2015-02-16T16:54:12
|
|
Fix GetShaderPrecisionFormat to return correct values on DX11
The integer precision is different on DirectX 9 and 11 backends. DirectX
11 guarantees native 32-bit integers.
BUG=angle:919
Change-Id: I7619e66f8aaa1177c32b6da185fe805ce8a19b71
Reviewed-on: https://chromium-review.googlesource.com/250280
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
d28f6113
|
2015-02-12T16:11:00
|
|
Fixed compressed texture support reporting for feature level 9_3
Change-Id: If6e27db912711532e184a3a716728a19653c0471
Reviewed-on: https://chromium-review.googlesource.com/249550
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
3ae6465f
|
2015-01-26T15:51:39
|
|
Fix lots of variable shadowing in ANGLE
BUG=angle:877
Change-Id: I3df0fffb19f5ecbe439fbc2a8d6d239a5dc6b638
Reviewed-on: https://chromium-review.googlesource.com/243334
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
74cafab1
|
2015-01-23T23:17:32
|
|
Revert "Fix lots of variable shadowing in ANGLE"
Caused WebGL CTS failures on the texture-npot test:
https://www.khronos.org/registry/webgl/sdk/tests/conformance/textures/texture-npot.html
This reverts commit c67e6e9fade44ef8938724e82db11db725e9c8e5.
Change-Id: I089e99859231e0d657084ac3647257c650a9da92
Reviewed-on: https://chromium-review.googlesource.com/243041
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
c67e6e9f
|
2015-01-21T16:01:07
|
|
Fix lots of variable shadowing in ANGLE
BUG=angle:877
Change-Id: I15168ae32605b26aee08274464ffe68adb5a7e87
Reviewed-on: https://chromium-review.googlesource.com/242351
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
051dbc79
|
2015-01-05T15:48:58
|
|
Create a formatutilsD3D and move some functions from formatutils.
BUG=angle:681
Change-Id: I694073c50dccd05c3117761e446eba0d15c03293
Reviewed-on: https://chromium-review.googlesource.com/238480
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e6664f06
|
2015-01-09T16:22:24
|
|
Added PointSprites Support for renderers that do not support Geometry Shaders
Change-Id: Iae9ac5f8fbba68dba5e49ccda7bb7eebb05c8e9a
Reviewed-on: https://chromium-review.googlesource.com/240450
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
c2e75afa
|
2015-01-05T14:26:24
|
|
Rename RenderTarget to RenderTargetD3D and move it into the d3d folder.
BUG=angle:681
Change-Id: I1946e01ce09d99405c318723c254fe300cc5ac53
Reviewed-on: https://chromium-review.googlesource.com/238471
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
215b37a6
|
2014-12-22T12:56:07
|
|
Work around zero-LOD mipmap issue on D3D11 Feature Level 9_3
In OpenGL ES, it is possible to sample from level 0 of a mipmapped
texture by setting GL_TEXTURE_MIN_FILTER to GL_NEAREST.
This is possible in D3D9 and D3D11 Feature Level 10_0+ via various
methods. It's not possible in D3D11 Feature Level 9_3, though.
This change works around this restriction by creating two copies of
each texture on 9_3. The textures are identical, except one has
mipmaps and one doesn't.
The D3D11 renderer figures out which texture to use at the right
time, and keeps the textures in sync with each other as necessary.
Note: each texture is only created when it's needed. It's possible
that only one (or even neither) D3D texture will be created for a
given GL texture.
Change-Id: I3c17137b4f63b9158b3abf067ad8e5d5c49d2191
Reviewed-on: https://chromium-review.googlesource.com/234522
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
cf4432c3
|
2015-01-07T14:05:47
|
|
Disable some extensions on D3D11 Feature Level 9_3 which aren't supported
BUG=angle:858
Change-Id: Ib2b2b2b54ba25654ea80b5cb1c59b74ed0379b68
Reviewed-on: https://chromium-review.googlesource.com/239271
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
049743a9
|
2014-12-23T13:05:11
|
|
Restrict depth buffer formats on D3D11 Feature Level 9_3
*_TYPELESS formats weren't supported in D3D10Level9 until
Windows 8. Some Win8 D3D9 drivers don't support them either.
To workaround this, we avoid _TYPELESS formats on D3D11 FL9_3.
BUG=angle:856
BUG=435726
Change-Id: I280dc7f87e3a2c737c14284ebb744188e7f10616
Reviewed-on: https://chromium-review.googlesource.com/237292
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
324bcc46
|
2014-12-22T13:43:02
|
|
Fix instancing on D3D11 9_3, by ensuring slot zero contains non-instanced data
D3D11 Feature Level 9_3 supports instancing, but slot 0 in the input
layout must not be instanced. D3D9 has a similar restriction, where
stream 0 must not be instanced. This restriction can be worked around
by remapping any non-instanced slot to slot 0. This works because
HLSL uses shader semantics to match the vertex inputs to the elements
in the input layout, rather than the slots.
BUG=angle:858
Change-Id: I67b2be9095afc206a4b9f107ed61356820551afe
Reviewed-on: https://chromium-review.googlesource.com/237270
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b5d8f23e
|
2014-12-04T15:43:01
|
|
Move GetAttachmentRenderTarget and GetAttachmentSerial to FramebufferD3D.h.
BUG=angle:841
Change-Id: Ic341239e848f1daf7cf38f233d79a58f221780f4
Reviewed-on: https://chromium-review.googlesource.com/232969
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
7dd2e10d
|
2014-11-10T15:19:26
|
|
Merge the ProgramBinary class into Program.
BUG=angle:731
Change-Id: I2ee97155841dc62f04bb71c1f2035d210fd3883c
Reviewed-on: https://chromium-review.googlesource.com/232694
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
21329414
|
2014-12-02T20:50:30
|
|
Revert "Merge the ProgramBinary class into Program."
Issues appeared on the FYI waterfall, content_gl_tests hangs.
This reverts commit 2195a6d6032883ed05468d5ecd019e7cb9a27bce.
Change-Id: I9fe1a53cf40887ae5a98fd77b4872f41085fcea7
Reviewed-on: https://chromium-review.googlesource.com/232386
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
2195a6d6
|
2014-11-10T15:19:26
|
|
Merge the ProgramBinary class into Program.
BUG=angle:731
Change-Id: Ia0a356c0684f3a3576c71dfd04b00874318dd084
Reviewed-on: https://chromium-review.googlesource.com/228701
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
4f4207f7
|
2014-12-01T10:07:56
|
|
Make some FramebufferAttachment methods const.
BUG=angle:841
Change-Id: I4670e417c1976ebd2198ea4c8927a00fff7bb15c
Reviewed-on: https://chromium-review.googlesource.com/232380
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
2b5420c0
|
2014-11-19T14:20:15
|
|
Merge libGLESv2 and libEGL classes into libANGLE.
BUG=angle:733
Change-Id: Ic491c971411fe82c56cd97c5c8325ac14ec218df
Reviewed-on: https://chromium-review.googlesource.com/230830
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|