|
3f2e61de
|
2014-09-05T10:38:05
|
|
Enable MRT pixel shader rewriting.
Writing to all 8 pixel outputs was causing performance problems on
Intel and AMD. Enabling Geoff's work to rewrite our pixel shaders
solves the regression.
This patch also includes a workaround to the nVidia driver bug
where it would ignore NULL RT values in OMSetRenderTargets, by
compacting the RT list to skip NULL values.
BUG=angle:705
BUG=365078
Change-Id: Ia68af6f0ccd5f10c484d6f76297a0bec694948f0
Reviewed-on: https://chromium-review.googlesource.com/214852
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
aef95dec
|
2014-09-05T10:12:41
|
|
Use attachment binding points for dynamic PS key.
Because our output signature is only dependent on the arrangment
of the attachments, not the attachment type, use the output
layout key for now. If we need to, we could store both, in the
future.
BUG=angle:705
Change-Id: I3b99954d30b91a4741fdd6f48f8ffcf88c0bea7a
Reviewed-on: https://chromium-review.googlesource.com/215846
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b33b4777
|
2014-09-04T10:48:28
|
|
Declare commit_id a gyp 'hard_dependency'.
Hard dependencies are marked for static library targets, unlike
normal soft dependencies which the static libraries ignore. This
change ensures we run the commit_id script before compiling any
static libraries that depend on it.
Change-Id: Ic29652012883273810c2863132d6f49bd6ada4b8
Reviewed-on: https://chromium-review.googlesource.com/216461
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
3592a338
|
2014-09-03T15:07:15
|
|
Add a new TextureAttachment class to simplify FBO attachments.
This single class will eventually replace the four child classes.
BUG=angle:732
Change-Id: Ie2862b4458c8b1302ff4fc5fbe0e4ded3b81894d
Reviewed-on: https://chromium-review.googlesource.com/213857
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
945f7329
|
2014-09-03T15:07:14
|
|
Add an ImageIndex helper struct to index into tex levels.
This encapsulates the three values needed to index into the image
array. It will simplify the logic for querying texture images from
the base calss.
BUG=angle:732
Change-Id: I31c55b3f972fd4d96ab540ec8498ef4b9b2ba16b
Reviewed-on: https://chromium-review.googlesource.com/213856
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6d708263
|
2014-09-03T15:07:13
|
|
Refactor Framebuffer::invalidateSub.
Use our new helper methods to simplify this method.
BUG=angle:732
Change-Id: I56b837678d5efbc60de6de4bdb01447ca811e71d
Reviewed-on: https://chromium-review.googlesource.com/213855
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
04994ec4
|
2014-08-28T11:31:36
|
|
Use libANGLE to reduce duplicated ANGLE source compiles.
libGLESv2_static and libGLESv2 can re-use the same object files.
BUG=angle:733
Change-Id: I894f4b5b6fbc1fc47812609d9e996691daf9f318
Reviewed-on: https://chromium-review.googlesource.com/214188
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ce20c7f1
|
2014-09-03T11:56:29
|
|
Retrieve render colorbuffers as a single vector.
Making all our render methods query FBO attachments for rendering
in one place will allow us to easily control the MRT peformance
workaround, and simplify the implementation.
BUG=angle:705
Change-Id: I6c476d45b81228d6ffe8831347443994237e3593
Reviewed-on: https://chromium-review.googlesource.com/215843
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
04668675
|
2014-09-03T09:40:49
|
|
Mark shared and std140 UBOs as always active.
This aligns ANGLE with the GL spec. With this fix, we pass
all of the dEQP conformance tests in Functional / Uniform
Buffer Object that don't rely on single buffers.
BUG=angle:507
Change-Id: I6063a416e3f7ee6d5327d96850e3d0cc8521c817
Reviewed-on: https://chromium-review.googlesource.com/213506
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
a2fbb840
|
2014-09-03T09:40:47
|
|
Move CollectVariables to sh namespace.
BUG=angle:466
Change-Id: I903ea840e333dfeb44f242a1759aed39974d0510
Reviewed-on: https://chromium-review.googlesource.com/213505
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
54ad4f81
|
2014-09-03T09:40:46
|
|
Use the CollectVariables path on the HLSL translator.
This approach consolidates our two methods, and lets us reuse the
same code for both methods of variable collection.
BUG=angle:466
Change-Id: Ie92f76ff0b6d0d0dbfd211a234d0ab86290fa798
Reviewed-on: https://chromium-review.googlesource.com/213504
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
2ad1dc48
|
2014-09-03T09:40:45
|
|
Compact the D3D shader specializations into one.
BUG=angle:731
Change-Id: I4f35a05aeea130f9011ec62cfe931ed23e2681c9
Reviewed-on: https://chromium-review.googlesource.com/214871
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d15250e6
|
2014-09-03T09:40:44
|
|
Move shader variables into the base impl.
These variable types apply across shader types. Either we'll want a
way to cache them after we query them, or we'll do a pre-parse pass
similar to our current Chromium GLSL to GLSL pre-pass where we store
the variables in ANGLE. In either case, they're shared across GL
implementations so make sense as queries from gl::Shader.
BUG=angle:731
Change-Id: I23f5541423abb4af87a2bc2fc1e9f4047fd2ff90
Reviewed-on: https://chromium-review.googlesource.com/214870
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2d96b9eb
|
2014-08-29T15:46:47
|
|
Use GL-like methods for InvalidateFramebuffer calls.
This will faciliate the MANGLE implementation.
BUG=angle:732
Change-Id: I0e4d569667e03305c9cca8d7c23154c70fb71eeb
Reviewed-on: https://chromium-review.googlesource.com/213854
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
400a4418
|
2014-08-29T15:46:45
|
|
Move logic of InvalidateFramebuffer to Framebuffer.cpp.
This method will translate to an implementation call.
BUG=angle:732
Change-Id: Ida1e3c9cccd94f7d166cc9a785708c12bfc52da5
Reviewed-on: https://chromium-review.googlesource.com/213853
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
8e7d7a30
|
2014-09-02T17:09:08
|
|
Fix use of references with va_start
BUG=angle:736
va_start behavior is undefined if the second parameter is a
function, array, or reference type. clang produces a warning
for this, while MSVC does not.
Change-Id: I0bc2805e312e3542aac816f10a257e2f1cfad128
Reviewed-on: https://chromium-review.googlesource.com/216010
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Tested-by: Nico Weber <thakis@chromium.org>
|
|
685dd27a
|
2014-08-29T15:46:43
|
|
Replace getDepthStencil with getRenderTarget.
In all places where we called this method, we treated a NULL return
value as an internal error. This implies to me that we don't need the
two getRenderTarget and getDepthStencil methods, since we aren't using
them to check if a surface is depth or stencil.
BUG=angle:732
Change-Id: I4d1dc148abf3383b1b101bbff4f4d22de27ad03e
Reviewed-on: https://chromium-review.googlesource.com/213852
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
97d65b79
|
2014-08-05T18:04:22
|
|
Clean up Query classes.
BUG=angle:717
Change-Id: I8f29f24964a9661d9f0bea5dca48cebddbf9b0b2
Reviewed-on: https://chromium-review.googlesource.com/211136
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
33ea2f97
|
2014-08-29T15:15:01
|
|
Added BufferSubData benchmark.
BUG=angle:705
Change-Id: I65d557f35e4c9f1d94853a775330a92b7d428847
Reviewed-on: https://chromium-review.googlesource.com/213810
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
43a53e24
|
2014-08-28T16:23:22
|
|
Converted ProgramBinary to use Context caps instead of Renderer
BUG=angle:731
Change-Id: I9bbce69cabf767fb5fb2c94f437a9950bc79d1aa
Reviewed-on: https://chromium-review.googlesource.com/215370
Tested-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a502c749
|
2014-08-28T17:19:13
|
|
Use the specified Program instead of current in GetUniform.
This bug slipped in with the GetUniform validation refactor.
BUG=angle:571
Change-Id: I2b87e6fe98224ba99c5b21a71d66b197fd618741
Reviewed-on: https://chromium-review.googlesource.com/214872
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b1196687
|
2014-07-23T13:47:29
|
|
Update validation functions to use new error mechanisms.
BUG=angle:520
Change-Id: I1c64af2e57cf2d89138bd23da2b07d5873742e4e
Reviewed-on: https://chromium-review.googlesource.com/209880
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
05881a0f
|
2014-07-10T14:05:30
|
|
Add caps for transform feedback limits from table 6.34.
BUG=angle:658
Change-Id: Ifd8c620080c8de486ffb7c8f9e985be1aba516c1
Reviewed-on: https://chromium-review.googlesource.com/207376
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
3a61c321
|
2014-07-10T13:01:54
|
|
Add caps for the aggregate shader limits from table 6.33.
BUG=angle:658
Change-Id: I59d0cd131114fcb925f01d83d218a657f4498a2a
Reviewed-on: https://chromium-review.googlesource.com/207375
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0b7eef7c
|
2014-06-12T14:10:47
|
|
Removed common_includes.h reordered includes.
Since we are not using precompiled headers anymore, remove common_includes.h
so that fewer files are included in cpp files.
Reordered includes to be in the following order:
1) Local ANGLE project headers, ordered by directory in descending depth
2) GL headers
3) STL headers
This helps enforce the include-what-you-use principal by reducing the
number of STL headers unexpectedly shared between files.
This include order conflicts with some of the Google c++ style guide
which states that STL includes should be first but this helps us catch
more issues.
Change-Id: I8f7785f4ad574e253dd3c7b4fb1e54d3ce3b99fc
Reviewed-on: https://chromium-review.googlesource.com/214850
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
d8d72434
|
2014-08-22T15:11:23
|
|
Moved DynamicHLSL into renderer/d3d
Obviously D3D-only class is obvious. :)
BUG=angle:731
Change-Id: Ide54e76a8b9bacb9b6834e2cb0a801140eecfe46
Reviewed-on: https://chromium-review.googlesource.com/213862
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
7162096e
|
2014-08-20T14:04:59
|
|
More shader refactor cleanup
Removed VertexShader and FragmentShader in favor of using a single Shader object
Used VertexShaderD3D and FragmentShaderD3D directly when appropriate.
BUG=angle:731
Change-Id: Ib1ffdf85ee0bfa7c88bb9ddb1029ccbd63a9dbe1
Reviewed-on: https://chromium-review.googlesource.com/213840
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
e3929050
|
2014-08-28T16:02:27
|
|
Revert "Fixes a compilation error when ANGLE_DEFAULT_D3D11 is defined."
The condition would always evaluate to true, since we define ANGLE_DEFAULT_D3D11 as zero.
This reverts commit 10f05630a9a65514e74ec235a129104a5101d582.
Change-Id: I39304398be149d09a8f65a6cf44400b3672ed730
Reviewed-on: https://chromium-review.googlesource.com/214715
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ea24759f
|
2014-08-28T10:37:08
|
|
Remove remnants of old PCH code.
Remove the precompiled.cpp file which was producing a build warning,
and rename the header to make it clear we no longer support PCH.
BUG=angle:
Change-Id: I944081ae477b1478ca9c18924fb02bb920d420a7
Reviewed-on: https://chromium-review.googlesource.com/214187
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a6f267f9
|
2014-08-27T11:44:15
|
|
Fix row-major layout tracking in interface blocks.
Some block field types, such as nested structs, were bugged. This
only affects our "CollectVariables" path, not our current HLSL
UBO path.
BUG=angle:466
Change-Id: I2b8daf58aa7ec1ad06a80d38f57e76087eacccdc
Reviewed-on: https://chromium-review.googlesource.com/213503
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
f05cdee4
|
2014-08-27T15:24:07
|
|
Refactoring Shader objects (Take 2)
This change refactors shaders to no longer be dependent on D3D-only concepts.
BUG=angle:731
Change-Id: I1006112f1d31b7e41bd14bd3225ea157b7d6c6c9
Reviewed-on: https://chromium-review.googlesource.com/214467
Tested-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e54be46a
|
2014-08-27T22:21:45
|
|
Revert "Refactoring Shader objects"
This reverts commit 537dfde52a33d621ab1198c949a81b09a1269b2e.
Change-Id: I5eb8923ac8f78877e6e77a8cd897021e56ee004a
Reviewed-on: https://chromium-review.googlesource.com/214466
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
537dfde5
|
2014-08-20T14:04:59
|
|
Refactoring Shader objects
This change refactors shaders to no longer be dependent on D3D-only concepts.
BUG=angle:731
Change-Id: I4fc1efeba9df4f873b3d7c8ba6f67f00b6532b9c
Reviewed-on: https://chromium-review.googlesource.com/213803
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
549c7fdf
|
2014-08-25T15:47:56
|
|
Fix GetUniform validation.
We were missing a check for an out-of-bounds Uniform, which could
cause us to miss an error and also give assertion failures.
BUG=angle:571
Change-Id: I844658a82ce13ea179a2358a202733c54bc2c0c7
Reviewed-on: https://chromium-review.googlesource.com/212934
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
78f41805
|
2014-08-25T15:47:55
|
|
Refactor GetUniform validator helpers.
BUG=angle:571
Change-Id: I7b36c7af38b102a24dc0e5d5d87fc042533e90af
Reviewed-on: https://chromium-review.googlesource.com/212933
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
99a1e985
|
2014-08-25T15:47:54
|
|
Move GetUniform size validation to top layer.
BUG=angle:571
Change-Id: Ie7064cf85f6a125ccd6cdf1bff89443520e2a06d
Reviewed-on: https://chromium-review.googlesource.com/212932
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
0063c517
|
2014-08-25T15:47:53
|
|
Move GetUniform validation to the validation layer.
BUG=angle:571
Change-Id: Id1b7afb22d8bd52dbf7f95f4e8cac3fc8f798596
Reviewed-on: https://chromium-review.googlesource.com/212931
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
10f05630
|
2014-08-25T19:36:20
|
|
Fixes a compilation error when ANGLE_DEFAULT_D3D11 is defined.
Change-Id: I09853b4565d5458ce4c318611a6495ec265fa8de
Reviewed-on: https://chromium-review.googlesource.com/213899
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
b547ddf5
|
2014-08-25T16:20:46
|
|
Fix interface block static use tracking.
The current code couldn't handle some uses of interface blocks,
such as blocks with instance names.
BUG=angle:466
Change-Id: I0a3746f277af0538cede30232532c6788412da1c
Reviewed-on: https://chromium-review.googlesource.com/213502
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
42bcf32e
|
2014-08-25T16:20:46
|
|
Refactor ShaderVariables to store fields in the base.
Instead of only storing structure information in Varyings, Uniforms
and Interface Block Fields, store it in the base class. Also only
store base variable information for struct fields, instead of fully
typed information. This works because stuff like interpolation type,
invariance, and other properties are for the entire variable, not
individual fields.
Also add new fields for interface block instance name, varying
invariance and structure name for all struct types.
BUG=angle:466
Change-Id: If03fc071e6becb7aad6dea5093989bba7daee69e
Reviewed-on: https://chromium-review.googlesource.com/213501
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
6982260b
|
2014-08-12T15:51:37
|
|
Reduce CPU texture usage in D3D11 where possible
Change-Id: I3186d78fa0a5c676611806c6f553c5c7ad06f56a
Reviewed-on: https://chromium-review.googlesource.com/212118
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
db8ae16b
|
2014-08-25T19:02:35
|
|
Refactored TransformFeedback for multi-platform ANGLE and added tests.
Added angle_implementation_unit_tests target designed for testing the
cross-platform code in libGLESv2, and libGLESv2_static target as a
dependency. The goal is to incorporate these tests into Chromium's
angle_unittests target on all platforms; however, more work is needed
to make libGLESv2's common code compile on non-Windows platforms, so
this is an intermediate step.
BUG=angle:719
Change-Id: Ifc44a779352294e857d6e913d9b997a60674c443
Reviewed-on: https://chromium-review.googlesource.com/214105
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Kenneth Russell <kbr@chromium.org>
|
|
6d113802
|
2014-08-25T15:47:52
|
|
Move some methods of VertexDataManager to helper methods.
Refactoring patch only.
BUG=angle:571
Change-Id: Ic318b4c4366e33b8d33f6003dd39f660f40d354a
Reviewed-on: https://chromium-review.googlesource.com/210649
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
ae3000b4
|
2014-08-25T15:47:51
|
|
Move validation from IndexDataManager to the API.
This validates all necessary buffer sizes for element array
buffers in the validation layer, before we start the draw.
BUG=angle:571
Change-Id: I602744ca1ea493e9f0f7e1ccbeb85fc4ae5c9f5a
Reviewed-on: https://chromium-review.googlesource.com/210648
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2b97681b
|
2014-08-25T15:47:49
|
|
Extract validation from VertexDataManager.cpp to the API.
We can check for buffer overflow at draw validation time, before
processing any vertex data.
BUG=angle:571
Change-Id: I4f49629b98c17ca28e25baed74cad4ae5341b20f
Reviewed-on: https://chromium-review.googlesource.com/210647
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
1fecbc85
|
2014-08-25T16:26:14
|
|
Hard-limit the number of uniform vectors in D3D11.
Before the Caps were added, the maximum fragment and vertex shader uniform
vectors were hard-limited to 1024. When increasing them to the D3D11
maximums, the WebGL test uniforms/gl-uniform-arrays would time out.
Reverting the limit until the test can succeed with higher limits.
BUG=407309
Change-Id: Ifb7015bdeb3d32d7dcd124cfedbea5f7e2c25a5e
Reviewed-on: https://chromium-review.googlesource.com/213824
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
3b5c2dae
|
2014-08-19T15:23:32
|
|
Add a new invariant declaration operator.
BUG=angle:711
Change-Id: I54a48b636a68c317b8d44ee2d578847b80095289
Reviewed-on: https://chromium-review.googlesource.com/213500
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
268b6bcd
|
2014-07-09T16:22:55
|
|
Clean up copyimage.h
Change-Id: Ie4b81bb37dbbe6a9584dfc6a6c92670a9b73cda5
Reviewed-on: https://chromium-review.googlesource.com/207374
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
70d457d8
|
2014-08-15T18:35:33
|
|
Adds a required EGL_BAD_MATCH case to eglMakeCurrent
BUG=angle:723
Change-Id: I12bb763acc70cb0737adf460226242023357b368
Reviewed-on: https://chromium-review.googlesource.com/212701
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
3e3813f7
|
2014-08-25T13:58:16
|
|
Optimize dynamic buffers.
In D3D11, we would previously always use a staging buffer to proxy
data to the GPU. This change allows users which specify DYNAMIC_DRAW
to skip the staging buffer as long as they only write to index or
vertex buffers.
This improves performance on all tested GPU vendors, but in D3D11
on AMD and Intel our SubData calls are still significantly slower
than in D3D9.
BUG=angle:705
BUG=365078
Change-Id: I4f83164176d67ff00119bdd0a6a80d7c84fd0f03
Reviewed-on: https://chromium-review.googlesource.com/213813
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
dbd74a09
|
2014-08-25T13:58:15
|
|
Add BufferStorage11::setData.
This helper method will be useful for implementing dynamic buffers.
BUG=angle:705
Change-Id: I8461a59724fb8866b36059c9ef5b838f072cc63a
Reviewed-on: https://chromium-review.googlesource.com/213812
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
45965b10
|
2014-07-09T15:54:46
|
|
Clean up copyvertex.h
* Move "private" functions into copyvertex.inl.
* Capitalize global function names give them more descriptive names.
* Use size_t for all dimensions.
* Use uint8_t pointers instead of unsigned char pointers.
Change-Id: I408cf7ebb28655c5811ad18979a20f4273d278cd
Reviewed-on: https://chromium-review.googlesource.com/207373
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
301d161d
|
2014-07-09T10:34:37
|
|
Add caps for vertex and fragment shader limits from tables 6.31 and 6.32.
BUG=angle:658
Change-Id: I98509aa16caf74c3e4e28852e8b59aedd903f03a
Reviewed-on: https://chromium-review.googlesource.com/207372
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
900013cd
|
2014-07-07T11:32:19
|
|
Add caps from the 6.29 table.
BUG=angle:658
Change-Id: I392f581b1aea445d60f507c1fa897c4348c1a137
Reviewed-on: https://chromium-review.googlesource.com/207371
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0f796ace
|
2014-08-25T10:33:24
|
|
Fix compilation error due to bad merge.
Change-Id: I54b3e0423e41b86b28d93fdce8d4d2d3304d56cf
Reviewed-on: https://chromium-review.googlesource.com/213822
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
40f93a24
|
2014-08-06T13:39:58
|
|
Added check to avoid accessing possible NULL renderer pointer.
Change-Id: I38524e7d3c74656902151e004d3aa47555531fd5
Reviewed-on: https://chromium-review.googlesource.com/211203
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
75c42f45
|
2014-08-11T10:16:44
|
|
Fixed memory leak in Renderbuffer class. Offscreen objects backbuffer texture /shader resource view, depth stencil texture/shader resource views were leaking during swapchain resize operations.
Change-Id: Iee83a14d043eecc465e6ffb8e21a6449def38e9b
Reviewed-on: https://chromium-review.googlesource.com/211834
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
da5777cf
|
2014-07-11T09:52:58
|
|
Create an Error object to represent GL errors.
BUG=angle:520
Change-Id: I1a54e6f308b5b0f310c725a7771af737a77ecd42
Reviewed-on: https://chromium-review.googlesource.com/209619
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ef9d63ec
|
2014-08-04T10:48:02
|
|
Move the index range cache to gl::Buffer.
Because we want to move all validation to the API layer, we need to
move the index validation to the API layer. This means exposing the
index cache to the validation layer.
In the future we will probably want a way to skip index validation
when it's not necessary, or the chosen back-end handles index
validation on its own.
BUG=angle:571
Change-Id: Iee1618e669bc28abf7e0709ca4a03b4727b1383e
Reviewed-on: https://chromium-review.googlesource.com/210646
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
33a74bde
|
2014-08-18T15:47:59
|
|
Fix std140 UBO layouts.
A call to "prePadding" instaed of "prePaddingString" was confusing
the HLSL output engine.
A separate bug was causing HLSL errors because HLSL puts all cbuffer
members in a flattened namespace, which caused our internal padding
variables to overlap.
BUG=angle:725
Change-Id: I69a01fefa430a83e433385c64a532a69e6851ae8
Reviewed-on: https://chromium-review.googlesource.com/212930
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
ffd7387a
|
2014-08-21T13:49:16
|
|
Prevent accessing more arguments than provided.
BUG=390111
Change-Id: Iecc2ac2354a82cca937a823e5c588c662264e36c
Reviewed-on: https://chromium-review.googlesource.com/213551
Tested-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
39b43463
|
2014-08-18T16:39:50
|
|
Use Range type for index ranges.
This compacts a lot of parameter passing. Refactoring patch only.
BUG=angle:571
Change-Id: Ic918478d0c6b81093bfea6154ce0f6bf1d2b5be2
Reviewed-on: https://chromium-review.googlesource.com/210645
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f41522b6
|
2014-08-18T16:39:49
|
|
Split vertex translation into helper methods.
Refactoring patch only.
BUG=angle:571
Change-Id: I17e8c1eb80bdf7c3ec7cc4bad4e70e81590e4a89
Reviewed-on: https://chromium-review.googlesource.com/210644
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
5f438061
|
2014-08-20T16:38:34
|
|
Only set declaration operator if not already set.
This allows us to return different operators from single
declarations, which will be useful for treating invariant
declarations as different operators.
BUG=angle:711
Change-Id: Id278b91854bbefe8e635380d7b27198198236fef
Reviewed-on: https://chromium-review.googlesource.com/212939
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
47e3ec08
|
2014-08-20T16:38:33
|
|
Add a helper method to parse invariant declarations.
This pulls out more functionality from the grammar into simple
c++ source files.
BUG=angle:711
Change-Id: I19121d710dc1543585361cb53a0deb2ea0479db9
Reviewed-on: https://chromium-review.googlesource.com/212938
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
5c09702f
|
2014-08-20T16:38:32
|
|
Add a getNamedVariable helper method to TParseContext.
This method will be useful in more than one place, since we need
to get a TType from an indentifier when parsing invariant
declarations.
BUG=angle:711
Change-Id: I1c1befbdcc93ea626428fb4e313b8c6326c158f6
Reviewed-on: https://chromium-review.googlesource.com/212937
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
6053a52e
|
2014-07-25T16:22:09
|
|
Moved some validation back to Texture, unified all TextureImpl variants
BUG=angle:688
Change-Id: Ie2df18277c84345fceaa31d4f63f5cbbb47540c6
Reviewed-on: https://chromium-review.googlesource.com/211387
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
b9b5c105
|
2014-08-20T17:28:54
|
|
Rename intermediate.h to Intermediate.h.
This was breaking the Linux build.
Change-Id: I8f63527cfa37ee774ea5d1e6eb0043a4c7ccc734
Reviewed-on: https://chromium-review.googlesource.com/213300
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
cfa33e62
|
2014-08-19T15:30:41
|
|
Call addRef when creating a new Fence Sync object.
BUG=angle:728
Change-Id: Iafd838c3ceb1a88afd4d3b0994e8d841945df499
Reviewed-on: https://chromium-review.googlesource.com/213142
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b1a85f48
|
2014-08-19T15:23:24
|
|
Rename compiler intermediate source files.
This prevents confusion between "TIntermediate" and "TIntermNode".
BUG=angle:711
Change-Id: Ib7a086382a479db3f77bf2ab06ce321aa7b35d13
Reviewed-on: https://chromium-review.googlesource.com/212936
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
299fcf29
|
2014-08-06T16:46:54
|
|
Fix swizzle formats being assigned incorrectly.
* Non-4 component formats cannot be used as swizzle formats.
* Unsized formats should not have swizzle formats.
BUG=angle:721
Change-Id: Ic4e2642f5dc4c9811768961fbab00f6edd200ce1
Reviewed-on: https://chromium-review.googlesource.com/211241
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b8c0a832
|
2014-08-15T16:41:12
|
|
Amend comment about nameless structs & layout qualifiers
Change-Id: I1177c808bffd2beba7d52bd8f8869125a1624698
Reviewed-on: https://chromium-review.googlesource.com/212700
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
3b579e36
|
2014-08-08T10:54:25
|
|
Minor cleanup to Query constructor to normalize it with other interfaces
Change-Id: I562245cf6323edc7a127480e8de6ac16c6f97c03
Reviewed-on: https://chromium-review.googlesource.com/211641
Tested-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
20ba154c
|
2014-08-11T17:14:44
|
|
Initialize TranslatedAttributes
BUG=398337
Uninitialized TranslatedAttributes were causing false positives
in checks for nonzero attrib divisor.
Change-Id: I44655d3fbe4f5478ca3757e05db38799d014e4c7
Reviewed-on: https://chromium-review.googlesource.com/211931
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
09cf736b
|
2014-08-08T15:41:01
|
|
Fix application of vertex divisor for non-instanced draws in D3D9
BUG=398337
*Re-land*
ANGLE_instanced_arrays defines the behavior of the non-instanced
draw calls (glDrawArrays, glDrawElements) such that they behave as
single-instance draws, so the vertex divisor should still apply. We
were handling this correctly in D3D11, but not D3D9.
This fixes a new WebGL conformance test:
https://www.khronos.org/registry/webgl/sdk/tests/conformance/extensions/angle-instanced-arrays.html
Change-Id: I5ed09d41229c8996a78a3b55893c6a655a423644
Reviewed-on: https://chromium-review.googlesource.com/211930
Tested-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
bc75f36b
|
2014-08-11T14:08:19
|
|
Fix nameless struct handling.
BUG=401296
The addition of layout qualifier handling in es3 development inadvertently
broke handling of nameless structs.
Change-Id: I805bab7a981d1f7f6227ae043720296fc3454662
Reviewed-on: https://chromium-review.googlesource.com/211860
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
6f4423af
|
2014-08-10T13:54:45
|
|
Revert "Fix application of vertex divisor for non-instanced draws in D3D9"
Other issues turn up on the FYI bots with this patch applied; reverting until this is investigated further.
This reverts commit 9f6907bfdd4cf95d20408831b1776a6efd221ab3.
Change-Id: Ib30c51b2c905e87973c73b06baa4b8ebba31d210
Reviewed-on: https://chromium-review.googlesource.com/211683
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
9f6907bf
|
2014-08-08T15:41:01
|
|
Fix application of vertex divisor for non-instanced draws in D3D9
BUG=398337
ANGLE_instanced_arrays defines the behavior of the non-instanced
draw calls (glDrawArrays, glDrawElements) such that they behave as
single-instance draws, so the vertex divisor should still apply. We
were handling this correctly in D3D11, but not D3D9.
This fixes a new WebGL conformance test:
https://www.khronos.org/registry/webgl/sdk/tests/conformance/extensions/angle-instanced-arrays.html
Change-Id: Ib50e189d866d6dc97612e46460db4ca1723b3662
Reviewed-on: https://chromium-review.googlesource.com/211445
Tested-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
daf56572
|
2014-08-06T16:18:30
|
|
For SCALARIZE_VEC_AND_MAT_CONSTRUCTOR_ARGS, assign precision to temp variables.
Otherwise on Windows or other platforms with GLES backend, using this workaround
will trigger shader compile failure.
For the moment, to simplify the workaround, for any missing precisions in float,
we always assign the highest available precion to it.
BUG=angle:695
TEST=webgl conformance tests
Change-Id: I810579442bc7fc61d6a52b76aff31a779046fa22
Reviewed-on: https://chromium-review.googlesource.com/211253
Tested-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
cef06ff2
|
2014-08-05T13:27:48
|
|
Unifying the various texture interfaces where possible
Also fixed diamond inheritance pattern that was causing trouble
on Windows 8
BUG=angle:688, angle:720
Change-Id: I678826bd4f3927c68ca1eb2e018dbb5aad33a8cc
Reviewed-on: https://chromium-review.googlesource.com/211037
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e740addb
|
2014-07-18T17:01:01
|
|
Add compiler option SH_REGENERATE_STRUCT_NAMES.
BUG=angle:701
TEST=webgl conformance tests
Change-Id: I13b35900956e7d840d5891a5bab90a400347cd6f
Reviewed-on: https://chromium-review.googlesource.com/209229
Tested-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
a2ad4e8a
|
2014-07-17T14:16:32
|
|
Export shader variables from the translator DLL.
This will allow us to use these methods when compiling the translator
as a DLL.
BUG=angle:466,697
Change-Id: Ic9169fb7c69fe0bf5f98addfc128a30ee6b2159d
Reviewed-on: https://chromium-review.googlesource.com/208752
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
d9ba4f73
|
2014-08-04T10:47:59
|
|
Move implementation of hasMappedBuffer to State.
Refactoring patch only.
BUG=angle:571
Change-Id: Ib9f3145eaa457d94e488fd42eb4c4b9133768996
Reviewed-on: https://chromium-review.googlesource.com/210643
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
baadf23a
|
2014-08-04T13:58:02
|
|
Fix incorrect validation of ES3 internal format/format/type combinations.
* Fix wrong internal format being passed to ValidateTexImageFormatCombination.
* Fix ValidateTexImageFormatCombination validating the format instead of
internal format for general support.
* Fix support checks for format and type comparing with wrong format and
type fields.
* Add an early-out in format and type check loop to reduce iterations.
BUG=angle:658
Change-Id: I05e1b9f58b2e5ac4b5e1c0fa5a45cf37fb6a4ccd
Reviewed-on: https://chromium-review.googlesource.com/210884
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
366ac1e3
|
2014-07-07T14:37:57
|
|
Remove the unusused Renderer::getSRGBSupport method.
BUG=angle:658
Change-Id: I3c8331dfc9c1046b528e9c4a7da3411d84f8ae3c
Reviewed-on: https://chromium-review.googlesource.com/207120
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f049e804
|
2014-08-04T13:10:27
|
|
Fix wrong comparison in Buffer ASSERT.
We were using >1 instead of <=1. Caused false errors in Debug.
BUG=angle:716
Change-Id: I7072df99f208bd2e0a687143faeef6c9be79728e
Reviewed-on: https://chromium-review.googlesource.com/210990
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
91fa9ce4
|
2014-07-04T17:30:27
|
|
Simplify formatutils9 by exposing the internal structures.
BUG=angle:658
Change-Id: I8134cde4d72796c51613594e15aded86e83c4af7
Reviewed-on: https://chromium-review.googlesource.com/206837
Reviewed-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6ba451ba
|
2014-08-04T11:59:23
|
|
Fix single buffer copies.
In D3D11, the device doesn't allow overlapped buffer copies unless
the D3D11_FEATURE_DATA_D3D11_OPTIONS::CopyWithOverlap feature is
enabled. This isn't technically available until D3D11.1.
Get around the restriction by using a different storage buffer as
the source of the copy.
Fixes funcional.buffer.copy.single_buffer.* in dEQP.
BUG=angle:715
Change-Id: I03fea8a1c6180a29e07e05022e3454524e320803
Reviewed-on: https://chromium-review.googlesource.com/210902
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
2c976a44
|
2014-08-04T11:37:53
|
|
Prettify HLSL compile retry error messages.
We were inserting excess newlines in several places.
Change-Id: I746334d3696e9e3be585ab02074384ae63535ea5
Reviewed-on: https://chromium-review.googlesource.com/210823
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
9aa00bbc
|
2014-07-07T12:33:25
|
|
Simplify formatutils11 by exposing the internal structures.
BUG=angle:658
Change-Id: I8a4ce5f45054a1fa829a9647a94cf2bd0ba93bc0
Reviewed-on: https://chromium-review.googlesource.com/206836
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1c28e1f0
|
2014-08-04T11:37:54
|
|
Fix shaders with invariant keyword.
We would trigger assertion failures in Debug mode, and fail to
parse and translate correctly in Release.
BUG=angle:711
Change-Id: Ibb7f33b288376617598578f48c7bbdbdec044279
Reviewed-on: https://chromium-review.googlesource.com/210822
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
f4e39bfd
|
2014-08-01T17:22:17
|
|
Fix non-square matrix-to-matrix constructors.
This fixes some broken tests in dEQP:
functional.shaders.conversions.matrix_to_matrix
BUG=angle:712
Change-Id: I0538595f2913a2c1d4f0da901d65d608a6580d19
Reviewed-on: https://chromium-review.googlesource.com/210882
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
cf3af0bd
|
2014-08-01T17:22:16
|
|
Fix non-square scalar-to-matrix constructors.
This fixes some broken tests in dEQP:
functional.shaders.conversions.scalar_to_matrix
BUG=angle:712
Change-Id: Ia01d720307ea6ca70da266b2085a878eaaab2412
Reviewed-on: https://chromium-review.googlesource.com/210881
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
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>
|
|
7bf0c867
|
2014-08-01T10:04:09
|
|
Fix GN build for libEGL.
Our build in GN differed slightly from our gyp build, causing the
linker to complain about inconsistent linkage. Also remove some
stray definitions of EGLAPI from our headers.
Change-Id: I5d3a09ccb0cec528ead33944ce0996cceed32d86
Reviewed-on: https://chromium-review.googlesource.com/210821
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e294bb87
|
2014-07-17T14:16:26
|
|
Add new shader inspection APIs.
Each new entry point corresponds to one of the variable types:
varyings, attributes, uniforms, output variables, and interface
blocks. They return a pointer to the vector with all of the
parsed variables, which then the app can copy to its own memory.
Currently we do not support the staticUse field in the HLSL
translator.
BUG=angle:466
Change-Id: I7dc09e761ab070feef5360ad27740110c44853b3
Reviewed-on: https://chromium-review.googlesource.com/208750
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
13cfd276
|
2014-07-17T14:16:28
|
|
Move shader variables header to include folder.
This allows the API to query for clear type introspection into the
parsed GL types from the translator. The returned types are not
expanded and have properly nested fields.
This patch uses the types from ShaderVars.h to return GL type
information. The app must include this header to get access to
the types structs.
BUG=angle:466
Change-Id: I28ad0d6f11a964804dd234ef0d00651f665d1ae3
Reviewed-on: https://chromium-review.googlesource.com/208751
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|