|
bf067eff
|
2015-07-20T14:21:34
|
|
Fix order of Renderer11 initializer list.
BUG=angleproject:916
Change-Id: I5be7460b737095eedb886be3e8978765c0940757
Reviewed-on: https://chromium-review.googlesource.com/286784
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0bf58eab
|
2015-07-09T12:47:29
|
|
Renderer11: expose a metric for the Buffer11 CPU copies size
This will allow us to measure the impact of subsequent optimizations on
the memory consumption of Chrome.
BUG=angleproject:916
Change-Id: Ib57fdfcc2950917eff33080bfb3db574595ecb6d
Reviewed-on: https://chromium-review.googlesource.com/284637
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
02df796f
|
2015-07-01T10:03:42
|
|
Centralize renderer limitations for non-conformant renderers
Some renderer configurations (e.g. D3D11 Feature Level 9_3) have
some limitations and aren't quite conformant. This change
generates errors when applications hit these limitations, and
informs developers that they must work around them.
BUG=angleproject:1055
Change-Id: I6a4a9e5cc71288ca366a54c769ca0eb82e79a7f7
Reviewed-on: https://chromium-review.googlesource.com/282814
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
75da1974
|
2015-06-16T15:03:14
|
|
Changed d3d11 desktop renderer to use d3d9 debug annotation interfaces.
The D3D11 renderer must choose the D3D9 debug annotator because the D3D11 interface
method ID3DUserDefinedAnnotation::GetStatus on desktop builds doesn't work with the Graphics
Diagnostics tools in Visual Studio 2013.
The D3D9 annotator works properly for both D3D11 and D3D9.
Incorrect status reporting can cause ANGLE to log unnecessary debug events.
Change-Id: I9a31c63cbc506904eb39577826fc4df8d503f03a
Reviewed-on: https://chromium-review.googlesource.com/278162
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a8bb9cdc
|
2015-07-13T09:59:53
|
|
Lazily load the HLSL compiler DLL.
If the user is loading resources straight from the disk with the
binary shader cache, they shouldn't need to load the compiler DLL
at all. Note: might be a good idea to track more statistics here.
BUG=angleproject:1014
Change-Id: Ie75dcce3eb249347c545f1bbca7d0977df7addee
Reviewed-on: https://chromium-review.googlesource.com/282554
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
8e34494f
|
2015-07-09T14:22:07
|
|
Share data between VertexArray and Impl.
Using the same design as for the Framebuffer::Data helper, we can
use a struct to share between the object and the Impl. This also
gives the Impl access to the maxEnabledAttrib, and saves some
duplicated storage.
BUG=angleproject:1040
TEST=WebGL CTS, end2end_tests, unittests
Change-Id: I55c91e8a5f3dcae302cab441182320aafd5375ef
Reviewed-on: https://chromium-review.googlesource.com/283930
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d3dfda2b
|
2015-07-06T08:28:49
|
|
Refactor how we store vertex formats.
Instead of storing a vertex format as a struct with the full info,
instead use an enum, and look up the info when we need it. This
saves a lot of constructor initialization time, operator comparison
time, and storage. It also will allow us to look up D3D format info
more quickly.
BUG=angleproject:959
Change-Id: I202fd1ea96981073bc1b5b232b1ec3efa91485cb
Reviewed-on: https://chromium-review.googlesource.com/277289
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
fda3ec74
|
2015-07-08T08:22:04
|
|
Fix another clang warning with -Wmissing-braces in ANGLE.
Clang warns if there are missing braces around a subobject
initializer. The most common idiom that triggers this is:
STRUCT s = {0};
which can be more simply written as:
STRUCT s = {};
BUG=505297
Change-Id: Ie9f9037a1ba4b6303daa30424cdc24c1ecf18896
Reviewed-on: https://chromium-review.googlesource.com/284160
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1bd7dd45
|
2015-06-11T08:58:53
|
|
Added 16-bit formats to GLConfigs to reduce offscreen texture memory usage.
BUG=angleproject:1042
Change-Id: I7024bd47601a21b08cafbf6460d512151b53d035
Reviewed-on: https://chromium-review.googlesource.com/277002
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
558f2b5a
|
2015-06-02T09:34:11
|
|
Added emulated indexed pointsprite rendering support.
This emulation is for renderers that do not support Geometry Shaders.
BUG=angleproject:949
Change-Id: I7acf003e83ea6661f10a703486e6d07eb28786f8
Reviewed-on: https://chromium-review.googlesource.com/274851
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Cooper Partin <coopp@microsoft.com>
|
|
03260faa
|
2015-06-22T13:57:22
|
|
D3D11: Optimize checks for active UBOs.
We can reduce the amount of iterations we use by using std::vectors
for storing UBO indexes, and resizing them to the max active index.
This allows us to skip inactive ranges. Reduces draw call overhead.
BUG=angleproject:959
Change-Id: I2577e5dbdce0e5ab102ca916eb7f1f35cf03f9ad
Reviewed-on: https://chromium-review.googlesource.com/277287
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
f33ab835
|
2015-06-30T19:08:16
|
|
Fix some clang warnings with -Wmissing-braces in ANGLE.
Clang warns if there are missing braces around a subobject
initializer. The most common idiom that triggers this is:
STRUCT s = {0};
which can be more simply written as:
STRUCT s = {};
BUG=505297
Change-Id: Ib4513ee195d43e7c4a4a2f46c328866f0023a2a5
Reviewed-on: https://chromium-review.googlesource.com/282921
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Kenneth Russell <kbr@chromium.org>
|
|
137b1517
|
2015-06-17T16:14:53
|
|
Improve D3D GetProgramBinary chipset validation
- Check chipset identifying info before trying to compile shaders
- Check device feature level when loading a binary
- Use chipset VendorID/DeviceID etc instead of LUID so that program
binaries remain valid across system reboots
Change-Id: I88ba4543bb990956d1d8fb324abf9784d72950cd
Reviewed-on: https://chromium-review.googlesource.com/280428
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
476682e6
|
2015-06-30T10:04:29
|
|
Use std::vector for TranslatedAttribs.
This allows us to cache a std::vector between calls, and avoids us
calling allocation/constructors for locals, which saves us some
time. It also allows us to use the vector's size to limit the range
of attribs we look at.
BUG=angleproject:959
Change-Id: I799ed6c92fa8fca96e92e235b125a11d2d551aab
Reviewed-on: https://chromium-review.googlesource.com/277286
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
aa9e9971
|
2015-06-22T13:57:16
|
|
D3D11: Reduce overhead of clearing unused textures.
*re-land with compile fix*
We would spend a fair bit of time iterating over the unused textures,
setting them to null one-by-one, and updating our cache. We can
reduce this time by smarter caching, and skipping unmodified ranges.
BUG=angleproject:959
Change-Id: I4de20bc131c4a568108ad670a2ef491cfd4c50ed
Reviewed-on: https://chromium-review.googlesource.com/280916
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d4898490
|
2015-06-22T17:56:18
|
|
Revert "D3D11: Reduce overhead of clearing unused textures."
Compile error on Windows:
error C2561: 'rx::Renderer11::clearTextures' : function must return a value
BUG=angleproject:959
This reverts commit 475e5b7f91f8ed9688b5a46efe54f15357096e3e.
Change-Id: Id34ff9530a71ce43549e2eb78d2d927084d46a47
Reviewed-on: https://chromium-review.googlesource.com/280915
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
475e5b7f
|
2015-06-22T13:12:45
|
|
D3D11: Reduce overhead of clearing unused textures.
We would spend a fair bit of time iterating over the unused textures,
setting them to null one-by-one, and updating our cache. We can
reduce this time by smarter caching, and skipping unmodified ranges.
BUG=angleproject:959
Change-Id: I92f11cf63542c55bb3adbbb8276a54bcfe848f61
Reviewed-on: https://chromium-review.googlesource.com/277118
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
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>
|
|
ab4fd98f
|
2015-05-15T14:58:22
|
|
Small fixes for passing code analysis tools.
BUG=angleproject:1005
Change-Id: I8f2a6c0a5a6157303e436b96cc4c4ff1c29cfe18
Reviewed-on: https://chromium-review.googlesource.com/271600
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
405f3471
|
2015-06-04T13:09:06
|
|
In D3D11, check for 16-bit texture support and use if possible
BUG=angleproject:1002
The last patch added new tests which failed on some Intel Win7
machines. This was due to a driver bug. Windows Updates have
been applied to the failing machine, and the tests now pass.
Changes between second and current (third) failed 16-bit patch:
- Reenable usage of 16-bit DXGI textures on all Intel cards
- Disable 16bpp tests on Intel D3D11 until the bots are updated
- Updated Win7 test machine. Tests now pass
Changes between first and second failed 16-bit patch:
- Disabled usage of 16-bit DXGI textures on all Intel cards
- Added DXGI->GL conversion entries for 16-bit formats, which
fixes FBO readback issues. The ES CTS and dEQP tests which
failed with the last patch now pass.
Change-Id: Id8ea89bfbc450beea54afdd398956bc97ecf3c01
Reviewed-on: https://chromium-review.googlesource.com/275082
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
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>
|
|
450a80a2
|
2015-06-09T12:57:47
|
|
d3d11: Add a histogram to capture DLL loading time.
This should complete the breakdown of the time we spent in
eglInitialize.
BUG=angleproject:1014
BUG=436191
Change-Id: I3b44f10c56322924f9391a56973df5f439fa83bb
Reviewed-on: https://chromium-review.googlesource.com/276268
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
6bef4ff7
|
2015-06-01T21:08:31
|
|
Revert "In D3D11, check for 16-bit texture support and use if possible"
Seeing failures on Win7 + Intel machines.
Example build:
https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28Intel%29/builds/11756
This reverts commit 673115d9cc4251cd690e14a98ef0c717ba9de0b9.
Change-Id: Ie2b6cc1ae9c4e83dde3a531e38252c95ac2e2a0a
Reviewed-on: https://chromium-review.googlesource.com/274450
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
673115d9
|
2015-05-28T09:27:57
|
|
In D3D11, check for 16-bit texture support and use if possible
BUG=angleproject:1002
Changed since last failed 16-bit patch:
- Disabled usage of 16-bit DXGI textures on all Intel cards
- Added DXGI->GL conversion entries for 16-bit formats, which
fixes FBO readback issues. The ES CTS and dEQP tests which
failed with the last patch now pass.
Change-Id: Ib66abf73f23dbb4329f0a32d7f3dafbbc23e6c08
Reviewed-on: https://chromium-review.googlesource.com/273712
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
57df19ce
|
2015-05-28T13:32:21
|
|
Add timing stats for Renderer11::initializeDevice.
This gives us insight to what we can optimize away.
BUG=angleproject:1014
Change-Id: I86208c5cbebe14905a05d0859b9e37368f4c25d4
Reviewed-on: https://chromium-review.googlesource.com/273862
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
8e7549bd
|
2015-05-27T14:05:10
|
|
Revert "In D3D11, check for 16-bit texture support and use if possible"
Causing failures on Windows 8 bots running ES CTS and Windows 7 Intel bot running angle tests.
Example failures:
https://build.chromium.org/p/chromium.gpu.fyi/builders/Win8%20Release%20%28NVIDIA%29/builds/14442
https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28Intel%29/builds/11627
This reverts commit d63f08fcc32ea17bac2b025f0ad3261664ff79c9.
Change-Id: I841aee5fb0973432f249277126424b909d5b3e17
Reviewed-on: https://chromium-review.googlesource.com/273416
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
d63f08fc
|
2015-05-21T10:22:04
|
|
In D3D11, check for 16-bit texture support and use if possible
BUG=angleproject:1002
Change-Id: I36a5ee774b38e9865b2eb6c6789afd316c4eff16
Reviewed-on: https://chromium-review.googlesource.com/272061
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
4f5659ae
|
2015-05-22T10:26:45
|
|
Pick return value from copyTexture.
Change-Id: Ia04358645348326c5577854053b550426121e64e
Reviewed-on: https://chromium-review.googlesource.com/272765
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Tested-by: Minmin Gong <mgong@microsoft.com>
|
|
08a5fedd
|
2015-05-19T15:58:00
|
|
In D3D11, return 0 if not conformant, rather than GL_NONE
Change-Id: Ica6484d1b5960f162ad88648ff9b2b9b96710930
Reviewed-on: https://chromium-review.googlesource.com/272166
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
fb074dd8
|
2015-05-19T12:34:35
|
|
Revert "Clear image descs on Impl errors."
Didn't fix the crash, and the crash experiment is complete.
BUG=485543
This reverts commit 9674850737bd3e7f44fdc9d1ddc42fffd76f2997.
Change-Id: If7d97901b87506bf306ab5558575d0413c76cb68
Reviewed-on: https://chromium-review.googlesource.com/272150
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d176dbd7
|
2015-05-07T16:25:51
|
|
Enable postSubBuffer on D3D11 with DXGI 1.2.
BUG=147291
Change-Id: Iafddb83b4949168f1c59272a99ae0244d86ce3f9
Reviewed-on: https://chromium-review.googlesource.com/270572
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Sunny Sachanandani <sunnyps@chromium.org>
|
|
96748507
|
2015-05-11T10:06:12
|
|
Clear image descs on Impl errors.
This is a speculative fix for a possible crash, when we could get
out-of-sync between the Impl and the GL state.
BUG=485543
Change-Id: Id26475f1aae7da05b5ffd802c4a7600e21b40315
Reviewed-on: https://chromium-review.googlesource.com/270194
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
558d5eb4
|
2015-05-14T11:49:13
|
|
Use a sparse histogram for D3D11CreateDevice errors.
This avoid us needing to capture an enum value for every possible
error code. Leave the existing enum values in for now.
BUG=477701
Change-Id: Iccaa4d9b732fe4d56432e17578421cba11bcf9ce
Reviewed-on: https://chromium-review.googlesource.com/271159
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
72537ef1
|
2015-05-14T10:16:08
|
|
Add collection of D3D11 and DXGI stats.
Will require a chromium-side patch to enable boolean histograms.
BUG=angleproject:966
BUG=436191
Change-Id: I3026c73894fbbff521503b377955816a8e831df8
Reviewed-on: https://chromium-review.googlesource.com/271174
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e897cecf
|
2015-05-14T15:50:41
|
|
Revert "Add more D3D11 init errors to stats collection."
Going to rework this in favor of a sparse histogram.
BUG=477701
This reverts commit c5146c762a5c4fa3df522593f4084767b3d71583.
Change-Id: I88ba7b461a1de04324a6ebe164037ea9081f2239
Reviewed-on: https://chromium-review.googlesource.com/271155
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
c5146c76
|
2015-05-12T11:00:47
|
|
Add more D3D11 init errors to stats collection.
We ran into the UNSUPPORTED value when looking at D3D11 on a VM.
It's quite possible that systems which don't support D3D11 return
this value when initialization fails.
Also add a few more severe errors such as device removed.
BUG=477701
Change-Id: I2ebbfff5f7eed6fe3939dea86b25845a748caedc
Reviewed-on: https://chromium-review.googlesource.com/270346
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6cd03cf9
|
2015-05-12T19:28:10
|
|
Revert "Create a child window in SurfaceD3D when needed."
Reverting until chromium sandbox issues are resolved.
This reverts commit b7f1a8b0ab3489a7463749e7fc088187bfafbd35.
BUG=484963
BUG=angleproject:961
Change-Id: I4b030329a322d0a96a18e6ae875d500c5f755ddd
Reviewed-on: https://chromium-review.googlesource.com/270490
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
eaa759c4
|
2015-04-02T13:02:53
|
|
Remove Texture serials and Texture::INCOMPLETE_TEXTURE_ID.
Texture serials were not used in any place that pointers could not be used
and Texture::INCOMPLETE_TEXTURE_ID was only referenced by RendererD3D.
This was the last place that serials are used in the gl layer.
BUG=angleproject:681
Change-Id: Iad24321fba57db8ade3c9eb8f04cc20e98ded1b0
Reviewed-on: https://chromium-review.googlesource.com/263659
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
831b1953
|
2015-05-05T11:02:27
|
|
Move the IndexRangeCache and Range types to the gl namespace.
BUG=angleproject:881
Change-Id: Ib05149facee9fcc7714cb957ca8647b3498a36b6
Reviewed-on: https://chromium-review.googlesource.com/269254
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
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>
|
|
6afcd6dd
|
2015-04-28T12:39:09
|
|
Refactor CreateDevice error checking.
Also return a different code for a NULL pointer, vs a failed call.
BUG=477701
Change-Id: Ib0584371d51b99760e80ce5481a1e72e1ec673e0
Reviewed-on: https://chromium-review.googlesource.com/267753
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
30cb86d8
|
2015-04-22T10:07:23
|
|
Create a child window in SurfaceD3D when needed.
BUG=angleproject:961
BUG=angleproject:860
Change-Id: I137d27bafc4d690b159ffef8cc69d6f1c5a05131
Reviewed-on: https://chromium-review.googlesource.com/267681
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
3fe36ebd
|
2015-04-28T16:44:12
|
|
Revert "Create a child window in SurfaceD3D when needed."
Causing errors with D3D9, see build:
http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28NVIDIA%29/builds/15149
This reverts commit b7f1a8b0ab3489a7463749e7fc088187bfafbd35.
Change-Id: I6f1c3fd119f76a298e5b3fb676ddcb208cd1234b
Reviewed-on: https://chromium-review.googlesource.com/267673
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b7f1a8b0
|
2015-04-22T10:07:23
|
|
Create a child window in SurfaceD3D when needed.
BUG=angleproject:961
Change-Id: I61931961f8cb86b47012edd2bc08d0e1e7a5d0f7
Reviewed-on: https://chromium-review.googlesource.com/266515
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: John Bauman <jbauman@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b36e9b89
|
2015-04-27T19:10:48
|
|
Revert "D3D11: Filter HRESULT error code properly."
Fix is incorrect: See http://crbug.com/477701
This reverts commit 02bce6e559988f2c4a6ec0c8905ed90254467baa.
Change-Id: I718d1a7e5d9fef662cee9ba90407a835466c74fc
Reviewed-on: https://chromium-review.googlesource.com/267560
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
752ce192
|
2015-04-14T11:11:12
|
|
D3D11: Use DX generateMips to generate mipmaps whenever possible.
BUG=angleproject:974
Change-Id: I95937fe7a0833de77c52f838ebb3ecba55dfbf8a
Reviewed-on: https://chromium-review.googlesource.com/265640
Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b6bda4af
|
2015-04-20T12:53:26
|
|
Make Framebuffer::Data members private.
This makes "Data" a proper class, and enforces access control when
used in FramebufferImpl. This gives a cleaner refactor when we
switch the internals of the class to use value types to store
attachments instead of pointer types.
BUG=angleproject:963
Change-Id: If825095458eaf9367f616f0bb54084025efb9882
Reviewed-on: https://chromium-review.googlesource.com/265937
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
ad0a486b
|
2015-04-20T16:32:13
|
|
Add D3D11CreateDevice timing histogram.
This should give us a bound on how much we can improve startup
time in ANGLE on D3D11 across all users.
BUG=angleproject:944
BUG=436191
Change-Id: Ie9047c0424429aecec5f6d7be8e119ebcc53fbe3
Reviewed-on: https://chromium-review.googlesource.com/266524
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
02bce6e5
|
2015-04-20T12:53:25
|
|
D3D11: Filter HRESULT error code properly.
The Windows helper function HRESULT_CODE masks out some bits that
obscure the error code. This could be why we're seeing some
undetermined errors in our logs.
BUG=477701
Change-Id: I6eee442c149c2568e3823edc538d365b06ee20d8
Reviewed-on: https://chromium-review.googlesource.com/266375
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f17959aa
|
2015-04-17T13:04:20
|
|
D3D11: Record more explicit error codes in Renderer init.
Our data shows the most common D3D11CreateDevice failure as being
'other error'. Explicitly enumerate more error codes so we can
figure out which value we're getting.
BUG=47701
Change-Id: Ibcda5e8ff1bb0368b1bfe3c8e7e3ffbb404771ce
Reviewed-on: https://chromium-review.googlesource.com/265939
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
045536bf
|
2015-03-27T15:17:18
|
|
Store current transform feedback buffer bindings in the object itself.
BUG=angleproject:763
Change-Id: I76565f68fa8145da29713de2a517a39a8d50a24b
Reviewed-on: https://chromium-review.googlesource.com/263061
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b1eee7af
|
2015-04-14T13:57:07
|
|
D3D11: Only use share handles with HW driver.
WARP does not support surface sharing like native D3D11. This,
combined with a Chromium-side change, should fix WARP rendering
in Chrome.
BUG=angleproject:973
BUG=429792
Change-Id: I41e778625e8697e45657843f2f337bcffe7ddbe2
Reviewed-on: https://chromium-review.googlesource.com/265611
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
c9d13d2d
|
2015-04-14T14:53:06
|
|
Add trace events for D3D11 initialization.
This helps a local user profile their D3D11 startup time.
BUG=436191
BUG=angleproject:966
Change-Id: Ib1b3d62194233cd502980d87c316a95e9bd3a04c
Reviewed-on: https://chromium-review.googlesource.com/264935
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
97d61eb5
|
2015-04-14T09:08:16
|
|
Add extension EGL_ANGLE_device_d3d
Access to the D3D device is needed for some advanced scenarios.
New entry points eglQueryDisplayAttribANGLE and
eglQueryDeviceAttribANGLE have been added in this change
to implement this extension.
BUG=angleproject:935
Change-Id: Ie39e86a2b6c6d8d05a08964b2907fb9fba5dec13
Reviewed-on: https://chromium-review.googlesource.com/265591
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
1ea8284d
|
2015-04-14T15:28:56
|
|
Revert "Add extension EGL_ANGLE_device_d3d"
Compile error on clang:
src/libANGLE/Display.cpp:259:23: error: allocation of incomplete type 'egl::Device'
mDevice = new Device(this, impl);
^~~~~~
src/libANGLE/Display.h:36:7: note: forward declaration of 'egl::Device'
class Device;
^
In file included from src/libANGLE/Display.cpp:11:
In file included from src/libANGLE/Display.h:17:
In file included from src/libANGLE/Error.h:80:
In file included from src/libANGLE/Error.inl:9:
src/common/angleutils.h:66:5: error: deleting pointer to incomplete type 'egl::Device' may cause undefined behavior [-Werror,-Wdelete-incomplete]
delete resource;
^ ~~~~~~~~
src/libANGLE/Display.cpp:209:5: note: in instantiation of function template specialization 'SafeDelete<egl::Device>' requested here
SafeDelete(mDevice);
^
src/libANGLE/Display.h:36:7: note: forward declaration of 'egl::Device'
class Device;
^
2 errors generated.
This reverts commit 6dacaff4e03d4f6b4c444a3fff018c1297cd25ba.
Change-Id: Ide348e156324a5af668604362c0b249ea73b6083
Reviewed-on: https://chromium-review.googlesource.com/265626
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6dacaff4
|
2015-02-19T16:31:57
|
|
Add extension EGL_ANGLE_device_d3d
Access to the D3D device is needed for some advanced scenarios.
New entry points eglQueryDisplayAttribANGLE and
eglQueryDeviceAttribANGLE have been added in this change
to implement this extension.
BUG=angleproject:935
Change-Id: Id1560b0887fa5882b9858af7bad9043ada67038d
Reviewed-on: https://chromium-review.googlesource.com/251610
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
794e0009
|
2015-04-07T18:31:54
|
|
Fix and enable warning C4244 (Conversion from 'type1' to 'type2', possible loss of data)
Change-Id: Id0e06d7d6600344d858f00dabc219d79289bbc82
Reviewed-on: https://chromium-review.googlesource.com/265020
Tested-by: Minmin Gong <mgong@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b3584fb4
|
2015-04-09T17:34:21
|
|
Revert "Fix and enable warning C4244 (Conversion from 'type1' to 'type2', possible loss of data)"
Causing a build failure on Mac/Clang:
./Tokenizer.cpp:551:7: error: extra tokens at end of #else directive [-Werror,-Wextra-tokens]
#else if defined(_MSC_VER)
http://build.chromium.org/p/chromium.gpu.fyi/builders/GPU%20Mac%20Builder/builds/29136
This reverts commit 3b26e231d99154814eb428f75a67bbe7a21adadc.
Change-Id: I2d11ddcc18130d908fd2ec3d6f5ab890cfccd5e7
Reviewed-on: https://chromium-review.googlesource.com/264983
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
3b26e231
|
2015-04-07T18:31:54
|
|
Fix and enable warning C4244 (Conversion from 'type1' to 'type2', possible loss of data)
Change-Id: I73d9a2b9ad16f032be974b9c819de0dc1247c2ea
Reviewed-on: https://chromium-review.googlesource.com/264533
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
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>
|
|
8cf4a39b
|
2015-04-02T11:36:04
|
|
Return a ref for FBO attachment image indexes.
This cleans up the syntax somewhat. Also place some more of the
helper methods in the header.
BUG=angleproject:963
Change-Id: I62419095a7b65486f54d74791027594e8e595e48
Reviewed-on: https://chromium-review.googlesource.com/263629
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
4ef3c241
|
2015-04-02T11:36:01
|
|
Remove DefaultAttachment.
This class is no longer necessary or used.
BUG=angleproject:963
Change-Id: I5e6fa64822e637e1cc769be6fe777fa6e13a0d83
Reviewed-on: https://chromium-review.googlesource.com/263484
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
fd1bf4e6
|
2015-03-31T09:46:02
|
|
Add an BufferFactoryD3D class to help mocking.
This D3D-only class has one method, used to generate the D3D
IndexBuffer/VertexBuffer. This can help us mock up
IndexDataManager.
At a later point we can refactor the VertexFormat queries
from Renderer into a Caps struct that mirrors our Texure
Caps.
BUG=angleproject:956
Change-Id: Id8b1220a763873ee871ce92365bbee03633789c7
Reviewed-on: https://chromium-review.googlesource.com/262774
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Geoff Lang <geofflang@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>
|
|
4ad1709f
|
2015-03-10T16:47:44
|
|
Implement FramebufferGL.
BUG=angleproject:885
Change-Id: Ifb5818f185236c671cd7f20ed352edb887b49675
Reviewed-on: https://chromium-review.googlesource.com/258420
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
4bcf5b56
|
2015-03-19T14:00:19
|
|
Uninitialize the debug annotations when unloading a renderer
Change-Id: I125de997853c9deda365e4827322c29d1f20edf2
Reviewed-on: https://chromium-review.googlesource.com/261253
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-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>
|
|
2c7c625a
|
2015-03-12T14:15:38
|
|
Refactor D3D Debug Annotations code.
This encapsultates the different implementations and allows us to
compile debug.cpp in the common libraries without link errors.
BUG=angleproject:513
Change-Id: I16dc4c666fb4266ee5146d64d77eb9925c7584a8
Reviewed-on: https://chromium-review.googlesource.com/256450
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b8af723d
|
2015-03-16T22:33:25
|
|
Fix and enable warning C4245 (signed/unsigned mismatch)
Change-Id: If48043835fcc98341a0626e3ece7d0e3f7958059
Reviewed-on: https://chromium-review.googlesource.com/260630
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
0110e172
|
2015-03-11T12:26:30
|
|
Update ANGLE_platform_angle_d3d to be able to disable automatic trim.
BUG=angleproject:946
Change-Id: I5652495842b057998318b1583f8e1a586eba39aa
Reviewed-on: https://chromium-review.googlesource.com/258940
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
44efa0b8
|
2015-03-04T17:11:05
|
|
Conditionally enable IEEE strictness for isnan()
ANGLE's ESSL3 built-in function isnan() implementation just uses HLSL
intrinsic function isnan(). For HLSL intrinsic function isnan() to work
properly, IEEE strictness needs to be enabled for D3D compiler.
This change detects use of isnan() in shaders and passes compiler flag
D3DCOMPILE_IEEE_STRICTNESS whenever isnan is used in shaders. This
change also moves existing workarounds in D3DWorkaroundType to
D3DCompilerWorkarounds.
BUG=angle:927
TEST= dEQP tests
dEQP-GLES3.functional.shaders.builtin_functions.common.isnan.*
Change-Id: I1ce5b1a7a825fdd720a37dc9aeb71320e55162d9
Reviewed-on: https://chromium-review.googlesource.com/255834
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
56d1003e
|
2015-03-05T14:59:56
|
|
Add a D3D11 Debug member var.
This is useful for dumping live objects on exit, to debug resource leaks.
Change-Id: Ie88787defa37853d0a33c951b107ceac289e58df
Reviewed-on: https://chromium-review.googlesource.com/256461
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
85a1804d
|
2015-03-05T15:41:41
|
|
Make getColorAttachmentsForRender D3D-only.
This encapsulates the workaround in the D3D renderer, and also
optimizes the workaround to only compute a new set of attachments
when there is a change to the state.
BUG=angleproject:930
Change-Id: Ibdc15078236e2d19b544fae8e65b7f2554f31844
Reviewed-on: https://chromium-review.googlesource.com/254102
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
7147f01a
|
2015-03-05T15:41:40
|
|
Cleanups to FramebufferD3D.
With the new shared state structure, we can eliminate a lot of the
state tracking within the FramebufferD3D implementation.
BUG=angleproject:930
Change-Id: I0953e321bae3afe7cde7b73c55af62546665c890
Reviewed-on: https://chromium-review.googlesource.com/254101
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d1405e51
|
2015-03-05T15:41:39
|
|
Share FBO state with object and Impl.
This patch introduces a new Framebuffer::Data class, which stores
attachment related state. This will eliminate the need to store
duplicated state between the classes.
BUG=angleproject:930
Change-Id: I80de4db39ab99d623b0ad8306bf3cbb794cd8bd5
Reviewed-on: https://chromium-review.googlesource.com/254100
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
0af26e10
|
2015-03-05T19:54:33
|
|
Prefer using caps to system attachment limits.
The caps structure can often give a lower and faster bound, as well
as being more general. We should gradually move away from the
implementation limits.
BUG=angleproject:930
Change-Id: I979472cdb6f59c6f0cc0c80f1c29c51295872bea
Reviewed-on: https://chromium-review.googlesource.com/256731
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b9293977
|
2015-02-19T11:07:54
|
|
Add UMA histogram for D3D11 init failures.
This will give ANGLE in Chrome a sense of device init calls fails in
D3D11, and why.
BUG=436191
Change-Id: Ia7b1bfa334cec595b6f0265357385d0dcc2d6cbf
Reviewed-on: https://chromium-review.googlesource.com/248632
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
7825f619
|
2014-11-26T16:19:41
|
|
Update ANGLE_platform_angle_d3d to use a device type enum instead of WARP bool.
BUG=angle:490
Change-Id: I1555e7f09b23138753e52ddf720d088587f7cadb
Reviewed-on: https://chromium-review.googlesource.com/232104
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f7b10164
|
2015-02-12T14:56:07
|
|
Fixed variable shadowing warnings
Change-Id: I7cf9e09f4003991e44195bedfe58891288541f81
Reviewed-on: https://chromium-review.googlesource.com/249432
Reviewed-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
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>
|
|
5274202f
|
2015-02-04T14:55:39
|
|
Unbind unused stream out from the D3D11 pipeline to avoid conflicts.
Also allow points drawing without gl_PointSize if transform feedback is
active.
Change-Id: I172d423e847b35b94ebaea102dd97b695575c828
Reviewed-on: https://chromium-review.googlesource.com/246100
Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b2a5e342
|
2015-02-11T13:13:21
|
|
Return egl::Error from Renderer::initialize.
This extra Error info can be useful for passing back additional info.
In the short-term this means we can implement a UMA histogram at some
point with a code that represents a more specific reason why the
init failed.
BUG=436191
Change-Id: If5e099a9ce32e87843754cd4f40d726dd5bad4b8
Reviewed-on: https://chromium-review.googlesource.com/246564
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
38832d17
|
2015-02-09T10:01:47
|
|
Add Display getters for native display and attribs.
This simplifies the logic in the Renderer init.
BUG=angle:905
Change-Id: I01bf3701dd85f50e369e2c11e0e2a7cb638ccf00
Reviewed-on: https://chromium-review.googlesource.com/247650
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b0e83f46
|
2015-01-28T17:39:34
|
|
Catch errors in TextureStorage creation in TextureD3D::getNativeTexture.
BUG=450257
Change-Id: Iba75d9f0607177fff0bec7fcd2564a8d2e26da8e
Reviewed-on: https://chromium-review.googlesource.com/243882
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
4e47b92f
|
2015-02-03T09:04:20
|
|
Fix instanced point sprites when gl_PointSize is specified but not used
Change-Id: I2350fa60cae55f02d7b484c34544c035acaba6ad
Reviewed-on: https://chromium-review.googlesource.com/245703
Reviewed-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
cf077794
|
2015-01-28T15:23:17
|
|
Track bound render targets in D3D11 with uintptr_t and dirty them with -1.
BUG=447419
BUG=452587
Change-Id: Ic36ebf108eca93e1239cc9c2a0d6479c84e93ace
Reviewed-on: https://chromium-review.googlesource.com/244663
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
bb3f1802
|
2015-01-09T16:39:04
|
|
Remove swap interval queries from Renderer.
BUG=angle:658
Change-Id: I7cd9cf3693c06c46ec6a4054e8fe1586f399273c
Reviewed-on: https://chromium-review.googlesource.com/239903
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f21a1080
|
2015-01-09T14:41:27
|
|
Generate the full EGL configs in the Renderers.
Specify the default framebuffer formats in GL formats but still use BGRA
and ANGLEX formats for now.
BUG=angle:658
Change-Id: I7192db4ca76ab4b0b42daa43785a7ddd9528a9ca
Reviewed-on: https://chromium-review.googlesource.com/239902
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|