Граф коммитов

52 Коммитов

Автор SHA1 Сообщение Дата
Austin Kinross fc1a44a1fe Revert "Revert "Add and implement EGL_ANGLE_device_creation[_d3d11]""
This reverts commit dd5c5b7933.

BUG=angleproject:1190

Change-Id: I1bc1b232b6a916da6d18b546baf20e0854a2768f
Reviewed-on: https://chromium-review.googlesource.com/315169
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2015-12-03 18:20:07 +00:00
Jamie Madill dd5c5b7933 Revert "Add and implement EGL_ANGLE_device_creation[_d3d11]"
Causes failures on Windows/GN:

e:\b\build\slave\win_x64_gn\build\src\third_party\angle\src\tests\egl_tests\egldevicetest.cpp(108)
: error C3861: 'eglCreateDeviceANGLE': identifier not found
e:\b\build\slave\win_x64_gn\build\src\third_party\angle\src\tests\egl_tests\egldevicetest.cpp(113)
: error C3861: 'eglQueryDeviceAttribEXT': identifier not found
e:\b\build\slave\win_x64_gn\build\src\third_party\angle\src\tests\egl_tests\egldevicetest.cpp(119)
: error C3861: 'eglReleaseDeviceANGLE': identifier not found
e:\b\build\slave\win_x64_gn\build\src\third_party\angle\src\tests\egl_tests\egldevicetest.cpp(143)
: error C3861: 'eglQueryDeviceAttribEXT': identifier not found
e:\b\build\slave\win_x64_gn\build\src\third_party\angle\src\tests\egl_tests\egldevicetest.cpp(162)
: error C3861: 'eglCreateDeviceANGLE': identifier not found
e:\b\build\slave\win_x64_gn\build\src\third_party\angle\src\tests\egl_tests\egldevicetest.cpp(178)
: error C3861: 'eglCreateDeviceANGLE': identifier not found

This reverts commit 4029ad42d5.

BUG=angleproject:1190

Change-Id: Ibcdfd8cea7ba275cd67c0220f8d7a1069ec1cf97
Reviewed-on: https://chromium-review.googlesource.com/315480
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-12-02 13:51:31 +00:00
Corentin Wallez 3d677ea685 Implement EGL_ANGLE_x11_visual
Reland with a fixed tests on AMD.

This extension will be used by Chrome to advertise the visual it will
use for its windows. Having ANGLE use the same visual will bring
several benefits:
 - A blit will be avoided, and the content of the window might be
   rendered on the system framebuffer directly.
 - There will be less latency when resizing windows which will make it
   much less likely to see a black border when resizing.

BUG=522149

Change-Id: I66004b6ac45453330af7c4c810ddf2c26941be42
Reviewed-on: https://chromium-review.googlesource.com/314661
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2015-12-01 18:50:33 +00:00
Austin Kinross 4029ad42d5 Add and implement EGL_ANGLE_device_creation[_d3d11]
BUG=angleproject:1190

Change-Id: I248935ef81803062cf9ba5776512cda456331f51
Reviewed-on: https://chromium-review.googlesource.com/309634
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-11-30 15:15:59 +00:00
Jamie Madill 5ac60fc2a3 Revert "Implement EGL_ANGLE_x11_visual"
Fails on Linux AMD:

http://build.chromium.org/p/chromium.gpu.fyi/builders/Linux%20Release%20%28ATI%29/builds/43819

EGLX11VisualHintTest.InvalidWindowVisualID:
../../third_party/angle/src/tests/egl_tests/EGLX11VisualTest.cpp:183: Failure
Value of: EGL_TRUE == eglInitialize(display, nullptr, nullptr)
Actual: false
Expected: true

BUG=522149

This reverts commit b28e010aa1.

Change-Id: I9a02f2aa3caadd787eb0099c0ddf9d781084fa1c
Reviewed-on: https://chromium-review.googlesource.com/314660
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-11-27 13:42:51 +00:00
Corentin Wallez b28e010aa1 Implement EGL_ANGLE_x11_visual
This extension will be used by Chrome to advertise the visual it will
use for its windows. Having ANGLE use the same visual will bring
several benefits:
 - A blit will be avoided, and the content of the window might be
   rendered on the system framebuffer directly.
 - There will be less latency when resizing windows which will make it
   much less likely to see a black border when resizing.

BUG=522149

Change-Id: Icd484c9a948ed5b5b9116247bb50560bffa30667
Reviewed-on: https://chromium-review.googlesource.com/312323
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2015-11-26 20:06:13 +00:00
Kimmo Kinnunen b18609b9f5 Implement ES 2,3 parts of EXT_blend_func_extended for shader translation
Exposes gl_SecondaryFragColor, glSecondaryFragData[] and
gl_MaxDualSourceDrawBuffers to GLES SL 1.0.

