Commit graph

51 commits

Author SHA1 Message Date
the_fiddler 820e2af20e Made ContextHandle a struct to reduce GC pressure (ContextHandles are created per frame).
Added xml documentation for the ContextHandle.
Made the casts between ContextHandles and IntPtrs explicit.
Updated all ContextHandle consumers to reflect the explicit cast.
2008-11-23 20:17:50 +00:00
the_fiddler b48202324b Initial support for external contexts. 2008-05-19 20:54:07 +00:00
the_fiddler c0b1f170e8 Moved PlatformException to the OpenTK namespace. Removed an invalid Debug.Unindent() call. 2008-04-21 21:31:21 +00:00
the_fiddler 4b45494433 Removed obsolete GetDisplayModes() function. 2008-04-04 21:08:09 +00:00
the_fiddler 63608b1dd7 Updates to GameWindow shutdown and X11 locking behavior. 2008-03-26 19:43:57 +00:00
the_fiddler 37c40f16eb Renamed ColorDepth to ColorFormat, to avoid class with System.Drawing.ColorDepth.
Update X11 stack to use System.Windows.Forms.XPlatUI for its Display, Screen and RootWindow.
Fixed mode setting for X11GLControl.
Fixed X11 shutdown (was generating X11 errors).
Added DeviceContext getter to WinWindowInfo.
Made IWindowInfo disposable.
Added documentation to many public methods.
Worked around a Mono 1.2.4 bug with Handle creation on Windows.Forms.Control.
Updated GL.BuildExtensionList to correctly parse GL_VERSION when in indirect rendering mode.
Fixed crash errors in X11GLContext.CreateContext and X11GraphicsMode.
Added a ref overload to Glx.ChooseVisual()
IGraphicsContext.MakeCurrent now takes an IWindowInfo parameter. This allows the user to change to window is context is bound to (untested).
Renamed XyzWindowInfo.Handle to XyzWindowInfo.WindowHandle.
2008-03-03 12:44:56 +00:00
the_fiddler e10d37418f Major update: fixed context construction on X11.
Fixed vsync on X11.
Updated GraphicsContext interface, for better extensibility. Some public functions were moved to IGraphicsContextInternal.
Renamed DisplayDevice.PrimaryDisplay to DisplayDevice.Default.
Updated and documented new GameWindow constructors.
Improved GameWindow.Exit, added GameWindow.ExitAsync() and improved error handling.
Improved GraphicsContext and NativeGLWindow APIs (construction in constructor).
Made ContextHandle public.
2008-03-01 13:15:31 +00:00
the_fiddler 1d3c358512 Renamed GraphicsFormat to GraphicsMode. 2008-02-28 15:28:40 +00:00
the_fiddler ee1431279f Renamed GraphicsFormat to GraphicsMode. 2008-02-28 15:26:13 +00:00
the_fiddler 83afd98314 Updated to use new IWindowInfo interface.
Updated to use GraphicsFormat instead of DisplayMode.
Updated to use ColorDepth instead of ColorMode.
Improved GameWindow Exit handling, and handling of failed context creation.
Improved WinGLContext creation code, to allow for FSAA support in the future.
Fixed several shutdown bugs in WinGLContext and GraphicsContext.
Context creation no longer relies on IGLContextCreationHack.
X11GLContext is not working at the moment.
2008-02-28 13:57:07 +00:00
the_fiddler a9e2ce4a00 Completed move of OpenTK.OpenGL to OpenTK.Graphics.OpenGL. 2008-02-02 00:58:26 +00:00
the_fiddler d87e79268f Moved and renamed OpenTK.GLContext to OpenTK.Graphics.GraphicsContext. 2008-01-31 14:39:54 +00:00
the_fiddler c7045ab92f Moved and renamed OpenTK.GLContext to OpenTK.Graphics.GraphicsContext. 2008-01-31 14:22:37 +00:00
the_fiddler 019cf966e3 Renamed IGLContext to IGraphicsContext. 2008-01-31 13:17:42 +00:00
the_fiddler 56cbbb8cbb Added setter to GLContext.CurrentContext and all implementations, so that the user can clear the context of any thread.
Updated GameWindow and its implementations to use GraphicsFormat instead of the obsolete DisplayMode.
Updated license.
Updated some docs.
Fixed CLSCopmliant warnings in XRamExtension.cs
2008-01-31 13:15:17 +00:00
the_fiddler 1a100aaff3 Updated everything to use plain (int width, int height parameters) instead of DisplayMode.Width/.Height. 2008-01-23 14:17:09 +00:00
the_fiddler 8b3f5afa4c Added loading of Glx extensions. Added vsync support. 2008-01-23 00:18:52 +00:00
the_fiddler 4fa393a03f Updated a comment. 2008-01-20 22:04:30 +00:00
the_fiddler 40f32f4867 Documentation updates. Getting rid of all remaining warnings in debug build. 2008-01-20 19:29:42 +00:00
the_fiddler 9c214032b9 Added some IGLContextInternal explicit implementations 2008-01-15 12:47:51 +00:00
the_fiddler 5c16b522a3 Possible InvalidCastException fix. 2008-01-15 12:32:38 +00:00
the_fiddler 8b14881538 Fixed a NRE. 2008-01-15 11:02:23 +00:00
the_fiddler 15956016b4 Possible fix for X11GLContext crash. 2008-01-15 10:59:36 +00:00
the_fiddler 2cc221998c Hacks to get the visual before creating a context. 2008-01-11 20:23:41 +00:00
the_fiddler 107951c4d1 Hooks for garbage-collectable OpenGL resources.
the [...]GLNative classes now use GLContext instead of the platform-specific [...]GLContext implementations.
Updated the IGLContext interface with functions to query the current context.
2007-12-09 18:15:51 +00:00
the_fiddler f1ece1b265 X11GLContext plays better with Windows.Forms. 2007-11-11 19:28:55 +00:00
the_fiddler e633395202 Now initializes GL class. Slight layout improvements. Removed useless constructors. 2007-11-04 15:37:41 +00:00
the_fiddler 961cf9d54c Constructor now throws ArgumentNullException instead of ArgumentException. 2007-10-05 06:54:36 +00:00
the_fiddler 4e421d30fb Added VSync property to IGLContext. 2007-09-29 15:24:55 +00:00
the_fiddler 95318a8366 Added OpenTK.Platform.WindowInfo and OpenTK.Platform.IMutableWindowInfo. Split IWindowInfo implementation to IWindowInfo and IMutableWindowInfo. Added several methods.
X11 and Windows GLControl and GLNative implementation now use IGLContext interfaces instead of direct X11GLContext and WinGLContext. Decouples the two (good!).
Updated all Native, Control, Context classes to use the new interfaces.
2007-09-09 15:10:21 +00:00
the_fiddler 2de33d9d8d Decoupled GLContext from GLControl/GameWindow even more, by using IWindowInfo to pass data between them.
Implemented the IWindowInfo.GetInfoFrom methods.
Removed said methods from OpenTK/Platform/Utilities.
2007-09-09 11:52:09 +00:00
the_fiddler cc23dac7a8 Merged with Bind. Added GLU bindings. Corrected OpenGL overload trimming. 2007-09-02 22:52:00 +00:00
the_fiddler 9120a732ea Merged with bind branch: updated GL.cs wrappers, Glx and Glu implementation suppoort files, faster Bind. 2007-09-02 00:40:43 +00:00
the_fiddler 0b5a0b4e1f Improved X11GLControl compatibility - now sets a safe DisplayMode.
Added utility that control's whether xplatui should throw exceptions on X11 errors.
2007-08-21 10:48:32 +00:00
the_fiddler c47893dae6 Corrected critical bug in X11/API.cs: VisualInfo.visualid was int where it should have been IntPtr, causing incorrect visuals to be created on 64bit platforms.
Removed the OnCreate/OnDestroy methods from INativeGLWindow.
Added convenience overloads to OpenTK.OpenGL.GL: Color3 and Color4 can now take a System.Drawing.Color directly.
2007-08-21 09:01:24 +00:00
the_fiddler 7b1d590819 Improved GLControl event handling on initialization sequence (Resize event is now raised after loading the GL class).
Improved WinForms.Cube example to hook the GLControl events instead of the parent Form's ones.
Improved Debug output in X11GLContext and X11GLControl
2007-08-20 14:12:57 +00:00
the_fiddler e54aadad22 Improved exception handling in GameWindow
X11GLContext now requests formats with alpha channels. Removed debug output from X11 SwapBuffers.
Corrected X11GLNative window creation (context is now made current). Beautified X11GLNative.cs
2007-08-20 13:47:14 +00:00
the_fiddler ffe8ce7795 Merged with bind branch. 2007-08-20 12:25:48 +00:00
the_fiddler 9295a44c60 2007-08-20 10:46:37 +00:00
the_fiddler e220f3a71a Updated Build.exe to correctly generate sharpdev and sharpdev2 projects.
Removed some unused variables.
Added licensing information.
2007-08-10 09:27:13 +00:00
the_fiddler c6ed3a0fac Fixed X11GLContext.MakeCurrent. X11GLControl was not setting the handle correctly. 2007-08-09 12:14:00 +00:00
the_fiddler ee05b9e5c1 Debugging X11GLControl crash on MakeCurrent. 2007-08-09 12:06:09 +00:00
the_fiddler cccbb9823b Fixed crash bug in X11GLNative. Almost ready for release. Niar! 2007-08-09 11:07:12 +00:00
the_fiddler 4497fcfc1b Debugging crash on X11 32bits. 2007-08-07 20:32:26 +00:00
the_fiddler 81a26ab792 Updated ToString function for ColorDepth and DisplayMode.
Corrected two warnings in GLHelper.cs
Updated X11GLContext to use the correct DisplayMode.
2007-08-07 18:08:06 +00:00
the_fiddler 8e88fd9393 Keyboard handling now plays well with normal event handling on X11.
One more issue to go: GLControl on X11 throws when calling MakeCurrent.
2007-08-06 12:13:50 +00:00
the_fiddler 4f35768779 Added X11 structs and functions from Mono's x11 bindings. Updated several items to use these bindings. Debugging crash on XCheckIfEvent callback. 2007-08-05 23:09:05 +00:00
the_fiddler 83d4a08c3c Added visual for InputOnly window X11Input 2007-08-05 18:51:07 +00:00
the_fiddler 23403362e9 Added IWindowInfo.cs, X11/WindowInfo.cs and Windows/WindowInfo.cs, which hold information regarding a platform specific window object.
Updated everything to not use raw window handles, but rather WindowInfo objects.
Added code that (hopefully) creates an invisible input window for X11.
2007-08-05 13:42:31 +00:00
the_fiddler 519b432cd7 Updated documentation on the *GLNative classes. X11/X11GLNative.cs now doesn't create a render window during the constructor call, but rather when CreateWindow is called explicitly. 2007-08-05 10:33:23 +00:00