Commit Graph

332 Commits

Author SHA1 Message Date
Alexandre Julliard 101bdf425b winex11: Use the function table pointer to call dynamically loaded OpenGL functions. 2012-07-18 19:51:09 +02:00
Alexandre Julliard df91c7bc83 opengl32: Redirect standard OpenGL functions through the TEB function table. 2012-07-18 17:12:29 +02:00
Alexandre Julliard 33ca17e1e9 winex11: Fill a function table with the standard OpenGL functions and store it in the TEB. 2012-07-18 17:11:42 +02:00
Alexandre Julliard 4b0f27f664 winex11: Get rid of the no longer needed drawable rect in the X11 device. 2012-07-12 16:05:37 -05:00
Dmitry Timoshkov 6173e6bfb6 winex11.drv: Avoid conflicting definitions of WINGDIAPI. 2012-07-09 09:59:32 -04:00
Alexandre Julliard 241ab9257c winex11: Use the correct drawable with the X11DRV_GET_DRAWABLE escape. 2012-07-03 16:56:40 +02:00
Alexandre Julliard 39819d1e8b winex11: Replace wgl.h by the official wglext.h from the OpenGL registry. 2012-07-02 19:17:41 +02:00
Alexandre Julliard 19fcc230d0 winex11: Move GLX definitions out of wgl.h. 2012-07-02 13:21:54 +02:00
Alexandre Julliard 83be88953b opengl32: Make the WGL driver context-specific. 2012-06-29 20:41:36 +02:00
Alexandre Julliard d89f7f2563 opengl32: Move checks of the context thread id to opengl32. 2012-06-29 20:41:35 +02:00
Alexandre Julliard 0045ec9dfb opengl32: Use proper handles for GL contexts and pass a context pointer to the WGL driver functions. 2012-06-29 20:41:34 +02:00
Alexandre Julliard e059d565ab gdi32: Add a null WGL driver. 2012-06-28 18:52:27 +02:00
Alexandre Julliard 6a9dcd51a2 gdi32: Remove the remaining OpenGL entry points from the DC driver. 2012-06-28 18:52:23 +02:00
Alexandre Julliard 855f225498 opengl32: Move wglGetCurrentContext implementation to opengl32. 2012-06-28 18:52:11 +02:00
Alexandre Julliard edfc7f0de0 opengl32: Move wglGetProcAddress to the WGL driver. 2012-06-28 16:14:55 +02:00
Alexandre Julliard 8a13afedd6 opengl32: Move GetPixelFormat to the WGL driver. 2012-06-28 15:53:14 +02:00
Alexandre Julliard bbdf77a311 opengl32: Move wglCreateContext to the WGL driver. 2012-06-28 15:47:31 +02:00
Alexandre Julliard 3bcb8057a1 opengl32: Move wglCreateContextAttribsARB to the WGL driver. 2012-06-28 15:07:44 +02:00
Alexandre Julliard 47fe838b15 opengl32: Move wglMakeContextCurrentARB to the WGL driver. 2012-06-28 14:49:49 +02:00
Alexandre Julliard 7a031d9b92 opengl32: Add the concept of a WGL driver. 2012-06-28 14:37:31 +02:00
Alexandre Julliard db25d4022a winex11: Simplify wglSetPixelFormatWINE and export it as a standard extension function. 2012-06-28 13:13:01 +02:00
Alexandre Julliard 4a367c5719 winex11: Export wglMakeCurrent and wglMakeContextCurrentARB as standard extension functions. 2012-06-28 01:44:03 +02:00
Alexandre Julliard bebf84f7a8 winex11: Use the GET_DRAWABLE escape to implement wglMakeContextCurrentARB. 2012-06-28 01:44:03 +02:00
Alexandre Julliard 7f4d3022d0 winex11: Use the GET_DRAWABLE escape to implement wglMakeCurrent. 2012-06-28 01:44:03 +02:00
Alexandre Julliard 3e8b3d0f66 winex11: Add a GET_DRAWABLE escape to mirror the SET_DRAWABLE one. 2012-06-28 01:44:02 +02:00
Alexandre Julliard 81cd178ae1 winex11: Move ChoosePixelFormat implementation to opengl32 and base it on DescribePixelFormat. 2012-06-26 12:24:09 +02:00
Alexandre Julliard ee21554893 gdi32: Remove OpenGL functions that don't use an HDC from the driver entry points. 2012-06-25 16:25:57 +02:00
Alexandre Julliard 66a5995e11 winex11: Move wglGetCurrentContext and wglGetCurrentDC to the internal OpenGL extension functions. 2012-06-25 16:25:44 +02:00
Alexandre Julliard 08efea0218 winex11: Move wglCopyContext and wglDeleteContext to the internal OpenGL extension functions. 2012-06-25 13:52:10 +02:00
Alexandre Julliard beeba895d3 winex11: Move wglShareLists to the internal OpenGL extension functions. 2012-06-25 13:52:01 +02:00
Alexandre Julliard 1bca4fb5ae winex11: Move the wglUseFontBitmaps implementation to opengl32, it's no longer driver-dependent. 2012-06-25 11:58:53 +02:00
Roderick Colenbrander c754f28f17 winex11.drv: Remove GLX_ATI_render_texture support. 2012-06-25 10:39:02 +02:00
Roderick Colenbrander 9e73f7a6df winex11.drv: Limit formats to nMaxFormats in wglChoosePixelFormatARB. 2012-06-07 10:36:03 +02:00
Alexandre Julliard 191cd77320 winex11: Remove the support for device-dependent bitmaps. 2012-05-29 21:22:23 +02:00
Alexandre Julliard 93758c43fd gdi32: Remove the CreateBitmap and DeleteBitmap driver entry points. 2012-05-29 21:06:41 +02:00
Alexandre Julliard fdc4682e31 gdi32: Remove the CopyBitmap driver entry point. 2012-05-24 22:09:19 +02:00
Alexandre Julliard f99af0bb8f winex11: Add a helper to retrieve an image from a pixmap. 2012-05-14 14:17:25 +02:00
Alexandre Julliard b082b3acba winex11: Use an intermediate pixmap also for DDBs to handle format mismatches. 2012-05-09 17:37:36 +02:00
Alexandre Julliard ba7db0998c winex11: Add support for OpenGL rendering in DIBs using an intermediate pixmap. 2012-05-09 17:37:36 +02:00
Alexandre Julliard 791a46658a winex11: Store the GL-specific information in the GL driver physdev. 2012-05-08 14:35:44 +02:00
Alexandre Julliard 147174ff1c winex11: Implement wglGetPbufferDCARB with a DC escape and remove it from the GDI driver interface. 2012-05-08 14:35:44 +02:00
Alexandre Julliard 5f99b59e77 winex11: Add an OpenGL GDI driver. 2012-05-08 14:35:42 +02:00
Alexandre Julliard 00bb726af8 winex11: Use a standard Wine list for the OpenGL context list. 2012-05-07 13:10:22 +02:00
Alexandre Julliard a708448725 winex11: Define an enum to manage the various types of GL device contexts. 2012-05-07 13:10:18 +02:00
Alexandre Julliard 096757c3dd winex11: Remove redundant code in ChoosePixelFormat. 2012-05-03 20:44:07 +02:00
Alexandre Julliard 416e79f3e6 winex11: Always store the GL drawable in the device context. 2012-05-03 20:44:07 +02:00
Alexandre Julliard 70f776d3b8 winex11: Update the pixel format through the DCE hook for window DCs to avoid races. 2012-05-03 20:44:01 +02:00
Alexandre Julliard 54170fe867 winex11: Remove support for the no longer used GET_GLX_DRAWABLE escape. 2012-05-03 12:50:27 +02:00
Alexandre Julliard 4a87722144 winex11: Add bounds rectangle tracking to all graphics entry points. 2012-04-18 13:50:56 +02:00
Alexandre Julliard bb62ddeba7 winex11: Remove support for server-side fonts. 2012-04-18 13:07:17 +02:00
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