Relaxes rules for undefined output locations for GLES SL 3.0
and exposes gl_MaxDualSourceDrawBuffers.

If the output GL context is GL ES 2.0 or 3.0:
The emulation layer is expected to turn on EXT_blend_func_extended
if the output GL context supports it.

If the output GL context is GL:
The emulation layer is expected to turn on EXT_blend_func_extended
if the output GL context supports ARB_blend_func_extended or if GL
context is 3.2 or later.

If the source shader spec is GLES SL 2.0: The emulation layer is
expected to inspect the shader compilation output variables upon
linking. If output target is GL SL, the emulation layer should bind
color location 0, index 1 to "angle_SecondaryFragColor" if variable
"gl_SecondaryFragColorEXT" is used. Alternatively, emulation layer
should bind "angle_SecondaryFragData" to locations 0,1,2,3,..., all
color index 1, if "gl_SecondaryFragData" array is used.
(The caller can not bind the locations or specify output variables.)

If the source shader spec is GLES SL 3.0:
The emulation layer is expected to do location auto-resolve of the
the output variables that have undefined output locations that have
not been bound by the caller.
(The caller can not use gl_ built-ins, so nothing to do with those.)

BUG=angleproject:1085
TEST=angle_unittest

Change-Id: I5cafe205b0c29478b0dcd24aa89a7b0000f5d046
Reviewed-on: https://chromium-review.googlesource.com/287580
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Kimmo Kinnunen <kkinnunen@nvidia.com>
2015-08-07 16:47:11 +00:00
Jeff Muizelaar d17c016bd4 Add support for RESOURCE_MISC_SHARED_KEYEDMUTEX
Change-Id: I225f38b4616ac47e690dccbcb67074fedc571d61
Reviewed-on: https://chromium-review.googlesource.com/225642
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-07-31 20:00:38 +00:00
Jamie Madill 33d12cb929 Add drafts for device query extensions.
These extensions give power apps the ability to query raw device
pointers from the EGL layer. EGL_EXT_device_query is based on
EGL_EXT_device_base, which is being split into device_query and
device_enumerate. We remove the device enumeration logic, and only
allow the app to query the current device from a display, which
matches how ANGLE works internally.

EGL_ANGLE_device_d3d gives the app the ability to query D3D
devices associated with a display.

BUG=angleproject:935

Change-Id: I8079661f00d11717ed0e792c9fe8dc5c26f67dcc
Reviewed-on: https://chromium-review.googlesource.com/252110
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-04-01 19:18:37 +00:00
Cooper Partin 0110e17264 Update ANGLE_platform_angle_d3d to be able to disable automatic trim.
BUG=angleproject:946

Change-Id: I5652495842b057998318b1583f8e1a586eba39aa
Reviewed-on: https://chromium-review.googlesource.com/258940
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2015-03-17 15:34:38 +00:00
Geoff Lang 7825f6199c Update ANGLE_platform_angle_d3d to use a device type enum instead of WARP bool.
BUG=angle:490

Change-Id: I1555e7f09b23138753e52ddf720d088587f7cadb
Reviewed-on: https://chromium-review.googlesource.com/232104
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-02-23 18:10:47 +00:00
Shannon Woods c7ea21fa1b Adds new robust initialization extensions.
Change-Id: I66d2ebbb0ce89bbfd1eda648e9ad0fb2edee0f31
Reviewed-on: https://chromium-review.googlesource.com/239286
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
2015-02-04 19:46:26 +00:00
Erik Dahlström ea7a21219b Add GLSL/ESSL validator/translator support for GL_EXT_shader_framebuffer_fetch.
BUG=angle:834

Change-Id: I2d4e25909a8e1266b9bb7f1d4421324143157c8a
Reviewed-on: https://chromium-review.googlesource.com/231032
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Erik Dahlström <ed@opera.com>
2014-12-03 16:32:39 +00:00
Geoff Lang 0d3683c425 Update ANGLE_platform_angle to allow requesting of Renderer versions.
Added enums to allow users to request major and minor versions of the
underlying API and if a WARP device is used.

BUG=angle:490

Change-Id: I0bfb2ac8d327da28a47cc8e6346300e47ab9538c
Reviewed-on: https://chromium-review.googlesource.com/225081
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-11-03 17:56:14 +00:00
Geoff Lang b9f240b1c3 Split the ANGLE_platform_angle_d3d extension by adding child extensions.
Renames the ANGLE_platform_angle_d3d extension to ANGLE_platform_angle
which acts as an umbrella extension for all the angle display types but
requires the sub-extensions (d3d, opengl, software) to be present for the
enums to be valid (similar to the OES_framebuffer_object extension).

