|
aff8084b
|
2014-08-04T10:47:56
|
|
Fix VertexBuffer11::getSpaceRequired for instanced attribs.
The computation could copy more data than needed. Although benign
it could cause performance degredation compared to the D3D9 back
end.
Change-Id: I3cf1dc79085c33d44040fd55153e63a4e5e63cb1
Reviewed-on: https://chromium-review.googlesource.com/210640
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
5d601382
|
2014-07-22T15:14:06
|
|
Simplify formatutils.h by exposing the info structures.
Removed all the separate query functions and simply expose the internal
info structures. This reduces the number of std::map/std::set operations
that were hidden behind the API.
Moved the validation tables for ES3 format combinations and effective
internal formats into validationES3.cpp so that formatutils.h only has
generic GL format queries.
BUG=angle:658
Change-Id: Ieb60d42b8eafcdb4f21dcbec130b39478ce5f7c5
Reviewed-on: https://chromium-review.googlesource.com/206835
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
5c1e58d0
|
2014-08-04T10:47:58
|
|
Add missing cache clears to D3D buffer classes.
BUG=angle:709
Change-Id: I93f92b916a0da26975cd459399cc2873cb4ab9f0
Reviewed-on: https://chromium-review.googlesource.com/210642
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
cfaaf72f
|
2014-07-31T10:47:54
|
|
Fix CopyBufferSubData.
We were passing the arguments from the gl::Buffer stub to the
implementation class, which was breaking the call.
Also clean up a few comments.
BUG=angle:709
Change-Id: Ib92a36d1c52d60d8929f567d0daf54e9d6a2d127
Reviewed-on: https://chromium-review.googlesource.com/210641
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
f8bdfebc
|
2014-07-31T18:31:28
|
|
Revert "Unifying the various texture interfaces where possible"
This reverts commit 8c9038d6f57a4b53c97c4fb803259e7a50ab4cea.
Change-Id: I29c25121870e6f8d12144d235029f46fff90be7c
Reviewed-on: https://chromium-review.googlesource.com/210651
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
8c9038d6
|
2014-07-21T09:43:22
|
|
Unifying the various texture interfaces where possible
BUG=angle:688
Change-Id: I43be738e0a42f7a7e1448e1d9300b30d4bc54125
Reviewed-on: https://chromium-review.googlesource.com/209343
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
4fbd36ec
|
2014-07-29T15:20:48
|
|
Add a test for multisampled PBOs.
We don't allow ReadPixels from multisampled targets in GL.
Also update the assertions in Buffer11 to reflect our expectations.
BUG=angle:511
Change-Id: Ia3d5f796f5405fbae1187f3d45b0080d7f24b6d9
Reviewed-on: https://chromium-review.googlesource.com/210053
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
5f4c4636
|
2014-07-03T13:46:52
|
|
Use the FormatCaps for multisample validation and queries.
BUG=angle:658
Change-Id: Ic9fa53fb62d7eff62f07b68d7ddada461ecad859
Reviewed-on: https://chromium-review.googlesource.com/206832
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8d62bcc4
|
2014-07-25T15:08:21
|
|
Avoid D3D11 primitive restart index using 32-bit indices
D3D11 interprets an index value of 0xFFFF in a 16-bit index buffer as a
primitive restart marker. This behavior can't be toggled off.
http://msdn.microsoft.com/en-us/library/windows/desktop/bb205124(v=vs.85).aspx
We work around it by converting to 32-bit indices.
BUG=angle:708
Change-Id: Ibc92d6ba98e5f11a98d76cae14f90ca050a19964
Reviewed-on: https://chromium-review.googlesource.com/209883
Tested-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6b19b002
|
2014-07-16T14:32:05
|
|
Removing D3D-isms from gl::Texture
BUG=angle:688
Change-Id: I0cdc758000993f2d54240c69a84f5ae149306d9e
Reviewed-on: https://chromium-review.googlesource.com/209332
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
07d49ef5
|
2014-07-25T11:52:38
|
|
Fix Clang warning with preloaded D3DCompiler string.
Clang was complaining that we were casting a char* to a wchar_t*.
BUG=angle:707
Change-Id: I063165e9add4e9b57d131181da30c05e5abbc1c2
Reviewed-on: https://chromium-review.googlesource.com/209618
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a09403c0
|
2014-07-21T10:03:36
|
|
Fix masked ClearBuffer.
We were not properly setting the masked channels for these APIs.
Since we use a std::vector for tracking the render targets for
a particular ClearBuffer call, we lose the indexing into the
clear parameters. Fix this by storing the information in the
std::vector along with the Render Target.
BUG=angle:702
Change-Id: Ie3b1e870aa04054411c4f155682b86a340ec00cf
Reviewed-on: https://chromium-review.googlesource.com/209103
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
cafa2102
|
2014-07-23T16:43:22
|
|
Fix Clang warnings.
MSVC's more permissing validator missed a dependent typename, and
deleting a void pointer.
BUG=angle:703,704
Change-Id: I227b94c9c1590973d7b11b0ed0bfda32f2a71cec
Reviewed-on: https://chromium-review.googlesource.com/209613
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
5063f55a
|
2014-07-23T16:27:31
|
|
Add a MemoryBuffer type to safely allocate large user data buffers.
MemoryBuffer has a similar interface to std::vector but returns a bool on
resize to do error checking.
BUG=angle:700
Change-Id: Ib201eeb91b07f5b7f970e153f5d1e110f9b2fa55
Reviewed-on: https://chromium-review.googlesource.com/209612
Reviewed-by: Nico Weber <thakis@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
142ec426
|
2014-07-16T10:31:30
|
|
Refactored Texture2DArray, separated out D3D logic
BUG=angle:688
Change-Id: Ie3e5ac2bedcffb816ef1537575f09afb3f5e7a35
Reviewed-on: https://chromium-review.googlesource.com/208381
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
18fe4294
|
2014-07-22T13:03:06
|
|
Added virtual destructors to VertexArrayImpl and BufferImpl
Change-Id: Ib9d8b2fc85b63f0cd52a2b19129a88ba7acbc017
Reviewed-on: https://chromium-review.googlesource.com/209380
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Tested-by: Nico Weber <thakis@chromium.org>
|
|
6cf8e1b9
|
2014-07-03T13:03:57
|
|
Reduce the number of TextureFormatCaps members.
Since GL has no notion of texture formats that can be used for different
types of textures, merge the TextureFormatCaps texture support members.
Also merge the various renderability members since the texture type is
enough to determine what type of renderable a format is.
BUG=angle:658
Change-Id: I7cba50b147fcca8f3880d65c06c57df9c65ed19c
Reviewed-on: https://chromium-review.googlesource.com/206830
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
591e6afe
|
2014-06-18T18:08:57
|
|
Add support for ANGLE_platform_angle.
BUG=angle:490
Change-Id: If3c897a9ae3d27b96e4b9bf9475a9ac23a1090ba
Reviewed-on: https://chromium-review.googlesource.com/185396
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
78b1acdb
|
2014-07-15T15:33:07
|
|
Refactored Texture3D, separated out D3D logic
BUG=angle:688
Change-Id: I6cda73c2e4c8a026b8c5222bc40cea93ad4e0ba3
Reviewed-on: https://chromium-review.googlesource.com/208102
Tested-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0511e808
|
2014-07-14T16:27:26
|
|
Refactored TextureCubeMap, separated out D3D logic
BUG=angle:688
Change-Id: I2300aaad4fab25df484e0bc3613ac3b176addc93
Reviewed-on: https://chromium-review.googlesource.com/208191
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
75ec7c5b
|
2014-07-17T15:00:38
|
|
Fix "error: extra qualification 'rx::ImageD3D::' on member 'makeImageD3D'"
As reported by GCC 4.8.1/MinGW.
Change-Id: If62d234074a0a9180f1f3c3619dbb2dd8047d0f3
Reviewed-on: https://chromium-review.googlesource.com/208670
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Andrew Knight <andrew.knight@digia.com>
|
|
f47bebc4
|
2014-07-09T14:28:42
|
|
Refactored Texture2D, separated out D3D logic
BUG=angle:688
Change-Id: I93c2ff0b125278234d61324844b79cc58135d4d8
Reviewed-on: https://chromium-review.googlesource.com/207675
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
53a94a82
|
2014-06-24T15:20:36
|
|
Refactors State to be a fully-qualified class
BUG=angle:685
Change-Id: I36cff2da985a12c7180fe2850ccd471f4cebbaad
Reviewed-on: https://chromium-review.googlesource.com/206634
Tested-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6518fe24
|
2014-07-08T15:16:52
|
|
Moved TextureStorage and Image into d3d
BUG=angle:688
Change-Id: I98ffa1082340a829a77fe5082958898b9c6ab1a2
Reviewed-on: https://chromium-review.googlesource.com/207054
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
0b7e5d8c
|
2014-07-11T16:33:09
|
|
Fix 64-bit warnings.
BUG=angle:631
Change-Id: I76439ca2549916d594a54a4a9a35387d80b023ba
Reviewed-on: https://chromium-review.googlesource.com/207441
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
c0b9ef4b
|
2014-07-02T10:02:37
|
|
Split Caps into Caps, Extensions and TextureFormatCaps.
Context now holds it's own Caps, Extensions and TextureFormat caps so that it
can modify them based on client version or work-arounds.
BUG=angle:658
Change-Id: Id71b6c89b7aa36e1f3dc42b0e4720eaed1851fb9
Reviewed-on: https://chromium-review.googlesource.com/206480
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
57f9b6d5
|
2014-06-04T16:46:37
|
|
Clean up generatemip.h.
* Move "private" functions into generatemip.inl.
* Use size_t for all dimensions.
* Use uint8_t pointers instead of unsigned char pointers.
BUG=angle:666
Change-Id: I8a1324802e4d670c042e0961c2b6f6fd53f4ebc7
Reviewed-on: https://chromium-review.googlesource.com/202503
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
86846e24
|
2014-06-03T15:48:54
|
|
Clean up the functions in loadimage.h/cpp.
* Capitalize the function names to fit the style guide.
* Use explicit sizes in the function names to avoid any confusion about
input or output sizes.
* Use explicit sized types in the functions to avoid potential issues on
new platforms since a lot of bit-twiddling is used.
* Use size_t for all sizes.
* Use uint8_t for all binary data for input and output data so that pointer
arithmetic is much easier.
* Move templated function definitions into an .inl file so that
loadimage.h looks as clean as possible.
BUG=angle:665
Change-Id: Id7173ed66d9e1b7ee3261eea11e77d838cbd2951
Reviewed-on: https://chromium-review.googlesource.com/202590
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e92a3546
|
2014-07-03T10:38:58
|
|
Remove redundant FBO query methods.
Several query methods simply wrapped a NULL check with a default
return value. Most of these safety checks were unnecessary.
BUG=angle:660
Change-Id: I0ac6897f06be082c8efab8721920d1b51ba999ee
Reviewed-on: https://chromium-review.googlesource.com/205606
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
aae65a4e
|
2014-05-26T12:43:44
|
|
Add caps for texture size limits and other caps in the 6.28 table.
BUG=angle:658
Change-Id: Ia265fe1d3713db7701b41e8430d6d186f352ab4a
Reviewed-on: https://chromium-review.googlesource.com/201363
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b23375fe
|
2014-07-08T10:49:39
|
|
Fixed an issue with Streaming Vertex data overflowing it's buffer.
Bug=angle:689
Change-Id: Ia0ee6f951822901560888ea300a3889601fa1d89
Reviewed-on: https://chromium-review.googlesource.com/207010
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
a328d569
|
2014-07-01T13:52:40
|
|
Removed sampler state getters and setters from gl::Texture
BUG=angle:688
Change-Id: I3f203e4d10059c12a0c00e967ad6c7d3b3a18074
Reviewed-on: https://chromium-review.googlesource.com/206335
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
d38f926a
|
2014-06-18T16:26:45
|
|
Refactoring Buffers
BUG=angle:681
Change-Id: I6c3809e0b9468dfe38465c55759c2572c21485da
Reviewed-on: https://chromium-review.googlesource.com/204896
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e4a492be
|
2014-06-19T14:14:41
|
|
Remove the clientVersion parameter from the format utils.
clientVersion was only useful for intitial validation of formats and not
required for queries. Only use the client version and caps structure to
validate if a format is available and then trust that it is supported past
the validation layer.
Fixed some inconsistancies between tables such as missing formats or
incorrect load functions in the ES3 tables.
BUG=angle:659
Change-Id: I8d33c902156ee6fb41efe937d93b0586191726e5
Reviewed-on: https://chromium-review.googlesource.com/201167
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e261b44a
|
2014-06-25T12:42:21
|
|
Remove obsolete Renderbuffer types.
RenderbufferProxySet and FramebufferTextureBindingPointer aren't
necessary any more with our refactored renderbuffer classes and
ownership of attachments by the Framebuffer.
We can also consolidate the FramebufferAttachment and implementation
to a single class, and no longer need to store ref counted objects
in the Framebuffer class directly.
BUG=angle:660
Change-Id: Idcc06dfb42b47242b33494e797a0ba06d6669511
Reviewed-on: https://chromium-review.googlesource.com/201838
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c7a41049
|
2014-06-23T12:03:25
|
|
Moved D3D specific files and folders under the D3D folder.
Change-Id: I8afd67e08ee558fe94532c377d079673357a7192
Reviewed-on: https://chromium-review.googlesource.com/205229
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
2b31af29
|
2014-05-23T14:45:40
|
|
Remove the ES version check for buffer to texture copies in D3D11.
With PBOs being exposed through an extension in ES2 now, this check is
uneccessary.
Change-Id: I609a4bcd944194d104e0774e5f6ea34e072c8d9c
Reviewed-on: https://chromium-review.googlesource.com/201320
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1aeb1314
|
2014-06-20T13:21:25
|
|
Move draw call primitive type check to the API.
A part of a larger refactoring to clean up the draw call
validation.
BUG=angle:571
Change-Id: I0b220d68c04524a81ca11dc58e10c90e458cabde
Reviewed-on: https://chromium-review.googlesource.com/203771
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
ac528015
|
2014-06-20T13:21:23
|
|
Move stencil mask validation to before the draw.
ANGLE (and WebGL) restrict the back and front stencil masks
on draw, due to D3D restrictions. We would previously only
validate this if the stencil was enabled in D3D9. In D3D11
we would validate the stencil masks even if the stencil is
disabled, which is the behaviour the spec suggests.
Moving the error check to before the draw also prevents any
issue with interrupting a draw call mid-way through.
BUG=angle:571
BUG=378754
Change-Id: If7651c2be559eef64a872082e144dafa3b2c524b
Reviewed-on: https://chromium-review.googlesource.com/203299
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
4ace423c
|
2014-06-18T19:12:48
|
|
Disable dynamic pixel shader generation.
Always generate the same pixel shader no matter what framebuffer is bound.
BUG=angle:670
Change-Id: I3fa91ff43363d49b38a19d3815ea523946c675d5
Reviewed-on: https://chromium-review.googlesource.com/204573
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
05b05028
|
2014-06-11T15:31:45
|
|
Add support for EXT_sRGB.
BUG=angle:672
Change-Id: I001ff3dde7a39e545a535a399c02f3a6d91634c8
Reviewed-on: https://chromium-review.googlesource.com/203460
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
66aaf723
|
2014-06-05T12:42:07
|
|
Always store GL_DEPTH_COMPONENT32_OES as a 24-bit depth format.
Greatly simplifies the format utils by not having any internal format <->
DXGI format conversions depend on the client version. 32 bit floats and
24bit integers have very close precision in the [0,1] range so there
should be no precision issues.
BUG=angle:659
Change-Id: Ife64445ef35f77283fc4c70c98754f5e87b6fb19
Reviewed-on: https://chromium-review.googlesource.com/202507
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6195ef87
|
2014-06-18T10:09:43
|
|
Fix transform feedback type.
We were using the wrong enum for the varying type, as well as using
the row count of the type. We should be using the column count, but
for matrices we treat them as transposed.
BUG=angle:679
Change-Id: I0eb7f68f629a4372c6822f65b2de51ecc88a03ed
Reviewed-on: https://chromium-review.googlesource.com/204520
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
afa40f7d
|
2014-06-18T10:09:42
|
|
Fix buffer bugs affecting transform feedback.
Running dEQP-GLES3.functional.transform_feedback would trigger a few
assertion failures because of some regressions that crept into our
code.
Among the regressions is assuming we can't map a buffer that has no
underlying storage object. This is valid since we sometimes allow
setData without creating a native storage.
Additionally we should free our existing data store on a new call
to SetData, to prevent old but "new" data revisions from complicating
our storage.
BUG=angle:679
Change-Id: Icd96a8a55a2b957d29382d8b8bbd7e8a7ab0cf65
Reviewed-on: https://chromium-review.googlesource.com/204342
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2bf8b372
|
2014-06-16T17:18:51
|
|
Fix link error when using varyings with "dx_".
Varyings beginning with "dx_" would not get decorated properly, or
at all, which could cause potential internal variables and certainly
caused link errors. Fix this by no longer treating the "dx_" prefix
differently.
Also fix our naming of "dx_Position" to be consistent with our other
internal types.
BUG=angle:678
Change-Id: I03da0494a3d934d82ae7b3f8f12a576ff9bc3869
Reviewed-on: https://chromium-review.googlesource.com/203777
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
bae30a00
|
2014-06-17T10:45:02
|
|
Add a macro for unused trace variables.
This fixes the standalone 64-bit Debug build.
Change-Id: I348b71a96ada435867367e565bc84b570d2bfb67
Reviewed-on: https://chromium-review.googlesource.com/204292
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
1d4e38d3
|
2014-06-17T10:23:54
|
|
Fix compile warnings with attributes.
BUG=angle:676
Change-Id: I291c0b618854179f726cb4c969fb65182d3b591e
Reviewed-on: https://chromium-review.googlesource.com/204340
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
5bf98290
|
2014-06-06T17:19:38
|
|
Refactoring VertexArrays
BUG=angle:676
Change-Id: If17b05ab667d79adcaacfbd1811ed92c0ce47fff
Reviewed-on: https://chromium-review.googlesource.com/203294
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1e3fa74d
|
2014-06-16T10:34:00
|
|
Remove Renderer pointer from FBO attachments.
Removing the Renderer pointer is one step towards making FBO
attachments a minimal state object. Eventually we will be able
to store them as arrays instead of arrays of pointers.
BUG=angle:660
Change-Id: Idce34e06c339ecb18c60fef12d2ed911d0c4e0f6
Reviewed-on: https://chromium-review.googlesource.com/201835
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
6c7b4ada
|
2014-06-16T10:33:59
|
|
Add new ref-counted Renderbuffer class.
Renderbuffers are a clear object type in GL, and this patch adds
a more consistent state representation for them. They're managed
by the ResourceManager, and have a storage implementation similar
to Textures, but much simpler.
BUG=angle:660
Change-Id: Ia17199bb8cb570d48db42e1f28ccbcc12a902fcf
Reviewed-on: https://chromium-review.googlesource.com/201834
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
4d632d8e
|
2014-06-16T13:20:17
|
|
Fix buffer overflow error on buffer resize.
We were using the new, larger size for our buffer data copy step,
instead of the old, smaller size. This bug was causing a crash on
older nVidia drivers during normal browser usage.
Reproducible with the index-validation-large-buffer WebGL test.
BUG=angle:667
BUG=384420
Change-Id: I98ee893e0d8ba0bfc9adfe5a338da9b940248879
Reviewed-on: https://chromium-review.googlesource.com/203776
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
fb839475
|
2014-06-16T13:21:41
|
|
Fix ifdef complaints in clang
BUG=angle:677
Change-Id: Iee457dfc0990e5ffd61932b1f286f3c0208568bc
Reviewed-on: https://chromium-review.googlesource.com/203427
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
a0dc219e
|
2014-06-09T15:37:55
|
|
Re-enable MRT on D3D 10 and 10.1 cards.
BUG=angle:670
Change-Id: I88b4823f25ec28fa52831d856ff9fb836fdfc533
Reviewed-on: https://chromium-review.googlesource.com/203120
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
04fb89ad
|
2014-06-09T15:05:36
|
|
Generate pixel shader output to match the bound framebuffer.
Only generate pixel shader output variables for render targets that are
currently bound. Fixes some performance issues with D3D10 cards that were
slow to discard unused outputs.
Fixed memory leaks in ProgramBinary by refactoring the freeing of the
current state into a reset function.
BUG=angle:670
Change-Id: I40f83e15724fb9a1a9ae61363a056999f1fa26d2
Reviewed-on: https://chromium-review.googlesource.com/202977
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
cec3590a
|
2014-04-16T10:52:36
|
|
Use a Caps structure to store extension and texture format support.
Removes support for fallbacks in D3D9 texture formats. The fallback
formats did not work properly anyways.
BUG=angle:658
Change-Id: Idfa5183bf71fd8ebf4608f940f9d93177b9eff08
Reviewed-on: https://chromium-review.googlesource.com/200813
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e09f1c82
|
2014-06-12T11:10:12
|
|
Fix crash on zero size but non-NULL bufferData.
Could cause a crash when running the WebGL CTS with Firefox.
BUG=angle:675
Change-Id: I58bf9eed622660d4702b775f368ff9cbd693197a
Reviewed-on: https://chromium-review.googlesource.com/203456
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
44fa7594
|
2014-05-30T11:50:07
|
|
Refactor platform related functionality into platform.h and tls.h.
Since libGLESv2 and libEGL will eventually be cross platform, it will be
useful to have platform defines and TLS functions that work everywhere.
BUG=angle:664
Change-Id: Ia357925a0992d82e8b446d88d32a1984d319e6e8
Reviewed-on: https://chromium-review.googlesource.com/202133
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
afeeda93
|
2014-06-06T13:39:12
|
|
Prevents multisample depthstencil from being bound as an SRV
BUG=381413
Multisample textures can only be bound as both depth stencil
views and shader resource views at feature level 10_1 and above.
We don't need to bind textures as SRVs if they're multisample
depth targets, so we should avoid the SRV flag in that case.
Change-Id: I28ca98bdc4a86eb5442b39ea3cf2b42aa9216aab
Reviewed-on: https://chromium-review.googlesource.com/202921
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
3c7fa226
|
2014-06-05T13:08:51
|
|
Rename Renderbuffer to FramebufferAttachment.
Part of the refactoring effort to clean up our classes for FBO
attachments and Renderbuffers.
BUG=angle:660
Change-Id: Id23df904f56499568159611b66c8922b9dce6a3d
Reviewed-on: https://chromium-review.googlesource.com/201832
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
a5c9a144
|
2014-05-26T16:39:33
|
|
Fix uniform bug from duplicate D3D9 shader pointers.
In D3D9, sometimes the compiler would return the same shader
pointer on different calls to compile, if the programs were
similar. Work around this quirk by storing an applied serial
for the program, so we know when to refresh uniform data.
BUG=angle:661
Change-Id: I9750ee2298701dbe3f121dac6626198d24a2d1b2
Reviewed-on: https://chromium-review.googlesource.com/201562
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
673e680c
|
2014-05-28T10:28:33
|
|
Don't allocate unused swap chain buffers
According to
msdn.microsoft.com/en-us/library/windows/desktop/bb173075(v=vs.85).aspx
the front buffer is the desktop and is not a dedicated part of the swap chain.
Thus we should only need 1 swap chain buffer instead of the currently allocated
2. Samples in the DirectX SDK also only allocate just one.
BUG=angle:662
Change-Id: If88eeab1954cbc92b39ac7cf42f924515c4b77f9
Reviewed-on: https://chromium-review.googlesource.com/201860
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9cd1915c
|
2014-05-28T15:54:34
|
|
Fix warnings about unreferenced local variables.
BUG=skia:2272
Change-Id: Ibf03efedc662fea2a389ad2dc5af5b7b014181a8
Reviewed-on: https://chromium-review.googlesource.com/201900
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
82b42271
|
2014-05-20T15:38:22
|
|
Fix build warnings in x64.
A std::min/max with size_t and unsigned int.
Popped up in f98e63a54b8a2.
BUG=
Change-Id: I25f26ddbe7fb333f895be8a8dce3d3d73044c3f9
Reviewed-on: https://chromium-review.googlesource.com/200484
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
fc2521e1
|
2014-05-16T16:21:57
|
|
Fix build on Windows 8.1 SDK.
The Windows 8.1 SDK includes a new DLL compiler DLL, and is useful
to test against, so we should fix the few deprecated functions and
warnings.
BUG=angle:649
Change-Id: I28bcf49564f3f7d7403d939d61dd78d3972281ba
Reviewed-on: https://chromium-review.googlesource.com/199341
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
0e3efa51
|
2014-05-16T16:54:23
|
|
Explicitly set the swap effect.
swapChainDesc.SwapEffect wasn't being set. The whole structure was initialized
to 0 and DXGI_SWAP_EFFECT_DISCARD has value 0 so this should have no effect.
Also sorted the field initialization in the order they're declared.
BUG=373360
Change-Id: If0113e7468c0bad024a07fec6ad9e223e19494b5
Reviewed-on: https://chromium-review.googlesource.com/200046
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
45c785d3
|
2014-05-13T14:09:34
|
|
Move validation of EndQuery out of gl::Context.
BUG=angle:571
Change-Id: I8913eb1b565a4282d9d84d06933e8b854453f17d
Reviewed-on: https://chromium-review.googlesource.com/199349
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
64c83249
|
2014-05-06T10:49:24
|
|
Remove references to software rendering in Renderer9.
BUG=angle:641
Change-Id: I3724c2504d43eae0528e8c72eb51e96c9d7c7a71
Reviewed-on: https://chromium-review.googlesource.com/198377
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f98e63a5
|
2014-05-12T16:45:12
|
|
Minimize the API calls done by InputLayoutCache::applyVertexBuffers.
Reduce the number of IASetInputLayout calls to 1 in all cases and set the
fewest number of buffers at once.
BUG=260069
Change-Id: I059337fc6601ecefd801ef37546935becaa0d355
Reviewed-on: https://chromium-review.googlesource.com/199345
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
2c27db6f
|
2014-05-10T12:21:11
|
|
Attempt skipping D3D11 shader optimization if compilation fails.
BUG=angle:648,chromium:371868
Change-Id: I1de854aad6e002bd1349f08eb8d6b597c535c90b
Reviewed-on: https://chromium-review.googlesource.com/199312
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Brandon Jones <bajones@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1408bae6
|
2014-05-10T12:18:42
|
|
Attempt skipping validation if D3D11 shader compilation fails.
Some shaders fail to compile with validation error messages that make no sense.
BUG=angle:648,chromium:372016
Change-Id: Ief0e28efa6bc7eaa483c95f45c00ce4f9f20e541
Reviewed-on: https://chromium-review.googlesource.com/199311
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
93faad9f
|
2014-05-10T12:14:13
|
|
Refactor attempting shader compilation with different flags.
BUG=angle:648
Change-Id: Ie340eaa708820cc13be6d1f5ba04555b6c1918ea
Reviewed-on: https://chromium-review.googlesource.com/199310
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
aea8e947
|
2014-05-09T19:14:08
|
|
Fix D3D11 'units' polygon offset bias.
D3D11 DepthBias is an integer corresponding directly to GL polygon offset units.
BUG=371604
Change-Id: I20a126bd9c6298efff95f3edbf1babc0dd495b18
Reviewed-on: https://chromium-review.googlesource.com/199200
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
5075e13b
|
2014-05-09T14:40:29
|
|
Fix D3D11 polygon offset.
We were not taking the state of GL_POLYGON_OFFSET_FILL into account.
BUG=371604
Change-Id: I9b490ed043faeece86665acaef0b865bf1f7b60d
Reviewed-on: https://chromium-review.googlesource.com/199121
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
7b827596
|
2014-05-08T11:12:26
|
|
Fix BufferStorage11::getLatestStorage not finding the latest buffer.
If there are only buffers with data revision 0, getLatestStorage will skip
over them. Fixed the if statement so that it will always find a buffer if
one exists.
BUG=angle:644
Change-Id: I24fc426383c9ae18b7ccf2f8937a9daa7a071ebe
Reviewed-on: https://chromium-review.googlesource.com/198826
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
5fedd017
|
2014-05-08T10:19:36
|
|
Implement copies from pack buffers to native buffers.
Full support for using pack buffers as vertex buffers or other
binding points requires us to copy through the staging buffer.
BUG=angle:511
Change-Id: Ife0f5390a1a83dfbe0fa0b19db72f3a8b82b6b83
Reviewed-on: https://chromium-review.googlesource.com/198435
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
14764a09
|
2014-05-08T10:19:20
|
|
Implement internal copies from pack buffers.
Pack buffers used in different binding points when combined
with other buffer operations require us to be able to read
from the pack buffer then write to the native buffer.
BUG=angle:511
Change-Id: I2e859695235eb649ddd5dfc1332ecb19b57c1933
Reviewed-on: https://chromium-review.googlesource.com/198434
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
235a6ab5
|
2014-05-08T10:44:20
|
|
Fix regression with BufferStorage11 and latest storage.
With our fix to huge buffer allocations, an extra check was preventing
pixel pack from running on the first try.
BUG=angle:511
Change-Id: Idabafe4e204ad3b7bf2010595dc455affe93dae0
Reviewed-on: https://chromium-review.googlesource.com/198825
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b69d39ba
|
2014-05-06T11:49:22
|
|
Add a DXGI format for GL_LUMINANCE16F_EXT in ES3.
BUG=angle:642
Change-Id: I41eb64b8e9963cfe33e4c127f84a16eef9b118d3
Reviewed-on: https://chromium-review.googlesource.com/198379
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
334f19b7
|
2014-05-06T15:39:11
|
|
Adds conversion for USHORT2N decltype
BUG=angle:643
Change-Id: I90a5e5c91351b9dd43a841cc5612f3f3656dc5b1
Reviewed-on: https://chromium-review.googlesource.com/198233
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
80b9528d
|
2014-05-06T13:57:43
|
|
Handle buffer memory allocation failures gracefully.
When we would allocate huge buffers, we would not always gracefully
fail and return a GL error back to the application. We should be able
to better handle buffer allocation failures with this patch.
BUG=angle:634
Change-Id: Ic3edce6d22b731ec52666a2a0e82f9a4fbbb23ae
Reviewed-on: https://chromium-review.googlesource.com/197994
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
2b5c9cbc
|
2014-04-29T16:17:22
|
|
Store current pack operation as a queued command.
The pack pixels operation is split in two halves: a GPU
copy then a CPU readback. We defer the CPU readback until
we can't wait any longer. That is, we do the readback when
the user maps the buffer, or there's another readback or
internal operation.
This offers the benefits of doing as much GPU work as
asynchronously as possible, and only doing the readback
work on related API calls (map or subsequent pack calls).
BUG=angle:511
Change-Id: I95a01da2b0e842438b180e8cdbb382c9a46ae210
Reviewed-on: https://chromium-review.googlesource.com/197836
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
1ef6fe77
|
2014-05-01T14:51:05
|
|
Enable PBO asynchronous readback in Renderer11.
BUG=angle:511
Change-Id: Id795a85ec1daa396fc51f021c37fe23df3ecc065
Reviewed-on: https://chromium-review.googlesource.com/197702
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
19811d0b
|
2014-05-01T14:51:04
|
|
Keep persistent pack buffer memory storage.
Keeping a persistent storage allows us to treat the memory
buffer as the canonical copy of the pack buffer data, and
simplifies corner cases.
BUG=angle:511
Change-Id: Ied4dcb2edce2b85f68645f5a65603cbf18ad5a16
Reviewed-on: https://chromium-review.googlesource.com/197701
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
876dc724
|
2014-05-01T17:10:24
|
|
Fix 64-bit build failures.
Update the BufferStorage classes to use size_t for all sizes and offsets.
BufferStorage9 now uses a std::vector to manage its memory.
BUG=angle:631
Change-Id: Iea4e7b33ede59a5b9c6a1245690c4b7865096fc3
Reviewed-on: https://chromium-review.googlesource.com/197819
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
25bf006a
|
2014-04-22T15:10:22
|
|
Optimize alignment and conversion test for float attribute types.
The generic alignment and conversion test to check for the possibility of using
direct storage is relatively expensive. Float types can be tested more quickly.
BUG=angle:613
Change-Id: I5ab008ce82c8b652f0392c20a80a5b198b2437a5
Reviewed-on: https://chromium-review.googlesource.com/197721
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b05e3495
|
2014-04-22T15:48:00
|
|
Refactor setting the input layout and vertex buffers separately.
BUG=angle:613
Change-Id: Id2ecfc215ef65164cb9ee8bfbad168e9af658386
Reviewed-on: https://chromium-review.googlesource.com/197722
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
aa2f00af
|
2014-04-22T13:49:59
|
|
Early out when direct binding not supported.
BUG=angle:613
Change-Id: I488dca027e3f6d23cda546ca44af54dcc3338047
Reviewed-on: https://chromium-review.googlesource.com/197720
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
69d8b7cf
|
2014-04-30T12:16:48
|
|
Remove unused mWriteUsageCount.
BUG=angle:613
Change-Id: Ia0d9f4ff3b4ace57532b061f5729fa82f49c4497
Reviewed-on: https://chromium-review.googlesource.com/197710
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
3b35e4da
|
2014-04-22T11:34:31
|
|
Fix a performance regression.
"Refactor BufferStorage11" caused a performance regression by dropping the line
which sets mReadUsageCount to 0. This causes markBufferUsage() to clear mResovedData
which then has to be restored on the next getData() call.
BUG=angle:613
Change-Id: I61c4b4960305a69b315c20ced66265a770002338
Reviewed-on: https://chromium-review.googlesource.com/197503
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e7a453a5
|
2014-04-24T14:50:57
|
|
Lazy creation of the BufferStorage staging buffer.
Only creating the staging buffer on use saves us from allocating
a D3D11 staging buffer for pack buffers. This saves some memory
and time when we're only using a buffer object for asynchronous
readback.
BUG=angle:511
Change-Id: I97b37cc27aba4a4526025815b5935b9e74abae2e
Reviewed-on: https://chromium-review.googlesource.com/195367
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
(cherry picked from commit ebf396c1dd243223240bac6ea7f01a23893f9a28)
Reviewed-on: https://chromium-review.googlesource.com/197281
|
|
73571e66
|
2014-04-24T14:50:56
|
|
Implementation of buffer map for pack buffers.
Internally pack buffers are CPU pointers, with an associated
staging texture. In the map call we copy the data out of the
staging memory to CPU memory, and return a pointer to the CPU
buffer.
BUG=angle:511
Change-Id: I2a82addd2f21241d8d49554b2fc71d890a166386
Reviewed-on: https://chromium-review.googlesource.com/195366
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
(cherry picked from commit 0b44a455b5a81b84662e57f30348f4e791f62358)
Reviewed-on: https://chromium-review.googlesource.com/197272
|
|
c41e42d4
|
2014-04-28T10:58:16
|
|
Early-out of *TexSubImage* calls when the width, height or depth is zero.
BUG=angle:622
Change-Id: I74ef5b684151895b24a15fa8f799a633174622c2
Reviewed-on: https://chromium-review.googlesource.com/197270
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
bde4c2f7
|
2014-03-21T10:42:10
|
|
Force a compiler release when we terminate the Renderer.
Forcing the release ensures we always manually deallocate resources,
and allows us to compile for different shader model versions after
releasing the renderer.
BUG=angle:619
Change-Id: I0c9d68a454c7779a024f4fcc4f4987c2abe12e60
Reviewed-on: https://chromium-review.googlesource.com/196820
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6cec8509
|
2014-04-19T12:39:25
|
|
Re-enable RTTI and fix compilation errors.
BUG=angle:616
Change-Id: I964ddc4a3d51d5f202608e3162edb684290cbc6a
Reviewed-on: https://chromium-review.googlesource.com/195731
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
fbcc6345
|
2014-04-17T10:38:38
|
|
Report unknown swap error as EGL_BAD_MATCH.
EGL_BAD_NATIVE_WINDOW is exclusively for indicating that the native
window handle is invalid. Since we're seeing this error on switches
between full-screen and windowed, EGL_BAD_MATCH seems like a better
fit.
BUG=361553
Change-Id: If0e2c4e5efd90838629b2769f20fcffdad4c30a9
Reviewed-on: https://chromium-review.googlesource.com/195363
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
c9fa6ed1
|
2014-04-17T11:53:40
|
|
Implement asynchronous readback with PBOs.
This patch covers the basic implementation in the buffer storage.
BUG=angle:511
Change-Id: Ie7dcb11e42e568115521cc3e4ed479d3486ac957
Reviewed-on: https://chromium-review.googlesource.com/193621
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
7538f7fa
|
2014-04-17T11:53:39
|
|
Refactor Renderer11 to accomodate pixel pack.
Splitting the readTextureData call allow a pack buffer read
to return asynchronously after the D3D11 CopySubresource call.
Refactoring patch only.
BUG=angle:511
Change-Id: I3459ddfa7b48497b25fb2f4890e1cc1341e2cf75
Reviewed-on: https://chromium-review.googlesource.com/193620
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
4305fea1
|
2014-04-16T15:12:35
|
|
Add a pack buffer storage to BufferStorage11.
This new storage implementation uses CPU memory to read back
pixel data from a texture. We use this class to implement
pack buffers for asynchronous pixel readback.
BUG=angle:511
Change-Id: Ifebd242047291af6b34c981231b69987b87d290d
Reviewed-on: https://chromium-review.googlesource.com/193243
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
834e8b77
|
2014-04-11T13:33:58
|
|
Move ShaderVariables to common shared source.
Also move the block layout encoding utilities to the common folder.
The combined changes allow us to include the shader and block code
into both libGLESv2 and the translator separately. This in turn
fixes the Chromium component build, where we were calling internal
translator functions directly from libGLESv2.
BUG=angle:568
Change-Id: Ibcfa2c936a7c737ad515c10bd24061ff39ee5747
Reviewed-on: https://chromium-review.googlesource.com/192891
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
35adc099
|
2014-04-11T17:49:31
|
|
Implement BASE/MAX_LEVEL, and MIN/MAX_LOD functionality.
BUG=angle:596
Change-Id: I0c818fdc1575be1ee16966acf7b6daa067a24282
Reviewed-on: https://chromium-review.googlesource.com/193236
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|