Commit graph

307 commits

Author SHA1 Message Date
the_fiddler d13863ce97 Added IFont and DefaultLayoutProvider classes. 2007-11-01 23:22:00 +00:00
the_fiddler 3bf984be3a Removed Dictionary to reduce memory usage. The dictionary can be built by the user. 2007-11-01 23:21:03 +00:00
the_fiddler 4293d4952e Now uses Alpha texture. Corrected issue with PixelInternalFormat enum not being used. Added preliminary layout code. 2007-11-01 23:17:57 +00:00
the_fiddler 8bf372af28 Regenerated using the latest Bind version. 2007-10-31 17:44:45 +00:00
the_fiddler 466f38897b Regenerated using the latest Bind version. Adds PixelInternalFormat enum. Fixes IntPtr parameters getting object overloads (when they shouldn't) 2007-10-31 17:44:14 +00:00
the_fiddler c45f2d97e4 Updated font rendering code. 2007-10-26 15:55:24 +00:00
the_fiddler 6c76aa72e0 Cleaned up warnings. Updated documentation. Cleaned up some functions. 2007-10-26 15:54:35 +00:00
the_fiddler 99d516b153 Took care of a couple of warnings. 2007-10-26 15:51:07 +00:00
the_fiddler 007bc18d4e Added several overloads for the OpenTK.Math Vector[234] structs. 2007-10-26 13:12:24 +00:00
the_fiddler 0bae4b56d7 Updated the specs using the latest generator. Removes extra spaces. Simplifies overloads GL/Glu functions. Slight speedup to functions that return values (no temporary variables). 2007-10-26 13:00:16 +00:00
the_fiddler 41be39acaf Updated to the new, correct, GLEnums.cs bindings. 2007-10-25 00:33:34 +00:00
the_fiddler 95da49b8e8 Completed the OpenTK.Math Vector[234] overhaul. Added LengthFast and NormalizeFast functions. Removed overloads. Made the pointer conversions explicit. 2007-10-24 23:40:06 +00:00
the_fiddler 1d8e5545da Added InverseSqrtFast. Vector2.LengthFast uses this to approximate the magnitude. 2007-10-24 23:23:24 +00:00
the_fiddler b675c7e621 Fixed compilation issue. Added OpenTK.Math.Functions. 2007-10-24 17:34:34 +00:00
the_fiddler 9e5de11616 Improved the Vector2 interface. Vector2.Add/Sub/Dot/Scale no longer create temporary objects. Removed Vector3/4 overloads. 2007-10-24 17:26:05 +00:00
the_fiddler 5d40b61eb2 Forced creation of GLControl during construction. 2007-10-24 16:41:40 +00:00
the_fiddler 800ac75051 Updated to bindings generated by the 0.3.13.1 generator. 2007-10-21 15:49:42 +00:00
the_fiddler bc2eac92c1 GameWindow.Exit() now throws an exception that is caught inside GameWindow.Run() to signal end of execution. Simplifies code and removes some ugly conditionals. 2007-10-20 14:22:39 +00:00
the_fiddler 5fde8da87c Bumped version number to 0.3.13.x 2007-10-20 14:18:24 +00:00
the_fiddler 71f5efc5c9 Added GdiCharset enum. Not used for now. 2007-10-20 13:40:55 +00:00
the_fiddler e5278cf454 Added ChangeSize function to TexturePacker. 2007-10-20 10:36:27 +00:00
the_fiddler 42761d0f25 Added TextureFont class. Right now it can Load and Print fonts. Missing documentation. Slow. 2007-10-20 10:31:59 +00:00
the_fiddler ac2d5046b8 The Resize event is now fired before the Load event. 2007-10-20 10:28:02 +00:00
the_fiddler 6559df8533 GameWindow constructor now creates a window. Made CreateWindow private. Added InputDriver. 2007-10-19 20:03:53 +00:00
the_fiddler 91b52b5143 Added WMInput driver. 2007-10-19 20:02:34 +00:00
the_fiddler e81a6fdfbc InputDriver now checks for pre-XP windows versions, and instantiates the WMInput driver. 2007-10-19 20:01:41 +00:00
the_fiddler c8f6708acc Removed the InputDriver from the INativeGLWindow interface. It now resides lower, in the GameWindow class. 2007-10-19 20:00:45 +00:00
the_fiddler 1d5ec163c1 Initial commit of TexturePacker. 2007-10-17 21:16:22 +00:00
the_fiddler 7dac34f2bb Initial commit of OpenTK.Fonts. 2007-10-17 21:16:00 +00:00
the_fiddler 2922a8c054 VSync now responds to changes. Contains a true DisplayMode. New constructor. 2007-10-15 11:16:20 +00:00
the_fiddler 85ced6d7ed Added CreateContext and DestroyContext functions. Better handling of DisplayModes. Added Mode property. 2007-10-15 11:15:34 +00:00
the_fiddler cfd383fd03 Now loads GL and Glu functions. 2007-10-15 11:14:41 +00:00
the_fiddler f0e5cbb8aa Major update! Updated timing routines. Added documentation. Added VSync property. 2007-10-15 11:12:56 +00:00
the_fiddler f647ae14d8 INativeGLWindow no longer inherits from IGLcontrol. Fixes build problems, too. 2007-10-15 11:11:38 +00:00
the_fiddler fa5e22da79 Removed loading of GL and Glu functions. This now happens lower in the hierarchy, inside GameWindow. 2007-10-15 11:06:58 +00:00
the_fiddler 4d90ee15a0 Added Exceptions.cs which contains OpenTK exceptions. 2007-10-15 11:03:57 +00:00
the_fiddler 8eb779558c Disabled support for multiple devices to minimize memory and CPU usage. 2007-10-15 11:02:14 +00:00
the_fiddler 65e2c7830c Constructor now throws ArgumentNullException instead of ArgumentException. 2007-10-05 06:54:36 +00:00
the_fiddler 5467bc9567 Fixed issue with multiple GLControls becoming invisible. Simplified GLControl, the platform dependent code now resides in GLContext and WindowInfo - GLControl itself is platform independent, just like GameWindow. This allowed to remove IGLControl.cs, WinGLControl.cs, X11GLControl.cs and DummyGLControl.cs 2007-10-05 06:52:40 +00:00
the_fiddler 96b6ccebd8 Big update: added timing information. Improved update and render frequency limiting algorithms (they extremely accurate now!) Added VSync property and VSyncMode enum. Adaptive VSync not available yet. 2007-09-30 12:44:42 +00:00
the_fiddler b8ce1d4818 Fixed a warning. 2007-09-30 12:42:43 +00:00
the_fiddler bd1bf3ca39 Fixed a bug in GL.Load() where the GetProcAddress function was never called. 2007-09-29 15:27:18 +00:00
the_fiddler f86e6583e3 Added Wgl.EXT.SupportsExtension and optimized Wgl.ARB.SupportsExtension function. Fixed a bug in Wgl.Load() function, where wglGetProcAddress was never called. 2007-09-29 15:26:39 +00:00
the_fiddler 34d3a715a5 Added VSync property to IGLContext. 2007-09-29 15:24:55 +00:00
the_fiddler 1c1f5a8d98 Fix build on Mono 1.2.4 2007-09-27 00:40:28 +00:00
the_fiddler 9aaa45ace2 Added Unload event. 2007-09-26 23:13:57 +00:00
the_fiddler 41f6619652 Marked as obsolete. Use direct OpenGL methods instead. 2007-09-26 23:13:30 +00:00
the_fiddler 357c1405e9 Commented out Keymap struct in X11/API.cs, due to a bug in Mono's 1.2.5 gmcs compiler. 2007-09-26 16:57:43 +00:00
the_fiddler 80a951d20d Bumped version numbers. 2007-09-26 16:49:10 +00:00
the_fiddler 35f154cb72 Problem with mouse wheel not getting updated. 2007-09-26 16:12:31 +00:00
the_fiddler f769caa4f1 Updates to delta handling. Now uses x - last_x instead of storing a delta directly. 2007-09-26 15:48:11 +00:00
the_fiddler e43b3e9fad Line endings. 2007-09-26 15:47:13 +00:00
the_fiddler 6f3e74b688 Added TODO caption to Visible property. 2007-09-26 15:44:32 +00:00
the_fiddler 40b6f1040f Added NotImplementedException to Visible property. 2007-09-26 15:43:28 +00:00
the_fiddler d3da5a219a Improved mouse delta handling. WheelDelta is broken. 2007-09-26 15:42:01 +00:00
the_fiddler aea2f77892 Polled mouse input through XQueryPointer. 2007-09-26 15:41:14 +00:00
the_fiddler d6a001f878 Added Title property. Foundation of atoms. 2007-09-26 15:40:22 +00:00
the_fiddler ff871cff50 Updated Keyboard and Mouse handling. Mouse now uses XQueryPointer. Keyboard relies on X11 events. Still missing mouse delta support. 2007-09-26 11:58:55 +00:00
the_fiddler ae1c9d8642 Updated to reflect renames (Windows.API -> Windows.Functions, Keyboard/Mouse -> Keyboard-/MouseDevice) 2007-09-26 11:57:32 +00:00
the_fiddler 8026e15c5b Implemented Visible and Title properties. 2007-09-26 11:55:55 +00:00
the_fiddler 547e85a8cf Renamed Windows.API to Windows.Functions 2007-09-26 11:55:24 +00:00
the_fiddler 308ffef918 Renamed Windows.API to Windows.Functions, in accordance to X11.Functions 2007-09-26 11:54:43 +00:00
the_fiddler 50465e3569 Added Visible and Title properties. 2007-09-26 11:53:41 +00:00
the_fiddler 2ba903154a Removed multiple keyboard/mouse support. 2007-09-26 11:53:19 +00:00
the_fiddler 0e4479c846 Disabled initialization from Windows.Forms. InputDriver now needs a GameWindow to function. 2007-09-26 11:52:40 +00:00
the_fiddler 7f721e3d3f Renamed Keyboard/Mouse to Keyboard-/MouseDevice. Avoids name clashes. 2007-09-26 11:51:49 +00:00
the_fiddler 8138033b2a Improved documentation. Split On*** event methods between On***Internal and On***, to protect user's from forgetting to call base.On*** (no need to call that now). Improved Resize event handling (goes through OnUpdateFrameInternal now, removes duplicate events). 2007-09-26 11:50:44 +00:00
the_fiddler 73903b3865 Bumped version number. 2007-09-26 11:30:55 +00:00
the_fiddler c5444179ba Renamed Keyboard and Mouse to KeyboardDevice and MouseDevice respectively, to avoid name classes. 2007-09-26 11:30:18 +00:00
the_fiddler 8efe9afe2e Delete IKeyboard.cs and IMouse.cs interfaces. Not needed, as the MouseDevice and KeyboardDevice classes are sealed. 2007-09-26 11:29:18 +00:00
the_fiddler a267b4a381 Vector and example updates. 2007-09-25 21:11:16 +00:00
the_fiddler 42c1affe34 Added X11 Mouse support. X11 Keyboard support is faster now.
Made GameWindow.Dispose() virtual.
2007-09-25 16:45:12 +00:00
the_fiddler 9720d96410 Bumped version number. 2007-09-25 16:13:01 +00:00
the_fiddler 146fef1135 Complete Vector2, Vector3 and Vector4 structs. 2007-09-25 15:46:52 +00:00
the_fiddler a25784c84e Enabled X11Input mouse driver. 2007-09-24 21:23:27 +00:00
the_fiddler 0346c7ba35 InputDriver now correctly interfaces with its mouseDriver. 2007-09-24 21:10:52 +00:00
the_fiddler 97f7f4c7f5 Added X11Mouse driver. 2007-09-24 20:56:50 +00:00
the_fiddler 27d8c47403 Fixed cast issues with Math.Sqrt. 2007-09-24 20:56:17 +00:00
the_fiddler d39787c9de Added length, normal and scale calculations. 2007-09-24 20:18:51 +00:00
the_fiddler 4b29b626b8 Vector23 math and operator overloads. 2007-09-24 20:11:44 +00:00
the_fiddler 61102b359d Work on X11 mouse driver. 2007-09-24 20:10:14 +00:00
the_fiddler 66dfecfee7 Bumped version numbers. 2007-09-24 19:58:45 +00:00
the_fiddler 80f541bd17 Fixed renderFrequency and updateFrequency (they were render_frequency and update_frequency respectively). 2007-09-23 12:39:15 +00:00
the_fiddler 700393b688 Added GameWindow.SwapBuffers(). Fixed T02_Vertex_Array_Cube to 60Hz. 2007-09-23 12:37:07 +00:00
the_fiddler a696bbc765 Added constant and variable time-step update logic to GameWindow. Updated examples to use the new GameWindow UpdateFrame and RenderFrame events. 2007-09-23 12:09:42 +00:00
the_fiddler e361e4c10b Added timing information to UpdateFrame.
Removed T02_Resizable_Window.cs and added T02_Vertex_Array_Cube.cs
Added Shapes/Cube.cs to Examples.
2007-09-22 22:01:43 +00:00
the_fiddler 0712635670 Fixed build. 2007-09-22 15:07:28 +00:00
the_fiddler 26f5d0dff4 Updated BindStreamWriter to better handle endlines. Reverted WinRawInput to standard reads. 2007-09-22 14:59:33 +00:00
the_fiddler e277e3b272 Windows raw input now works. 2007-09-22 13:13:17 +00:00
the_fiddler 0e3a330065 Added initial OpenTK.Math implementation. Contains Vector2, Vector3 and Vector4 structs. 2007-09-21 23:38:19 +00:00
the_fiddler 52a6690150 Removed Move event from IMouse (too inefficient). Polled input only.
S04 now polls for the mouse position.
Keyboard now handles events generated from code and not from physical devices.
2007-09-21 22:49:42 +00:00
the_fiddler 21d6030a6a Corrected Windows.API.RawMouse class. Mouse input now works! 2007-09-21 22:39:16 +00:00
the_fiddler b660f5af9b Updated Input Logger example. Better handling of mice. 2007-09-21 21:30:18 +00:00
the_fiddler 597cc5c07f Small update to LoadAll(). 2007-09-21 20:36:41 +00:00
the_fiddler 980e7138d2 Work on MouseDriver. Windows raw driver works. 2007-09-21 20:34:07 +00:00
the_fiddler 0424887db2 Corrected some struct definitions in Windows.API 2007-09-21 20:31:47 +00:00
the_fiddler dbb2d1a3d6 Enhanced WindowInfo API. A WindowInfo struct can now be initialized from any Control, Form, NativeWindow or GameWindow. 2007-09-21 20:07:30 +00:00
the_fiddler 73656192e6 Slight changes to InputDriver constructor. 2007-09-21 20:05:56 +00:00
the_fiddler 66b046a58c Added KeyRepeat to IKeyboard.
Multiple keyboards correctly reported under Windows (Raw input driver).
Corrected some key maps in X11 and Windows Raw keyboards.
2007-09-21 20:03:53 +00:00
the_fiddler 55a84c70c7 Added licensing information. Added Close() call on failed initialization of W01_First_Window. Moved GLContext to OpenTK namespace. 2007-09-09 16:07:39 +00:00
the_fiddler 00a184e24f Worked around a Mono 1.2.5 gmcs bug, where nested partial classes confuse the compiler. 2007-09-09 15:42:51 +00:00
the_fiddler 2ca6e6c617 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 2e572eb65a Added needed DisplayMode constructors. Fixed DisplayMode documentation. 2007-09-09 15:07:14 +00:00
the_fiddler 827b76b6e9 Improved documentation for DummyGLContext and Dummy.
Disabled S02_RawInput_Logger for updating.
Added WindowInfo.cs
2007-09-09 11:53:25 +00:00
the_fiddler c1fa34087c 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 184b3cee0d Sped up GL.LoadAll() and GL.Load() functions. 2007-09-05 19:53:48 +00:00
the_fiddler 5e28f31660 Improved GL loading speed.
Added background worker thread to W03_Extensions.
Added debug output to failed WinGLContext.MakeCurrent() calls.
Removed object field from Windows.MSG struct.
2007-09-03 21:47:34 +00:00
the_fiddler 105902336e Glu is now initialized under X11GLNative 2007-09-02 23:18:50 +00:00
the_fiddler 096d33dca4 Updated Documentation and version numbers for release. 2007-09-02 23:13:28 +00:00
the_fiddler 45a0efd9d1 Removed redudant GL.LoadAll call in WinGLNative
Added Glu.LoadAll call to GLControl.cs
2007-09-02 23:04:11 +00:00
the_fiddler a813684176 Merged with Bind. Added GLU bindings. Corrected OpenGL overload trimming. 2007-09-02 22:52:00 +00:00
the_fiddler 0555cc2716 Corrected spelling. 2007-09-02 19:54:01 +00:00
the_fiddler dfaaaf582f Added timing information in GL.LoadAll() 2007-09-02 19:30:25 +00:00
the_fiddler 58bad52607 Bumped version number. 2007-09-02 13:36:54 +00:00
the_fiddler 437d8fe627 Updated T10_GLSL_Cube to remove NRE exception on Mono 1.2.x.
Added debug info to the GL.LoadAll function.
Added W03_Extensions.cs example.
2007-09-02 13:34:44 +00:00
the_fiddler 1947662281 T10_GLSL_Cube now really exits when OpenGL 2.0 support is not available.
The ExampleLauncer example TextBox is now docked inside the parent form.
Bumped version numbers.
2007-09-02 08:25:10 +00:00
the_fiddler 7403987e5c Added DummyGLContext.cs amd DummyGLControl.cs drivers. 2007-09-02 08:09:01 +00:00
the_fiddler 6ddd024fbf Added System.Drawing.Color overload to GL.ClearColor.
Updated W01 and W02 examples to use this overload.
Removed 'Paint' message from W01 Paint event.
2007-09-02 08:08:12 +00:00
the_fiddler 00463df2e8 A DummyGLControl driver is now created when in DesignMode. Removes expensive GLContext initialization, and improves designer stability. 2007-09-02 08:07:09 +00:00
the_fiddler 2f09c15672 Trunk now compiles again. 2007-09-02 00:53:24 +00:00
the_fiddler 017a345927 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 ce76c9ffc7 Bumped version number. 2007-09-02 00:19:19 +00:00
the_fiddler 3bf2d03def Beautified platform selection in GLControl.cs
Added missing ')' in Keyboard.ToString() function.
2007-09-02 00:19:01 +00:00
the_fiddler 9ac9af08ac Removed IDisposable from IGLControl
Added IDisposable to INativeGLWindow
2007-09-02 00:17:59 +00:00
the_fiddler b89d2231d4 Changed API.* to * in order to reflect changes in OpenTK.Platform.Windows.API.
Improved Disposable pattern implementation in most Windows classes.
2007-09-02 00:16:22 +00:00
the_fiddler b25edb985d Improved the Disposable pattern (finalizer was not needed).
Removed Dispose() call from glWindow_Destroy function.
Added obsolete warning to the Create and OnCreate events/methods.
2007-09-02 00:13:52 +00:00
the_fiddler c2c3dac7df Moved ColorDepth and DisplayMode to the /OpenTK directory (where under /OpenTK/Platform).
Renamed ColorDepth to ColorMode, to avoid clash with System.Windows.Forms.ColorDepth
Updated examples to use the new namespace for DisplayMode and ColorMode.
2007-09-02 00:04:34 +00:00
the_fiddler 794ba2fa41 Corrected a couple of compiler warnings. 2007-08-31 16:10:38 +00:00
the_fiddler 1d62f8521c Corrected bug affecting the GL.Load and Wgl.Load functions, where the delegates where not retrieved by the GetFields call. 2007-08-22 16:13:41 +00:00
the_fiddler 6ae06d82bd Added IDisposable to all input drivers.
Updated Cube.cs to use System.Drawing.Colors.
Improved DefRawInputProc in windows API.cs
2007-08-22 00:30:16 +00:00
the_fiddler df70c0c531 Corrected a bug where GL.LoadAll wasn't called on time in X11GLNative.
Moved MakeCurrent call to X11GLNative and WinGLNative, instead of GameWindow.
2007-08-21 12:21:01 +00:00
the_fiddler 7cf8aa3d95 Added AdjustWindowRect to Windows.API. The client are in WinGLNative is now correctly specified. 2007-08-21 12:04:01 +00:00
the_fiddler 9e536a72e0 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 e9b2aba8d0 Fixed a CLSCompliance issue. 2007-08-21 09:43:50 +00:00
the_fiddler 8f27150239 Fixed CLS-Compliance. 2007-08-21 09:34:05 +00:00
the_fiddler 0133eb1222 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 7d5087f1f8 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 3b5d61a337 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 33527aa2c9 Added KeyDown and KeyUp events to IKeyboard and Keyboard.
Improved input logger test to hook on the aforementioned events.
Removed Debug printing of keys in OpenTK.Input.Keyboard.
Beautified X11Keyboard.cs
Added experimental code to handle X11 keyboard events (not used yet).
2007-08-20 13:45:04 +00:00
the_fiddler 2254388903 Merged with bind branch. 2007-08-20 12:25:48 +00:00
the_fiddler 7efeeda3ca 2007-08-20 10:46:37 +00:00
the_fiddler 9478d51459 Removed unused code files. Changed endings to CRLF. 2007-08-14 16:57:25 +00:00
the_fiddler 2e467d1aa3 Added wgl binding generator. 2007-08-12 16:14:23 +00:00
the_fiddler 702eada628 Bumped version number.
Updated changelog and todo items.
2007-08-11 06:47:07 +00:00
the_fiddler 273405e4a0 Improved opengl overload trimming. 2007-08-10 20:16:05 +00:00
the_fiddler 2256864b92 Improved shutdown sequence in WinGLNative and GameWindow 2007-08-10 16:55:24 +00:00
the_fiddler 7a2da17f5c 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 9cd1ca9a67 Fixed X11GLContext.MakeCurrent. X11GLControl was not setting the handle correctly. 2007-08-09 12:14:00 +00:00
the_fiddler f98b344cdf Fixed build error in WinGLNative. 2007-08-09 12:08:03 +00:00
the_fiddler 318c8e619d Debugging X11GLControl crash on MakeCurrent. 2007-08-09 12:06:09 +00:00