|
865d1451
|
2014-07-02T15:31:20
|
|
Consolidate varying packing sort order methods.
We were using the same list in the shader varying sorting
as well as in the varying packing validation in the
translator.
BUG=angle:466
Change-Id: Ic11758288e7a522d7c18a293de9e137e487e3978
Reviewed-on: https://chromium-review.googlesource.com/205595
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
183bde55
|
2014-07-02T15:31:19
|
|
Return shader variable information using GLenum values.
Instead of duplicating GL header define values, explictly return
GLenum for variable queries in the shader inspection API. This
reduces the duplicate defines in the shader compiler header.
BUG=angle:466
Change-Id: Iddaaff597b188251fa2e546f352bf77ab3ac43bc
Reviewed-on: https://chromium-review.googlesource.com/205860
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
e8cda371
|
2014-07-01T16:13:18
|
|
Revert "Move more draw call validation to the API."
BUG=390412
This reverts commit 9efa581d0e8f251b88f5a2f432ddb20655036c77.
Conflicts:
src/libGLESv2/validationES.cpp
Change-Id: I78457e1dfec8b75fecef8dc40c549adbde680a2a
Reviewed-on: https://chromium-review.googlesource.com/206340
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
ce505553
|
2014-06-26T14:56:33
|
|
Revert "Return variable type queries using GLenum values."
Breaks the FYI bots until we get Chromium patched.
BUG=angle:466
This reverts commit 53221f5a0382887155d90f7f286e41190d4f5bfb.
Change-Id: Ib28548df5c10a6f76f46e4cf8f2013dca5cf0ee2
Reviewed-on: https://chromium-review.googlesource.com/205850
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
53221f5a
|
2014-06-25T16:04:59
|
|
Return variable type queries using GLenum values.
Instead of duplicating GL header define values, explictly return
GLenum for variable queries in the shader inspection API. This
reduces the duplicate defines in the shader compiler header.
BUG=angle:466
Change-Id: If631b20ce68747297a946e1371def7709027a613
Reviewed-on: https://chromium-review.googlesource.com/204937
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
6dc7f360
|
2014-06-25T21:12:02
|
|
Fix null pointer dereference in glGetBufferPointerv
BUG=angle:687
Change-Id: If8f215d4a86332b9e6e791263bdeeb44b23a42a2
Reviewed-on: https://chromium-review.googlesource.com/205711
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
28bedaf8
|
2014-06-26T13:17:22
|
|
Fix double delete in Framebuffer.cpp.
Depth-stencil buffers were using the same pointer for both
attachments, which was causing a double-delete in the
Framebuffer destructor.
BUG=angle:686
Change-Id: I8b263e5a084c33b495ce18ef2a2a810918ef6540
Reviewed-on: https://chromium-review.googlesource.com/205639
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@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>
|
|
f51639a4
|
2014-06-25T16:04:57
|
|
Use a common include for GL headers.
A common place to define required GL includes gives us a nice
point to centralize GL customizations. In the header currently
are the basic GLES headers with extensions, and a define
carried over from desktop GL.
BUG=angle:466
Change-Id: I6fc61947b4514654ec21355a786904eac04656c0
Reviewed-on: https://chromium-review.googlesource.com/204936
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
f2575989
|
2014-06-25T16:04:54
|
|
Use the sh namespace for shader variables.
Since these types originate from the translator, use an appropriate
namespace. Also rename some of the gl helper functions to be more
specific to their functionality.
BUG=angle:466
Change-Id: Idc29987b2053b3c40748dd46b581f3dbd8a6fd61
Reviewed-on: https://chromium-review.googlesource.com/204680
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
bb94f341
|
2014-06-23T15:23:02
|
|
Remove gl::IsInternalTextureTarget.
This function was a duplicate of ValidTexture2DDestinationTarget.
Also clean up a bit of the code in Framebuffer::completeness.
BUG=angle:660
Change-Id: Iee8d011274bfb2e426346e3ccdde7342fbb7ef44
Reviewed-on: https://chromium-review.googlesource.com/202595
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-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>
|
|
4fd75c1c
|
2014-06-23T10:53:54
|
|
Fix npot Texture level 0 validation.
We were rejecting npot textures for level 0, even though it is
valid in GLES 2 for non-mipped textures to have npot size.
BUG=381495
Change-Id: Iacc3ab50d6487ecba804fd8963aa0a2ada2f1cae
Reviewed-on: https://chromium-review.googlesource.com/205220
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@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>
|
|
13f7d7dc
|
2014-06-20T13:21:27
|
|
Move FBO check from applyRenderTarget to the API.
We would traverse the applyRenderTarget path from several entry
points, which could then trigger a GL error. In-line with our
validation refactoring, move all error checks prior to executing
any state logic.
BUG=angle:571
Change-Id: I51f5bcfa41be7cdba7771eb87d5a831fa622f984
Reviewed-on: https://chromium-review.googlesource.com/203772
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@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>
|
|
9efa581d
|
2014-06-20T13:21:24
|
|
Move more draw call validation to the API.
The GL expects us to reject invalid draw calls before we start
doing any work, so we can prevent internal unnecessary state
changes.
BUG=angle:571
Change-Id: Ic71218b3c2d5dc310280d3738bb1387753a10e03
Reviewed-on: https://chromium-review.googlesource.com/203770
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>
|
|
febb7adc
|
2014-06-18T13:50:51
|
|
Refactor and unify HLSL varying signatures.
We would use different code for all of our input and ouput stages
in HLSL (vertex output, GS input, GS output, PS input). This was
causing an HLSL error and some bugs in certain transform feedback
instances.
Fix this by using a helper method to use compatible code for each
of the stages.
BUG=angle:667
Change-Id: Idada969a775eccb5788723e0c7fa3ade9cb2d9ec
Reviewed-on: https://chromium-review.googlesource.com/203778
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@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>
|
|
033dae67
|
2014-06-18T12:56:28
|
|
Move OutputHLSL utility methods to other files.
OutputHLSL was become a large, unweildy file. Some were also useful
to other classes, even on the GL back-end, but were inacessible.
Refactoring patch only.
BUG=angle:466
Change-Id: Id216147122ca105c6ccdf0ba0c5f6c5038726965
Reviewed-on: https://chromium-review.googlesource.com/203459
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
cbb8412a
|
2014-06-11T15:30:32
|
|
Fix validation of LUMA formats in glGenerateMipmap.
BUG=angle:673
Change-Id: I6c106962d8a50ed8f69d208c537166a30e4f92c6
Reviewed-on: https://chromium-review.googlesource.com/203292
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>
|
|
9c074a39
|
2014-06-16T10:34:02
|
|
Add queries for level and layer to FBO attachments.
BUG=angle:660
Change-Id: I03e76dd7743267dc0b57cf53a4d27cd75a5d5adf
Reviewed-on: https://chromium-review.googlesource.com/201837
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
218b6ede
|
2014-06-16T10:34:01
|
|
Add queries for object id and type to FBO attachments.
BUG=angle:660
Change-Id: Id91f6f2ae84eaefd59f9d568736bd99e3a27ef5d
Reviewed-on: https://chromium-review.googlesource.com/201836
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@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>
|
|
fd716586
|
2014-06-06T17:09:04
|
|
Refactor draw validation functions.
We use a significant amount of code duplication in our draw
validation, that we can consolidate.
BUG=angle:571
Change-Id: I96787cbddf00d9289e368456fb85079d8acec513
Reviewed-on: https://chromium-review.googlesource.com/202975
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
250d33fb
|
2014-06-06T17:09:03
|
|
Move draw call validation to new functions.
Separate draw call validation functions will give us a flexible
base for refactoring and cleaning up all draw call validation.
BUG=angle:571
Change-Id: Ia8e3c83cfe48fedb8f2c7aef1fb282f646c66e82
Reviewed-on: https://chromium-review.googlesource.com/202974
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
9c4b24a5
|
2014-06-12T13:41:17
|
|
Use commit_id.py on Windows, and handle missing git.
This allows us to delete the Windows batch file.
Changes the commit_id script to take the working directory so that it
can be called from a different working directory than the angle
repository is in.
Renames the generated commit header to angle_commit.h. This is being
written to the shared generated code directory for the entire build,
and "commit.h" is insufficiently unique.
BUG=angle:669
Change-Id: I35e80411a7e8ba1e02ce3f6a4fc54ed4dbc918f3
Reviewed-on: https://chromium-review.googlesource.com/202048
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-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>
|
|
b6a673a0
|
2014-06-05T14:19:16
|
|
Report zero bit sizes for channels that shouldn't exist.
If the actual format has more channels than the internal format of a
framebuffer, bits counts greater than zero will be returned for channels
that should not exist. While it is not against the spec to return more
bits than exist in the format, it can be confusing for users or break
tests. get*Bits will now only return greater than zero bit counts when
the format should have the given channel.
Since this is the only location that we return information about the
"real" internal format we're using, it's safe to only make the
modifications here.
BUG=angle:653
Change-Id: I43ef4c6290c8c70737d579d7e9a2dd30d653330b
Reviewed-on: https://chromium-review.googlesource.com/202594
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>
|
|
afc21c06
|
2014-06-04T15:29:47
|
|
Move FBO attachment code to new source file.
Since FBO attachments and Renderbuffers are semantically distinct,
make a new location for attachments to live.
BUG=angle:660
Change-Id: I51753f8a814e89641637c5d8293f7e9a573a7ba5
Reviewed-on: https://chromium-review.googlesource.com/201833
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
6f38f823
|
2014-06-06T17:12:20
|
|
Fix up some validation bugs in Texture functions.
In several places we weren't handling certain errors, or were
returning the wrong error code. Several dEQP negative API
tests are affected in functional.negative_api.texture.
BUG=angle:571
Change-Id: I19d7250aab2c15d709fd591b8df90ce883f9ac60
Reviewed-on: https://chromium-review.googlesource.com/201250
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
04c68600
|
2014-06-05T09:59:52
|
|
Fix unused variable in validationES.cpp.
Broken in 560a8d889b6866d7d29d.
BUG=angle:571
Change-Id: Idb2414e11ad397cc45c2bdf5f357fd1b8e7fe6c2
Reviewed-on: https://chromium-review.googlesource.com/202602
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
560a8d88
|
2014-05-21T13:06:20
|
|
Refactor CopyTexImage validation.
Move the common validation code to a shared base function.
BUG=angle:571
Change-Id: Id70b413b408a21f0a8933cfd4a09e261e637bae1
Reviewed-on: https://chromium-review.googlesource.com/200559
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d7e7d735
|
2014-05-27T16:10:46
|
|
Move the GL_APICALL and similar defines to the project level.
BUG=angle:658
Change-Id: Ib4fa10bb89a6658efbc20d5a763d8ec9c3a5506f
Reviewed-on: https://chromium-review.googlesource.com/201465
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-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>
|
|
24d8d675
|
2014-05-27T12:07:51
|
|
Fix register packing for structs in d3d9.
Fixes WebGL test misc/shader-with-array-of-structs-uniform
BUG=angle:656
Change-Id: If79a19db4d40bab9110422f7876de32e7f85e506
Reviewed-on: https://chromium-review.googlesource.com/200620
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
68fe74aa
|
2014-05-27T12:56:01
|
|
Add a compiler query for the translator output type.
This is useful for determining if we are compiling to a D3D9 or D3D11
shader outside of the internal translator classes.
BUG=angle:656
Change-Id: Ib1c1d3de569edaa2b65c24c09d05aa4dd229d3e4
Reviewed-on: https://chromium-review.googlesource.com/201564
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
893ab087
|
2014-05-16T16:56:10
|
|
Move state query validation out of Context.
Generate all GL errors in the validation helper functions, instead of
within the state manipulation logic and internals of Context.
BUG=angle:571
Change-Id: I7a3f540e2ae0f5f8c7126e2593717cc3200dd7e5
Reviewed-on: https://chromium-review.googlesource.com/200551
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
c600c8c3
|
2014-05-16T11:22:21
|
|
Fix arrays-of-struct and nested struct uniforms.
Our computation of register offsets had a few errors that
messed up nested structs and arrays of structs.
This fixes a WebGL test, as well as several dEQP tests.
BUG=angle:505
TEST=WebGL CTS 1.0.3, dEQP-GELS3.functional.uniform-api
Change-Id: Id5a0f39481e079fe5ef5ef856943dc1f91ee3639
Reviewed-on: https://chromium-review.googlesource.com/200045
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
3639892d
|
2014-05-20T14:51:53
|
|
Move all uniform validation from ProgramBinary to API layer.
This will have the contract of having a successful API call once we
call into the ANGLE internals, having successfully passed valiation.
BUG=angle:571
Change-Id: Ia8d6eccc1e42bdf9e9cc5c10094a08729b42778a
Reviewed-on: https://chromium-review.googlesource.com/200075
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
aa981bd7
|
2014-05-20T10:55:55
|
|
Refactor Uniform validation to validationES.cpp.
This patch also incidentally fixes some bugged validation in the
new ES3 unsigned int uniform API entry points.
BUG=angle:571
Change-Id: I89bd909467bd9418fe5ce3f246561765cf27a5e9
Reviewed-on: https://chromium-review.googlesource.com/200074
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d7c7bb27
|
2014-05-20T10:55:54
|
|
Refactor UniformMatrix validation.
Move the shared validation logic to validationES.cpp.
BUG=angle:571
Change-Id: I2fb06a012703c647de2176914238b48665145c6f
Reviewed-on: https://chromium-review.googlesource.com/200073
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
784371d0
|
2014-05-16T12:39:04
|
|
Don't discard serials of zero from the set of bound framebuffer serials.
A serial of zero is a valid texture serial but it was used by
RenderbufferStorage to denote a non-texture binding. Added a isTexture
method to Renderbuffers and RenderbufferStorage
has been updated to return -1 as the current texture serial to avoid
collisions.
BUG=angle:633
Change-Id: Ie27e4b185ac09b48b593ae0dea02aeff5950a44f
Reviewed-on: https://chromium-review.googlesource.com/200123
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1b2a8f96
|
2014-05-14T13:09:39
|
|
Fix binary serialization to use explicit size and type.
Loading program binaries across different architectures would cause
runtime errors due to use of size_t.
Also fix the ANGLE major and minor version that were clobbered in an
earlier commit.
BUG=angle:647
BUG=371435
Change-Id: I9473cc7e119592fce336aa47881839543e337b69
Reviewed-on: https://chromium-review.googlesource.com/199633
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
43b00426
|
2014-05-12T16:28:07
|
|
Optimize texture application in draw calls.
Gather all bound textures and samplers first and then pass them to
generateSwizzles and applyTextures to reduce redundant get calls.
BUG=260069
Change-Id: I5b10dddb01a6bfd756c58b76218838cfc1fd59b6
Reviewed-on: https://chromium-review.googlesource.com/199343
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@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>
|
|
db2f14c0
|
2014-05-13T13:56:30
|
|
Refactor BeginQuery validation out of gl::Context.
Part of our effort to relocate all validation logic to a preliminary
pass outside of our state tracking or rendering layers.
BUG=angle:571
Change-Id: I5241daef6249910a781e78fd066debe0ab1d3f2b
Reviewed-on: https://chromium-review.googlesource.com/199348
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
2e660d56
|
2014-05-12T16:43:19
|
|
Use lowercase d3d header includes to fix ANGLE compilation on case sensitive OSes
The actual D3D header filenames are all lowercase.
Change-Id: I8f78d618d44360d34b5b01eb5a1972b35f2f15b7
Reviewed-on: https://chromium-review.googlesource.com/199692
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
1e514358
|
2014-05-13T15:53:06
|
|
Add READ/DRAW_FRAMEBUFFER_BINDING_ANGLE to getQueryParameterInfo
Change-Id: I3e7f5cb0b4d2829eef86b878ffede0ac86279f57
Reviewed-on: https://chromium-review.googlesource.com/199684
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ae1990c8
|
2014-05-12T16:57:14
|
|
Track if uniform data has been updated to avoid extra Map calls.
Compare all uniform data to the values currently stored in the uniform and
only mark the uniform as dirty if the data is new. This saves lots of
buffer map calls when the same data is set on a uniform many times.
BUG=260069
Change-Id: Ic4df8a276a81b074211712ff50e5cc4d0d9bb612
Reviewed-on: https://chromium-review.googlesource.com/199346
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Geoff Lang <geofflang@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>
|
|
946b948d
|
2014-05-12T16:37:25
|
|
Optimize Texture*::updateStorage by iterating over fewer levels.
Only update the storage on levels that exist. Especially helps for cube
maps which have 90 images that would be iterated over in all cases. Added
an additional early-out check if the image is dirty for cube maps to match
the other texture types.
BUG=260069
Change-Id: I3d298f4f9ebdc23136a31138a3ef8364667fa78c
Reviewed-on: https://chromium-review.googlesource.com/199344
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ff0d2ba6
|
2014-05-14T13:49:10
|
|
Split register allocation of varyings from the translator.
The translator gl::Varying struct does not need to know about register
allocation. We can put that entirely in the API library. This makes
exposing Varying variables with the new translator types cleaner.
BUG=angle:466
Change-Id: Ib85ac27de003913a01f76d5f4dc52454530859e6
Reviewed-on: https://chromium-review.googlesource.com/199736
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
4f8fcc24
|
2014-05-14T13:49:09
|
|
Remove gl::Varying::elementIndex.
We only assigned to elementIndex, and never referenced the value
at any point in our code.
BUG=angle:466
Change-Id: I541a353110bcd1863b07b21bcf21fad38be19ca1
Reviewed-on: https://chromium-review.googlesource.com/199735
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
11c3b30f
|
2014-05-13T22:33:31
|
|
Revert "Fix binary serialization to use explicit size and type."
This reverts commit 261988513e89479a0d121d045a8d89b64dc68214.
Change-Id: I959ca14fcbb257f12005f7f0b64a600e906a118c
Reviewed-on: https://chromium-review.googlesource.com/199630
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
26198851
|
2014-05-12T15:49:38
|
|
Fix binary serialization to use explicit size and type.
Loading program binaries across different architectures would cause
runtime errors due to use of size_t.
Also fix the ANGLE major and minor version that were clobbered in an
earlier commit.
BUG=angle:647
BUG=371435
Change-Id: If2ad4c8fc246cc9ff0b4d95ba87b7d1ed109a064
Reviewed-on: https://chromium-review.googlesource.com/199102
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
d3ff9009
|
2014-05-08T11:19:27
|
|
Add support for querying GL_MAX_VARYING_COMPONENTS.
BUG=angle:645
Change-Id: I2e33798bd7fe6cabb1237224aeb9e59cdf03f73c
Reviewed-on: https://chromium-review.googlesource.com/198836
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@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>
|
|
07d68856
|
2014-05-06T16:31:14
|
|
Move the implementations of shader var init to the header.
Making the contructors for shader variables inline saves us from
exporting them across DLL boundaries. This makes it easier to use
them in the translator when building the translator as a DLL.
BUG=angle:466
Change-Id: Iee0556e06dc1f9e98fe9eea6577819305de0dd0b
Reviewed-on: https://chromium-review.googlesource.com/198555
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6667f76b
|
2014-05-06T17:12:19
|
|
Advertises the NV_pixel_buffer_object extension
BUG=angle:581
Change-Id: I1e55582e94a36e56ef3e0f53ff9233c1a31408f5
Reviewed-on: https://chromium-review.googlesource.com/198238
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
158c4384
|
2014-05-06T13:00:07
|
|
Adds PBO buffer targets when extension is present
BUG=angle:581
Change-Id: I125cdd995e538db4a275657770149071406a6ad1
Reviewed-on: https://chromium-review.googlesource.com/198237
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Shannon Woods <shannonwoods@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>
|
|
7a29e4ae
|
2014-05-02T10:41:48
|
|
Stop generating duplicate vertex binaries.
We would generate multiple vertex binaries that result in the same
HLSL code, eg for vec2 and vec3 vertex attributes. Eliminate
duplicates by using the converted attribute type for testing
for matching binaries.
BUG=angle:599
Change-Id: I061588164577ff9fa69ebb7d8a3f2bf6bb6fe013
Reviewed-on: https://chromium-review.googlesource.com/197830
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|