BUG=angle:668

Change-Id: I2c00021558d8b781b20f948f5e0df03f734bd033
Reviewed-on: https://chromium-review.googlesource.com/202597
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2014-06-17 17:41:22 +00:00
John Bauman 3dc300a592 Allow creating fixed-size window surfaces.
BUG=320021

Change-Id: I97cdd65ac17ee142700dbf0f363891500e967571
Reviewed-on: https://chromium-review.googlesource.com/184205
Reviewed-by: John Bauman <jbauman@chromium.org>
Tested-by: John Bauman <jbauman@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/190563
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
2014-03-26 04:57:42 +00:00
Scott Graham 3e29695d0d Draft spec for ANGLE_platform_angle_d3d
This is the initial draft of a spec that extends
EGL_EXT_platform_base to allow choosing a particular ANGLE D3D
backend.

Change-Id: I1d80fa8b3c4a59fe998f6d15aa0f393bdb9d26c1
Reviewed-on: https://chromium-review.googlesource.com/184975
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Commit-Queue: Scott Graham <scottmg@chromium.org>
Tested-by: Scott Graham <scottmg@chromium.org>
(cherry picked from commit dc18dc306d)
Reviewed-on: https://chromium-review.googlesource.com/190026
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
2014-03-17 22:03:39 +00:00
Geoff Lang 496123fd88 Implement EXT_blend_minmax.
BUG=angle:555

Change-Id: I1ae6a9783e718d16ee08bda5463f11cd52ad0967
Reviewed-on: https://chromium-review.googlesource.com/186123
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
2014-02-19 22:33:25 +00:00
Geoff Lang 1ec57f8024 Add support for GL_EXT_color_buffer_float.
TRAC #23794

Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
2013-10-30 09:50:57 -04:00
Geoff Lang 632192dd80 Added support for EXT_texture_rg in D3D9 and D3D11.
TRAC #22423

Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
2013-10-23 15:50:50 -04:00
Jamie Madill ba615196a8 Normalize line endings of tracked files in the repository.
TRAC #23896

Signed-off-by: Shannon Woods
2013-09-24 14:21:28 -04:00
shannonwoods@chromium.org 807faf2235 Add an extension describing the new D3D renderer chooser behavior in eglGetDisplay.
TRAC #23029

Author: Shannon Woods
Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2329 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-05-30 00:10:12 +00:00
shannon.woods@transgaming.com a3ac01c869 Updates ANGLE_depth_texture to reflect proposed changes in requirements for g and b channels.
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1967 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-02-28 23:20:20 +00:00
shannon.woods@transgaming.com 3de0a4538a Updates to extensions from public registry
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1848 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-02-28 23:04:02 +00:00
daniel@transgaming.com 58ae0f6fe2 Update ANGLE_texture_compression_dxt
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1822 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-02-01 06:37:10 +00:00
daniel@transgaming.com 2d619cd347 Rename ANGLE_multiple_render_targets to EXT_draw_buffers
Trac #21120

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1813 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-02-01 03:20:20 +00:00
daniel@transgaming.com bbb0595354 Updates to MRT extension.
Trac #21120

    01/30/2013  dgkoch  add issue 6 and clear interactions
                        renamed to EXT_draw_buffers based on feedback
                        changed resolution of issue 3.

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1812 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-02-01 03:20:16 +00:00
shannon.woods@transgaming.com aa7c6c1f14 Document GetIntegerv errors in ANGLE_framebuffer_blit.
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1778 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-01-25 21:54:50 +00:00
shannon.woods@transgaming.com b71c65ca0d Updates for ANGLE_multiple_render_targets
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1777 736b8ea6-26fd-11df-bfd4-992fa37f6226
2013-01-25 21:54:44 +00:00
daniel@transgaming.com 844ad78d26 Revision 5 of ANGLE_MRT
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1457 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-11-28 19:41:28 +00:00
kbr@chromium.org 918c468416 Changed the name of the extension exposed to shaders to
GL_ANGLE_multiple_render_targets in order to match the GL extension
name. Using XYZ_draw_buffers as in GL_ARB_draw_buffers and
GL_NV_draw_buffers was causing inconsistencies.
Review URL: https://codereview.appspot.com/6715045

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1293 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-16 22:27:36 +00:00
kbr@chromium.org 6a026c49e9 Based on feedback from Al Patrick, Nicolas Capens and Daniel Koch,
removed the restriction about draw buffer 0 having to be non-NULL if
any higher draw buffers are non-NULL. Appears this can be supported
with a NULL FOURCC render target. Removed issue and adjusted
introductory text.
Review URL: https://codereview.appspot.com/6725048

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1292 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-16 21:54:27 +00:00
kbr@chromium.org c41bb9a21b Fixed issues pointed out by gman; removed references to GetDoublev and
ReadBuffer, which don't exist in either OpenGL ES 2.0 or 3.0.
Review URL: https://codereview.appspot.com/6681043

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1291 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-12 23:13:17 +00:00
kbr@chromium.org 60354ec62f Add draft ANGLE_multiple_render_targets extension.
Review URL: https://codereview.appspot.com/6642069

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1290 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-10-11 00:32:01 +00:00
apatrick@chromium.org 4cfe7b7f5f Initial specification for ANGLE_program_binary.
Review URL: https://codereview.appspot.com/6267048

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1140 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-06-06 20:06:20 +00:00
daniel@transgaming.com 6c6227a420 Updates to ANGLE_depth_texture
Trac #20959
 - fix a number of incorrect error values
 - disallow multi-level depth textures

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1132 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-06-05 19:49:53 +00:00
daniel@transgaming.com d2cccf7a9a Add ANGLE_depth_texture specification
Trac #20893

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1102 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-05-31 01:13:59 +00:00
daniel@transgaming.com 15ded51e85 Updates to ANGLE_pack_reverse_row_order
git-svn-id: https://angleproject.googlecode.com/svn/trunk@994 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-02-22 05:07:44 +00:00
daniel@transgaming.com f861b02cfc Update ANGLE_instanced_arrays spec.
git-svn-id: https://angleproject.googlecode.com/svn/trunk@986 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-02-08 21:45:11 +00:00
daniel@transgaming.com 21a849dca8 Add ANGLE_instanced_arrays spec
Trac #18156

