Henri Verbeet
22d3e6dba1
winex11: Use GLX_DONT_CARE instead of ~0 in ConvertAttribWGLtoGLX().
2012-03-28 11:36:26 +02:00
Alexandre Julliard
b88b6b74f0
opengl32: Get rid of the DIB section sync support.
2012-01-10 11:24:12 +01:00
Austin English
abfb9211c8
winex11: Only declare the winediag debug channel if OpenGL is enabled.
2011-10-28 12:44:59 +02:00
Henri Verbeet
dbe058249f
winex11: Print the GL renderer and version when complaining about software / indirect rendering.
2011-10-10 13:40:35 +02:00
Alexandre Julliard
46f1d2a48a
winex11: Remove redundant pixmap prefix in X_PHYSBITMAP field names.
2011-09-26 15:29:28 +02:00
Alexandre Julliard
c7a8ff26d3
gdi32: Graphics driver functions no longer need to be CDECL.
2011-07-13 14:56:12 +02:00
Alexandre Julliard
00647af50b
winex11: Use the HDC from the gdi_physdev structure.
2011-07-08 16:03:59 +02:00
Alexandre Julliard
6c951b7d0d
winex11: Pass a generic PHYSDEV to all graphics entry points.
2011-07-08 15:55:11 +02:00
Matteo Bruni
1e0075cd61
winex11.drv: Take care of the destroyed drawable in wglFlush/wglFinish too.
2011-03-31 12:43:29 +02:00
Matteo Bruni
90608c8ce6
winex11.drv: Don't call glXSwapBuffers if the context or the drawable are invalid.
2011-03-31 12:43:22 +02:00
Matteo Bruni
1902e1cb93
winex11.drv: Fix wglMakeContextCurrent with an invalid drawable.
2011-03-31 12:42:35 +02:00
Matteo Bruni
868974c615
winex11.drv: Don't modify state if glXMakeContextCurrent fails.
2011-03-31 12:42:27 +02:00
Matteo Bruni
716df1c2d2
winex11.drv: Make wglMakeCurrent return the correct error when the drawable is invalid.
2011-03-30 13:28:04 +02:00
Matteo Bruni
77679c4e9c
winex11.drv: Don't modify current state if glXMakeCurrent fails.
2011-03-30 13:28:04 +02:00
Joshua Beck
ddada67538
winex11: Improved error handling in pglXMakeCurrent() call.
2011-03-29 12:23:16 +02:00
Henri Verbeet
727ecc1714
winex11.drv: Allow disabling vertical sync using EXT_swap_control.
...
EXT_swap_control redefines glXSwapIntervalSGI() as glXSwapIntervalEXT() on the
current drawable (if any), and glXSwapIntervalEXT() supports disabling vsync.
2011-03-08 12:28:30 +01:00
Nicholas Niro
7aff865e8e
winex11.drv: Add proper initialization for border_pixel.
2011-02-15 17:01:44 +01:00
Andrew Nguyen
a7346e9fc8
winex11.drv: Enhance the wrapper functions for WGL_EXT_swap_control.
2010-12-27 15:39:41 +01:00
Andrew Nguyen
1579ab0e01
winex11.drv: Set last error to ERROR_BUSY when attempting to delete a cross-thread context in wglDeleteContext.
2010-11-08 18:12:58 +01:00
Andrew Nguyen
c4a8de92c4
winex11.drv: Ensure that the WGL context is removed from the context list in wglDeleteContext.
2010-11-08 18:12:58 +01:00
Gerald Pfeifer
0aa27296d3
winex11.drv: Fix comment for #endif.
2010-09-07 11:23:51 +02:00
Michael Stefaniuc
31e4cf9313
winex11.drv: Remove redundant "not NULL" check of cfgs (coccicheck).
2010-05-18 18:42:08 +02:00
Alexandre Julliard
df6cd82ccf
winex11: Create a window of the appropriate visual to initialize GL info.
2010-05-06 14:57:44 +02:00
Roderick Colenbrander
ab788c7c39
wgl: Make context not current before deleting it.
2010-04-27 12:00:24 -05:00
Roderick Colenbrander
b86787e57c
wgl: Improve wglDeleteContext threading behavior.
2010-04-27 12:00:14 -05:00
Roderick Colenbrander
9eaab2cec1
wgl: Print the fbconfig fmt_id in ConvertPixelFormatWGLtoGLX instead of the meaningless pointer.
2010-04-20 16:24:29 +02:00
Roderick Colenbrander
26862c5ece
wgl: Ignore fbconfigs which are window drawable but which lack a visual.
2010-04-20 16:24:25 +02:00
Alexandre Julliard
3bc0a1099d
winex11: Fix the calling convention of X11DRV_wglCreateContextAttribsARB.
2010-04-07 23:44:14 +02:00
Roderick Colenbrander
22a247047d
wgl: Add more OpenGL diagnosing checks.
2010-03-15 13:28:24 +01:00
Michael Stefaniuc
425cc7e033
winex11.drv: Remove some explicit LPARAM/WPARAM casts.
2009-12-28 12:27:13 +01:00
Alexandre Julliard
10e12c8183
winex11: Only check for fs register corruption on i386.
2009-12-24 12:58:51 +01:00
Alexandre Julliard
e099b80a6f
winex11: Fix a compiler warning.
2009-12-09 13:13:29 +01:00
Roderick Colenbrander
a191184ae9
wgl: Add a direct rendering check to new winediag channel.
2009-12-04 14:34:56 +01:00
Roderick Colenbrander
9a85426389
wgl: Add support for WGL_ARB_create_context_profile which is required for OpenGL 3.2.
2009-11-19 11:04:35 +01:00
Roderick Colenbrander
41f061ea1b
wgl: Add initial WGL_ARB_create_context support.
2009-11-18 11:39:57 +01:00
Roderick Colenbrander
50a8b2a633
wgl: The GLX context creation code isn't needed anymore in wglCopyContext because we always have a GLX context now.
2009-11-17 12:05:40 +01:00
Roderick Colenbrander
f4b88e34ec
wgl: Get rid of delayed GLX context creation. Instead attempt to re-create a context when wglShareLists is called.
2009-11-16 17:42:54 +01:00
Roderick Colenbrander
e7590fcfb5
wgl: Make sure we set a valid value for GLX_DRAWABLE_TYPE. Right now we default to 0 which is illegal.
2009-11-13 13:37:10 +01:00
Roderick Colenbrander
a46bd4bc9f
wgl: None of the WGL_render_texture attribute values makes sense for GLX_X_RENDERABLE, so get rid of it.
2009-11-13 13:36:55 +01:00
Roderick Colenbrander
521598560e
wgl: Fix a violation of the GLX specs in ConvertAttribWGLtoGLX.
...
Nvidia and Mesa ignore GLX_RENDER_TYPE when it is set to an invalid
value like 0 but AMD for instance doesn't, which is legal.
2009-11-12 13:09:11 +01:00
Henri Verbeet
ac14a2eec8
winex11.drv: Properly free "visinfo" in get_formats() (Valgrind).
2009-10-21 16:05:57 +02:00
Roderick Colenbrander
390d3929f2
wgl: Fix usage of non-GLX visual in glXCreateContext.
2009-08-03 15:00:19 +02:00
Detlef Riekenberg
a30624143a
winex11: Get rid of glext.h in remaining locations.
2009-06-22 11:22:02 +02:00
Roderick Colenbrander
28a2646d21
wgl: Get rid of glXQueryDrawable because officially it only works on GLXDrawables.
...
Nvidia allows it to operate on a standard Window too but Mesa and AMD
don't and this isn't needed according to the GLX specs. This prevents
crashes when creating +wgl logs.
2009-06-17 12:04:55 +02:00
Francois Gouget
fa7f46e85a
winex11: Also define X11DRV_OpenGL_Cleanup() when OpenGL is not supported.
2009-05-27 11:10:53 +02:00
Francois Gouget
c642481305
winex11.drv: Replace an strdup() with HeapAlloc() in the OpenGL code.
...
Free the corresponding memory when the library is unloaded.
2009-05-26 14:25:12 +02:00
Roderick Colenbrander
d66ded939c
wgl: Set PFD_GENERIC_FORMAT on bitmap formats instead of PFD_GENERIC_ACCELERATED.
2009-05-20 10:51:20 +02:00
Roderick Colenbrander
f83b299bd2
wgl: Use local pixel format data for WGL_ACCELERATION_ARB.
2009-05-19 11:58:53 +02:00
Roderick Colenbrander
73546edc9f
wgl: Make sure WGL_DRAW_TO_BITMAP_ARB is only seen on our duplicated bitmap-capable formats.
2009-05-18 13:23:34 +02:00
Roderick Colenbrander
2eec8aca02
wgl: Make sure WGL_SUPPORT_GDI_ARB is only seen on formats on which we set it during startup (in get_formats).
2009-05-18 13:22:09 +02:00
Roderick Colenbrander
cc96ce438a
wgl: Add WGL_SWAP_METHOD_ARB support.
2009-05-18 12:34:48 +02:00
Roderick Colenbrander
c315d75dab
wgl: Offer PFD_GENERIC_ACCELERATED on bitmap capable formats.
...
Windows drivers do this as well and some apps rely on this (it might
fix Sketchup but I can't reproduce the issues on this system).
2009-05-15 11:55:12 +02:00
Roderick Colenbrander
2b58d2dc06
wgl: Select bitmap capable formats when PFD_DRAW_TO_BITMAP is requested by the caller.
2009-05-15 11:54:57 +02:00
Roderick Colenbrander
b5a62756aa
wgl: Duplicate some single buffered pixel formats for bitmap rendering and restrict bitmap rendering to these formats.
...
The use of direct / indirect rendering is now tied to the bitmapFormat
flag of a pixel format. Indirect is fine for bitmap rendering since on
windows it is only supported using the software gdi renderer and
indirect rendering can also indicate software rendering.
2009-05-15 11:54:05 +02:00
Roderick Colenbrander
9b889626d0
opengl: Add WGL_EXT_pixel_format_packed_float support.
2009-04-21 13:16:09 +02:00
Dmitry Timoshkov
f623053022
winex11.drv: The MAT2 parameter of GetGlyphOutline is mandatory.
2009-02-03 12:40:19 +01:00
Michael Stefaniuc
a2187cad1f
winex11.drv: Remove superfluous pointer casts.
2009-01-19 13:36:25 +01:00
Maarten Lankhorst
131d0a79a1
gdi32/winex11.drv: Change all gdi/opengl operations to use CDECL calling convention.
2008-12-23 13:02:33 +01:00
Andrew Talbot
ff380900c2
winex11.drv: Sign-compare warnings fix.
2008-12-08 12:01:03 +01:00
Michael Stefaniuc
82a3c433b3
winex11.drv: Remove some superfluous casts.
2008-12-01 12:57:00 +01:00
Roderick Colenbrander
a1e11f3533
winex11: Move all delayed GLX context creation code to create_glxcontext in order to prepare for WGL_ARB_create_context.
2008-10-27 11:43:24 +01:00
Ivan Sinitsin
7ea2738517
winex11: Set copy mode when rendering OpenGL picture.
2008-10-15 16:50:52 +02:00
Stefan Dösinger
058ebe3789
winex11: Add a run-total fps counter to the fps debug channel.
2008-08-26 12:07:41 +02:00
Peter Oberndorfer
c5a702f513
opengl32: Fix a typo (wglShaderLists -> wglShareLists).
2008-07-02 11:49:56 +02:00
Alexandre Julliard
aba003de4e
winex11: Print more details on OpenGL load failure. Only print errors once.
2008-06-23 22:59:59 +02:00
Alexandre Julliard
815baba090
winex11: Check for matching pixel format in wglMakeCurrent.
2008-06-18 20:10:47 +02:00
Alexandre Julliard
2d9b38133b
winex11: Add support for performing GL calls on a top-level window DC.
2008-05-28 17:52:06 +02:00
Alexandre Julliard
ed37174a71
winex11: Make sure that all glX functions are called under the X11 lock.
2008-05-28 17:02:07 +02:00
Alexandre Julliard
2fba300cef
winex11: Change the pixel format initialisation to make sure it happens under the X11 lock.
2008-05-28 16:57:46 +02:00
Alexandre Julliard
be7b8be8b8
wgl: Don't call ExtEscape if we don't have a GL context.
2008-05-14 12:46:25 +02:00
Alexandre Julliard
4d926e3ebc
winex11: Silence a harmless error.
2008-05-12 19:58:35 +02:00
Andrew Talbot
5156219a1c
winex11.drv: Remove unused variables.
2008-05-02 16:08:15 +02:00
Roderick Colenbrander
18e704f9aa
opengl32: Get rid of X/GLX leftovers.
2008-05-01 10:57:34 +02:00
Roderick Colenbrander
5fe5def3d1
wgl: We were already advertising GL_EXT_framebuffer_sRGB but not the corresponding WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT.
2008-04-30 10:28:59 +02:00
Alexandre Julliard
bfb4ec0f3a
winex11: Fix debug trace using the removed opengl channel.
2008-04-29 15:25:36 +02:00
Roderick Colenbrander
f0307d9366
wgl: Add a wine specific WGL extension which allows you to change the pixel format multiple times.
2008-04-24 12:32:38 +02:00
Roderick Colenbrander
2823e1d219
wgl: Put the core functionality of X11DRV_SetPixelFormat in a separate function.
...
This is needed for a new X11DRV_SetPixelFormatWINE function which allows you to change the pixel format multiple times.
2008-04-24 12:29:12 +02:00
Alexandre Julliard
6b30e61a1e
winex11: Get rid of the unnecessary opengl debug channel.
2008-04-21 20:33:49 +02:00
Roderick Colenbrander
8a5838274b
wgl: Add missing WGL_STEREO_ARB to ConvertAttribWGLtoGLX.
2008-04-01 11:27:18 +02:00
Roderick Colenbrander
616ac380f9
wgl: Fix ChoosePixelFormat behavior.
2008-04-01 11:27:11 +02:00
Roderick Colenbrander
b3ffac5a8d
wgl: Move all winex11.drv opengl traces to wgl.
2008-03-31 13:01:40 +02:00
Roderick Colenbrander
ccb4ee39ab
wgl: Return TRUE on wglReleasePbufferDCARB success.
2008-03-24 12:08:20 +01:00
Roderick Colenbrander
257d82705c
wgl: Add aux buffers support for use with wglChoosePixelFormatARB.
2008-03-04 11:54:21 +01:00
Chris Robinson
14abaa5709
winex11: Fix wglCopyContext case where GLX contexts are missing.
2008-02-26 11:29:48 +01:00
Alexandre Julliard
1642fbcbc2
user32: Moved the DCE support from winex11 back to user32.
...
Window and class DCEs are now allocated lazily.
2008-02-25 15:59:19 +01:00
Roderick Colenbrander
5374d623ce
wgl: Add aux buffers support to DescribePixelFormat.
2008-02-25 12:17:31 +01:00
Roderick Colenbrander
220163ee9d
wgl: Remove unneeded opengl initialisation code at wine startup.
2008-02-25 12:17:10 +01:00
Roderick Colenbrander
8293a9ead0
wgl: Remove the pixel format limitation.
2008-02-25 12:14:52 +01:00
Christopher Harvey
210363e464
winex11: Added WGL_BIND_TO_TEXTURE_DEPTH_NV to ConvertAttribWGLtoGLX.
2008-02-07 11:59:53 +01:00
Andrew Talbot
68feed7e77
winex11.drv: Remove unneeded casts.
2008-02-04 14:20:45 +01:00
Austin English
0e4adae973
Spelling fixes.
2008-01-07 13:41:01 +01:00
Francois Gouget
5f7a9cea38
Assorted spelling fixes.
2007-12-07 16:35:32 +01:00
Francois Gouget
4f4cc28132
winex11: Add the trailing '\n' to a Wine trace.
2007-11-16 12:38:24 +01:00
Roderick Colenbrander
8295c547f3
wgl: Add wglCopyContext support.
2007-11-12 14:16:44 +01:00
Francois Gouget
0b67c0a6e1
winex11.drv: Add the trailing '\n' to a Wine trace.
2007-10-11 19:52:32 +02:00
Chris Robinson
0cca1ea876
winex11: Don't choose double buffered modes with gdi support.
2007-10-10 17:40:24 +02:00
Chris Robinson
d298b68f50
winex11: Use the specified format for GL Bitmaps.
2007-10-10 17:40:03 +02:00
Chris Robinson
fa6598a260
winex11: Create GLXPixmap for bitmaps in SetPixelFormat.
2007-10-10 17:39:35 +02:00
Alexandre Julliard
6cd7d06823
winex11: Don't store a physdev pointer in the GL context.
2007-10-10 17:38:51 +02:00
Alexandre Julliard
771d61a886
winex11: Use ExtEscape to flush the GL drawable to the physdev.
...
Based on a patch by Chris Robinson.
2007-10-10 17:33:35 +02:00
Chris Robinson
d053049fd5
winex11: Load and use GLX_MESA_copy_sub_buffer for swapping buffers on a GLXPixmap.
2007-10-03 11:57:00 +02:00
Chris Robinson
37d835bf9a
winex11: Use a GLXPixmap for offscreen OpenGL rendering when XComposite isn't available.
2007-10-03 11:56:55 +02:00
Chris Robinson
3629ea4cfd
winex11: Track async GL drawable changes.
2007-10-03 11:47:14 +02:00
Chris Robinson
86a9b76076
winex11: Pass a display parameter when destroying glxpixmaps.
2007-10-03 11:47:02 +02:00
Chris Robinson
00633e37bc
winex11: Use an offscreen redirected window for child OpenGL rendering.
2007-10-03 11:46:52 +02:00
Chris Robinson
ebfba49e27
wgl: Remove GL scissors/viewport override.
2007-10-03 11:40:12 +02:00
Chris Robinson
a8124f97e6
winex11: Store a GL-specific drawable with the window.
2007-10-03 11:39:07 +02:00
Alexandre Julliard
809af590a1
winex11.drv: Don't call GDI functions while holding the X11 lock.
2007-09-27 18:02:26 +02:00
Chris Robinson
665a8add92
wgl: Override glFinish and glFlush.
2007-09-25 13:33:37 +02:00
Chris Robinson
87e3cd66ab
wgl: Don't set a pixel format on windows that already have one.
2007-09-20 16:49:07 +02:00
Chris Robinson
d9571c9e6f
wgl: Store the fbconfig id with the window when a pixel format is set.
2007-09-18 09:28:06 +02:00
Roderick Colenbrander
2a839e96c9
wgl: Fix a major ATI regression.
...
ATI's latest drivers (8.41.7) don't advertise visualids anymore for GLXFBConfigs.
2007-09-13 12:44:59 +02:00
Chris Robinson
f0e0e9fb9b
winex11: Remove improper comment and dead code from SetPixelFormat.
2007-09-12 12:46:52 +02:00
Chris Robinson
e46d621bb6
winex11: Remove useless checks from wglCreateContext.
2007-09-12 12:46:47 +02:00
Chris Robinson
57380c2d9a
winex11: Free visual info stored with the context.
2007-09-12 12:46:43 +02:00
Chris Robinson
f825db6d0f
winex11: Don't assume just one on-screen pixel format.
2007-09-12 12:37:46 +02:00
Chris Robinson
6c5b58a44a
winex11: Simplify ConvertPixelFormatWGLtoGLX.
2007-09-12 12:37:22 +02:00
Chris Robinson
5221921fa6
winex11: Don't choose pixel formats with incorrect doublebuffer/stereo settings.
2007-09-12 12:36:38 +02:00
Roderick Colenbrander
49c635094b
wgl: Degrade an ERR to a WARN.
2007-08-29 11:58:39 +02:00
Alexandre Julliard
372492436a
winex11: Get rid of get_context_from_GLXContext.
2007-08-23 12:52:57 +02:00
Alexandre Julliard
f36536f7ab
winex11: Properly update the hdc in the GL context.
2007-08-23 12:50:29 +02:00
Roderick Colenbrander
daceb4564f
wgl: Fix wglGetCurrentReadDCARB bugs.
2007-08-23 12:38:39 +02:00
Roderick Colenbrander
22eea683ff
wgl: Cleanup pixelformat initialization code.
2007-08-20 22:25:28 +02:00
Roderick Colenbrander
d5c0888bba
wgl: Fix a typo in the trace code.
2007-08-20 22:25:24 +02:00
Roderick Colenbrander
d068bdd820
wgl: Fix a render_texture regression. Only enable GLX_ATI_render_texture when the ati extension is around.
2007-08-17 12:22:09 +02:00
Chris Robinson
5e6d3c15e7
wgl: GDI support is not advertised with double buffering.
2007-08-14 20:29:21 +02:00
Roderick Colenbrander
454a612223
wgl: Proper stereo / double buffering support for ChoosePixelFormat.
2007-08-14 12:47:49 +02:00
Roderick Colenbrander
aab98fc6ea
wgl: Recognize Vista's PFD_SUPPORT_COMPOSITION flag.
2007-08-14 12:46:58 +02:00
Chris Robinson
308da6313e
winex11: Set proper pixel format flags.
2007-08-13 13:05:37 +02:00
Roderick Colenbrander
04d383381f
wgl: Re-enable GLX_ATI_render_texture support.
2007-08-13 13:05:29 +02:00
Roderick Colenbrander
f879f69f98
wgl: Make sure onscreen pixelformats are on top in wglChoosePixelFormatARB.
2007-08-10 16:18:54 +02:00
Chris Robinson
7959be3850
winex11: Don't add spaces to the beginning of the wglExtensions list.
2007-08-10 12:58:17 +02:00
Roderick Colenbrander
dee2fc09f5
wgl: Rewrite ChoosePixelFormat.
2007-08-09 14:10:50 +02:00
Roderick Colenbrander
ae98679ebe
wgl: Correctly check GLX capabilities. Use client GLX extensions on ATI hardware to work around driver bugs.
2007-08-09 14:09:49 +02:00
Chris Robinson
68c5477d27
winex11: Be consistent with GLX_SLOW_CONFIG meaning GENERIC_ACCELERATION.
2007-08-06 13:59:15 +02:00
Chris Robinson
b4c11e3033
winex11: Properly handle WGL_PBUFFER_LOST_ARB.
2007-08-06 13:59:06 +02:00
Michael Stefaniuc
0bd2548bbf
winex11.drv: Move the TRACE before the return. Found by Smatch.
2007-08-06 12:18:07 +02:00
Chris Robinson
3fc8ac5546
wgl: WGL_COLOR_BITS_ARB does include alpha.
2007-08-06 12:12:08 +02:00
Roderick Colenbrander
462a3c3d74
wgl: wglChooosePixelFormatARB returns the total number of matching pixelformats and not the number of pixelformats stored in the buffer.
...
This didn't work due to bugs in wglChoosePixelFormatARB but also due
to strange behavior of glXChooseFBConfig. Some of its default values
are not zero or GLX_DONT_CARE which cause some formats not to appear.
2007-08-03 13:38:44 +02:00
Chris Robinson
a2475921b1
winex11: Don't use ConvertAttribWGLtoGLX for wglCreatePbufferARB.
2007-08-03 12:35:43 +02:00
Chris Robinson
ccb9da5f85
winex11: Report accumulation buffer bits for pixel formats.
2007-08-03 12:35:34 +02:00
Chris Robinson
c37b95bbaa
winex11: Check for WGL drawing caps.
2007-08-02 12:58:07 +02:00
Roderick Colenbrander
b25b287e6c
wgl: Support WGL_FLOAT_COMPONENTS_NV in wglGetPixelFormatAttrib*.
2007-08-02 12:18:41 +02:00
Roderick Colenbrander
5717dede77
wgl: Print more debug info.
2007-08-02 12:18:41 +02:00
Roderick Colenbrander
323d9e428c
wgl: SetPixelFormat should fail on the root window.
2007-08-02 12:18:22 +02:00
Roderick Colenbrander
219269c0f1
wgl: GetPixelFormat fix for offscreen formats.
2007-08-02 12:04:33 +02:00
Roderick Colenbrander
aa225419f3
wgl: Silence an error in ConvertPixelFormatWGLtoGLX.
2007-08-02 11:54:05 +02:00
Roderick Colenbrander
bfe2d11b05
wgl: Fix compilation on systems without GLX_RGBA_FLOAT_ARB.
2007-07-30 23:37:58 +02:00
Roderick Colenbrander
d03e2696cf
wgl: Replace glReadPixels in wglBindTexImage2D by the MUCH faster glCopyTexImage2D.
2007-07-30 15:03:25 +02:00
Roderick Colenbrander
8cbb0a6f18
wgl: wglBindTexImageARB should return TRUE on success.
2007-07-30 15:03:06 +02:00