|
84d7cbc3
|
2011-07-14T22:53:19
|
|
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
|
|
c556fa57
|
2011-05-26T14:13:29
|
|
Revert pending surface destruction (part of revision 632).
TRAC #16271
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@656 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
4e297707
|
2011-05-12T23:04:07
|
|
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
|
|
192a1810
|
2011-05-05T00:00:30
|
|
Implemented semantics for eglDestroySurface when surface is current on thread.
The spec has this to say.
"
All resources associated with surface which were allocated by EGL are marked for deletion as soon as possible. If surface is current to any thread (see section 3.7.3), resources are not actually released while the surface remains current. Future references to surface remain valid only so long as it is current; it will be destroyed, and all future references to it will become invalid, as soon as any otherwise valid eglMakeCurrent call is made from the thread it is bound to."
Review URL: http://codereview.appspot.com/4449064
git-svn-id: https://angleproject.googlecode.com/svn/trunk@632 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
06d7a755
|
2011-04-30T01:02:52
|
|
Move attrib-list handling into Display
Move the handling of attrib-lists in eglCreatePbufferSurface and eglCreateWindowList into methods in Display, so we can keep libEGL.cpp as a thin layer.
BUG=
TEST=
Review URL: http://codereview.appspot.com/4453051
git-svn-id: https://angleproject.googlecode.com/svn/trunk@628 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
ae345807
|
2011-03-30T22:04:25
|
|
Add support for eglBindTexImage and eglReleaseTexImage
With this patch we can bind pbuffers as textures. Once we add support for using
a sharing handle to create a pbuffer we can use this to allow us to use it as a
texture as well.
BUG=129
TEST=modified Simple_Texture2D works
Review URL: http://codereview.appspot.com/4291066/
git-svn-id: https://angleproject.googlecode.com/svn/trunk@604 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
721b7f26
|
2011-02-11T00:54:47
|
|
Issue=91 -- implement pbuffers in ANGLE; add D3D share handle support
git-svn-id: https://angleproject.googlecode.com/svn/trunk@558 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
9e83b593
|
2011-02-10T22:04:34
|
|
Check for device lost with CheckDeviceState when using D3D9Ex.
According to the docs, TestCooperativeLevel is a no-op with D3D9Ex.
http://msdn.microsoft.com/en-us/library/bb174348(VS.85).aspx
I believe it is safe to ignore the additional return values from CheckDeviceState. Some appear to be to allow optimization when a window is occluded. The new errors seem to be best treated as device lost as we were before. Although if the device is removed (!) I'm not sure what to do. It might also be useful to communicate D3DERR_DEVICEHUNG to Chromium in the future so it can use it as a hint to back off.
Tested that D3D9 and D3D9Ex take the appropriate paths through Display::isDeviceLost.
Bug: http://code.google.com/p/angleproject/issues/detail?id=113
Review URL: http://codereview.appspot.com/4154042
git-svn-id: https://angleproject.googlecode.com/svn/trunk@557 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
0f4cefe9
|
2011-01-26T19:30:57
|
|
Map D3D calls and HLSL shaders back to GLES2 calls and GLSL ES shaders in PIX.
This makes debugging and profiling using PIX a lot more convenient. The top level of events are the GLES calls with their arguments. Those can be expanded to see the D3D calls that were issued for a particular GLES call.
When PIX is attached, the shaders are saved out to temporary files and referenced from the translated HLSL shaders via #line directives. This enabled source level debugging of the original GLSL from PIX for pixel and vertex shaders. The HLSL is also saved to a temporary file so that intrinsic functions like texture2D can be stepped into.
It also avoids creating a text file in the current working directory, which has continued to be an issue.
I made the dependency on d3d9.dll static again so it can be accessed by GetModuleHandle witihin DllMain.
I added an EVENT macro that issues D3DPERF_BeginEvent and D3DPERF_EndEvent around a C++ block. I replaced TRACE with EVENT for all the entry points.
I removed the tracing of shader source since the source is visible in PIX.
The means by which the filename of the temporary shader file is passed into the shader compiler is a little clunky. I did it that way to avoid changing the function signatures and breaking folks using the translator.
I plan to make the compiler respect #pragma optimize so that optimization can be disabled for debugging purposes. For now it just disables shader optimization in debug builds of ANGLE.
Review URL: http://codereview.appspot.com/3945043
git-svn-id: https://angleproject.googlecode.com/svn/trunk@541 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
a0ce7e61
|
2011-01-25T14:47:16
|
|
Added version info resources.
TRAC #15181
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@539 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
7595a122
|
2010-12-12T08:53:27
|
|
Fix infinite loop in eglCreateWindowSurface
Issue=90
Contributed by vladimirv
git-svn-id: https://angleproject.googlecode.com/svn/trunk@503 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
24e39699
|
2010-11-01T21:19:43
|
|
Fixed null dereference when null passed as attribute list to eglCreateContext.
I tested that the samples still work and that they fail as expected, but do not crash, if the attribute list argument is null.
Review URL: http://codereview.appspot.com/2725042
git-svn-id: https://angleproject.googlecode.com/svn/trunk@471 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
78477fc0
|
2010-10-27T17:57:14
|
|
eglCreateContext checks client version is 2.
I believe we don't support version 1 since we are missing things like the fixed function pipeline.
This is motivated by consistency with other EGL implementations, which return a v1 context if the EGL_CONTEXT_CLIENT_VERSION attribute is not specified.
Review URL: http://codereview.appspot.com/2760041
git-svn-id: https://angleproject.googlecode.com/svn/trunk@468 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
0db0d6c8
|
2010-08-31T20:00:18
|
|
Replaces swap chain lazily when the swap interval is changed.
It does not appear to be possible to pass a presentation interval to Present() or change it after creating the swap chain, short of calling Reset(). I decided to try fixing it by replacing the swap chain under the same conditions as a window resize.
I tested it with a modified version of the simple vertex shader sample, passing various values to eglSwapInterval.
My reading of the EGL spec might be wrong but I believe the interval state should be associated with the surface bound to the current context, rather than the display.
Review URL: http://codereview.appspot.com/2036044
git-svn-id: https://angleproject.googlecode.com/svn/trunk@408 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
d36c6a0a
|
2010-08-31T12:15:09
|
|
Implemented recovering from a lost device by context recreation.
TRAC #13222
Singed-off-by: Daniel Koch
Author: Nicolas Capens <nicolas@transgaming.com>
git-svn-id: https://angleproject.googlecode.com/svn/trunk@406 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
0d25b005
|
2010-07-28T19:21:07
|
|
Create shared contexts.
TRAC #12498
Signed-off-by: Shannon Woods
Signed-off-by: Daniel Koch
Author: Andrew Lewycky
git-svn-id: https://angleproject.googlecode.com/svn/trunk@363 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
b75e523a
|
2010-07-28T19:13:47
|
|
Use TestCooperativeLevel instead of ValidateDevice to check for device loss.
TRAC #12547
ValidateDevice checks for correct rendering state as well, which we don't need.
Signed-off-by: Nicolas Capens
Signed-off-by: Daniel Koch
Author: Andrew Lewycky
git-svn-id: https://angleproject.googlecode.com/svn/trunk@354 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
e37888d1
|
2010-05-27T16:45:46
|
|
Add support for various egl Get methods
Trac #12375
This patch stores the current READ/DRAW and display in the context and
allows these eglGets to work.
Original-Author: Jim Hauxwell <james@dattrax.co.uk>
Signed-off-by: Nicolas Capens
Signed-off-by: Daniel Koch
git-svn-id: https://angleproject.googlecode.com/svn/trunk@321 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
5ac5dd25
|
2010-05-27T15:02:27
|
|
Correct the eglMakeCurrent return value on lost context (syntax)
TRAC #11233
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@320 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
c6c6f027
|
2010-05-20T19:18:00
|
|
Report an EGL_CONTEXT_LOST error on D3DERR_DEVICELOST
Trac #11233
Signed-off-by: Shannon Woods
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@311 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
2c42c6c3
|
2010-05-12T16:51:11
|
|
eglInitialize must not update major and minor if they are NULL.
TRAC #12235
Signed-off-by: Daniel Koch
Author: Andrew Lewycky
git-svn-id: https://angleproject.googlecode.com/svn/trunk@269 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
b6bd727d
|
2010-05-05T18:48:22
|
|
Implemented eglSwapInterval
TRAC #12137
Signed-off-by: Andrew Lewycky
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@235 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
ce3d0f2f
|
2010-05-04T03:35:14
|
|
Implemented eglGetProcAddress
TRAC #12102
Signed-off-by: Andrew Lewycky
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@223 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
bbf56f75
|
2010-04-20T18:52:13
|
|
Use directory qualified #include files
Trac #11408
Signed-off-by: Andrew Lewycky
Signed-off-by: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@165 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
ea0e1af4
|
2010-03-22T19:33:14
|
|
Minor reshuffling of directory structure in preparation of ESSL to GLSL compiler work.
1. Added include/GLSLANG which includes compiler API
2. Deleted src/include and moved the header files to the same directory as the corresponding source files
3. Modied include path to be relative to src/. I have only fixed paths for files I moved. We should fix it for all new files at least. It is much easier to see where an included file is coming from.
I noticed that a few libGLESv2 source files include headers from libEGL project, which seems wrong. I think we should address this issue. Next step: move compiler source files to compiler/frontend and create two new projects compiler/glsl_backend and compiler/hlsl_backend.
Review URL: http://codereview.appspot.com/662042
git-svn-id: https://angleproject.googlecode.com/svn/trunk@62 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
b5b06160
|
2010-03-21T04:31:32
|
|
Refactor the parenthesis from the TRACE/FIXME/ERR macros
Trac #11526
Signed-off-by: Shannon Woods
Signed-off-by: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@60 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
203934dc
|
2010-03-17T13:12:52
|
|
mv libEGL -> src/libEGL
Trac #11406
Signed-off-by: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@39 736b8ea6-26fd-11df-bfd4-992fa37f6226
|