git-svn-id: https://angleproject.googlecode.com/svn/trunk@967 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-01-27 03:04:27 +00:00
daniel@transgaming.com c6489b152a Update extension numbers for published extensions.
git-svn-id: https://angleproject.googlecode.com/svn/trunk@945 736b8ea6-26fd-11df-bfd4-992fa37f6226
2012-01-17 14:28:13 +00:00
bsalomon@google.com 56d46abe08 Add GL_ANGLE_pack_reverse_row_order. Performs vertical flip in readPixels and
may write direct to client ptr.

Bug=none
Test= Tested in a modified version of Chromium using canvas2D.
Review URL: http://codereview.appspot.com/5373104

git-svn-id: https://angleproject.googlecode.com/svn/trunk@889 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-11-23 14:53:10 +00:00
daniel@transgaming.com e1301a3c08 Add extension specifications
git-svn-id: https://angleproject.googlecode.com/svn/trunk@878 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-11-12 04:44:03 +00:00
daniel@transgaming.com b7bb11ab99 Add token to ANGLE_software_display extension
git-svn-id: https://angleproject.googlecode.com/svn/trunk@796 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-10-19 13:27:05 +00:00
daniel@transgaming.com 50297fc19a Assign proper enum to GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE
Trac #18416
Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@785 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-10-05 18:43:27 +00:00
zmo@google.com a574f78fcf Add an extension for querying translated HLSL shader source.
Review URL: http://codereview.appspot.com/5149046

git-svn-id: https://angleproject.googlecode.com/svn/trunk@780 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-10-03 21:45:23 +00:00
gman@chromium.org 50c526d210 Add support for DXT3 and DXT5
TEST=none
BUG=none
Review URL: http://codereview.appspot.com/4809068

git-svn-id: https://angleproject.googlecode.com/svn/trunk@721 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-08-10 05:19:44 +00:00
jbauman@chromium.org 84d7cbc3b1 Add extension to create software device.
Add an extension so that users can receive a device that renders in software. Currently this is done by loading a swiftshader dll.

BUG=
TEST=

Review URL: http://codereview.appspot.com/4631093

git-svn-id: https://angleproject.googlecode.com/svn/trunk@705 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-07-14 22:53:19 +00:00
daniel@transgaming.com 2b720c92f8 Fix the order of the error() parameters in Surface.cpp and advertise EGL_ANGLE_d3d_share_handle_client_buffer extension
Trac #16711

Also rename the extension file to match the extension name

Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@651 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-05-13 16:05:22 +00:00
jbauman@chromium.org 4e29770792 Add support for eglCreatePbufferFromClientBuffer, taking as input a D3D share handle corresponding to the enum EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE. No spec as of yet, but it does the obvious thing.
BUG=129
TEST=

Review URL: http://codereview.appspot.com/4325048

git-svn-id: https://angleproject.googlecode.com/svn/trunk@650 736b8ea6-26fd-11df-bfd4-992fa37f6226
2011-05-12 23:04:07 +00:00