Commit graph

392 commits

Author SHA1 Message Date
the_fiddler 73474632db Added Fonts example (Tutorial 6) that showcases the use of the TextureFont class. 2007-10-20 10:32:52 +00:00
the_fiddler 7ddf81df81 Added TextureFont class. Right now it can Load and Print fonts. Missing documentation. Slow. 2007-10-20 10:31:59 +00:00
the_fiddler 3416fc515d Cleaned up and simplified the ExampleLauncher reflection functions. Can now launch "console" examples (which utilize neither GameWindow nor Windows.Forms). Better naming scheme for loaded examples. 2007-10-20 10:29:39 +00:00
the_fiddler 2968ab9842 The Resize event is now fired before the Load event. 2007-10-20 10:28:02 +00:00
the_fiddler 35d903bcf2 GameWindow constructor now creates a window. Made CreateWindow private. Added InputDriver. 2007-10-19 20:03:53 +00:00
the_fiddler 056d2d654c Added WMInput driver. 2007-10-19 20:02:34 +00:00
the_fiddler 085ae52ce4 InputDriver now checks for pre-XP windows versions, and instantiates the WMInput driver. 2007-10-19 20:01:41 +00:00
the_fiddler 32d40b8033 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 85ffee222e Initial commit of TexturePacker. 2007-10-17 21:16:22 +00:00
the_fiddler 50f5c8e03f Initial commit of OpenTK.Fonts. 2007-10-17 21:16:00 +00:00
the_fiddler 765cff1142 Deleted obsolete tests. 2007-10-17 21:14:36 +00:00
the_fiddler ac515347d0 Added ability to launch console applications. 2007-10-17 11:33:11 +00:00
the_fiddler 6c4372edbc Improved Call Performance test. It now outputs to the console / log file, and provides much better results. 2007-10-17 11:32:36 +00:00
the_fiddler fcfc35dc18 Fixed build (changes to GLControl). 2007-10-15 11:16:53 +00:00
the_fiddler 33c276bc76 VSync now responds to changes. Contains a true DisplayMode. New constructor. 2007-10-15 11:16:20 +00:00
the_fiddler 73468f8fa3 Added CreateContext and DestroyContext functions. Better handling of DisplayModes. Added Mode property. 2007-10-15 11:15:34 +00:00
the_fiddler 9504ea7ad2 Now loads GL and Glu functions. 2007-10-15 11:14:41 +00:00
the_fiddler e257702212 Removed Fullscreen property (fixes build issue). 2007-10-15 11:13:51 +00:00
the_fiddler 10f89bcd9c Major update! Updated timing routines. Added documentation. Added VSync property. 2007-10-15 11:12:56 +00:00
the_fiddler 50e0da4392 INativeGLWindow no longer inherits from IGLcontrol. Fixes build problems, too. 2007-10-15 11:11:38 +00:00
the_fiddler 2e09aa16b6 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 e64171ae45 Added Exceptions.cs which contains OpenTK exceptions. 2007-10-15 11:03:57 +00:00
the_fiddler 8cce2ac278 Disabled support for multiple devices to minimize memory and CPU usage. 2007-10-15 11:02:14 +00:00
the_fiddler f71bb87fe1 Removed the glControl.CreateControl() calls. 2007-10-05 07:46:56 +00:00
the_fiddler 961cf9d54c Constructor now throws ArgumentNullException instead of ArgumentException. 2007-10-05 06:54:36 +00:00
the_fiddler 5f9a8921b2 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 de5df88e8c Deleted obsolete examples. 2007-09-30 14:11:46 +00:00
the_fiddler fa395a5325 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 e932f8e162 Fixed a warning. 2007-09-30 12:42:43 +00:00
the_fiddler 50733e421d Now uses disposable pattern when launching GameWindows and Forms. 2007-09-30 12:38:40 +00:00
the_fiddler cccb14446a Updated to use the new Shapes.Cube interface. 2007-09-30 12:36:41 +00:00
the_fiddler 53bd24ac16 Added some debug information. Updated to use the new Shapes.Cube interface. 2007-09-30 12:35:35 +00:00
the_fiddler 6341ced26c Fixed memory corruption issue with (Cube's vertices were being moved by the GC). I think. 2007-09-30 12:34:20 +00:00
the_fiddler d526f5a3a4 Preparatory stuff for naming convention changes. 2007-09-30 12:33:27 +00:00
the_fiddler d6265d2190 Fixed a bug in GL.Load() where the GetProcAddress function was never called. 2007-09-29 15:27:18 +00:00
the_fiddler 2323e0cb79 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 4e421d30fb Added VSync property to IGLContext. 2007-09-29 15:24:55 +00:00
the_fiddler ff5ded2c01 Correct class names. 2007-09-27 01:14:09 +00:00
the_fiddler 69dec33ef7 Fix build on Mono 1.2.4 2007-09-27 00:40:28 +00:00
the_fiddler 437bf7946b Added UnLoad event handler. 2007-09-26 23:31:53 +00:00
the_fiddler 87a23b654c OnLoad event updated to better demonstrate its usage. 2007-09-26 23:15:18 +00:00
the_fiddler c04b64e5a0 Rewrote from scratch, using direct OpenGL methods. Added OnUnload override to cleanup resources. 2007-09-26 23:14:50 +00:00
the_fiddler ae35a395b3 Added Unload event. 2007-09-26 23:13:57 +00:00
the_fiddler d8514e8650 Marked as obsolete. Use direct OpenGL methods instead. 2007-09-26 23:13:30 +00:00
the_fiddler 21efddea04 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 b57681889d Bumped version numbers. 2007-09-26 16:49:10 +00:00
the_fiddler 93e704c1f4 Renamed T02 and T04 examples. 2007-09-26 16:37:24 +00:00
the_fiddler e0a1404d15 Added IsoSphere.cs which creates a sphere Shape using theta ad phi coordinates. 2007-09-26 16:14:32 +00:00
the_fiddler 66b32a88e4 Local light for nicer looks :) 2007-09-26 16:12:59 +00:00
the_fiddler 94da72a196 Problem with mouse wheel not getting updated. 2007-09-26 16:12:31 +00:00
the_fiddler be89cff72c 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 46cb5ca3f8 Line endings. 2007-09-26 15:47:13 +00:00
the_fiddler 3aea7f5087 Added TODO caption to Visible property. 2007-09-26 15:44:32 +00:00
the_fiddler dca3f30460 Added NotImplementedException to Visible property. 2007-09-26 15:43:28 +00:00
the_fiddler d4376a75e0 Improved mouse delta handling. WheelDelta is broken. 2007-09-26 15:42:01 +00:00
the_fiddler 28f90f3d17 Polled mouse input through XQueryPointer. 2007-09-26 15:41:14 +00:00
the_fiddler ee4a5cc7ac Added Title property. Foundation of atoms. 2007-09-26 15:40:22 +00:00
the_fiddler 3aea3487fb Added general documentation to Tutorials. 2007-09-26 15:39:32 +00:00
the_fiddler 9563ec3a29 Added Shape.cs and Plane.cs, for use in Examples. Shape is an abstract class that is parent to all shapes, and Plane derives from Shape, implementing a configurable plane (with vertex, normal, index and texcoord arrays). 2007-09-26 12:00:29 +00:00
the_fiddler 78b8f274ee 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 d16f2ce71b Updated to reflect renames (Windows.API -> Windows.Functions, Keyboard/Mouse -> Keyboard-/MouseDevice) 2007-09-26 11:57:32 +00:00
the_fiddler 20f6610c60 Implemented Visible and Title properties. 2007-09-26 11:55:55 +00:00
the_fiddler 5c3315f974 Renamed Windows.API to Windows.Functions 2007-09-26 11:55:24 +00:00
the_fiddler 9a4d7f1976 Renamed Windows.API to Windows.Functions, in accordance to X11.Functions 2007-09-26 11:54:43 +00:00
the_fiddler 2fc8f35a94 Added Visible and Title properties. 2007-09-26 11:53:41 +00:00
the_fiddler f4c6281e34 Removed multiple keyboard/mouse support. 2007-09-26 11:53:19 +00:00
the_fiddler f4b0c19f44 Disabled initialization from Windows.Forms. InputDriver now needs a GameWindow to function. 2007-09-26 11:52:40 +00:00
the_fiddler 9ade72ad34 Renamed Keyboard/Mouse to Keyboard-/MouseDevice. Avoids name clashes. 2007-09-26 11:51:49 +00:00
the_fiddler 6b3d358abd 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 dc9d6a6cc6 Bumped version number. 2007-09-26 11:48:11 +00:00
the_fiddler ea3173a5c1 Updated all examples. Added documentation and generally cleaned them up. 2007-09-26 11:47:30 +00:00
the_fiddler eaeedcf6be Bumped version number. 2007-09-26 11:30:55 +00:00
the_fiddler f7f7dd4d31 Renamed Keyboard and Mouse to KeyboardDevice and MouseDevice respectively, to avoid name classes. 2007-09-26 11:30:18 +00:00
the_fiddler 346c7c15c8 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 2750081048 Vector and example updates. 2007-09-25 21:11:16 +00:00
the_fiddler ec34bed972 Added X11 Mouse support. X11 Keyboard support is faster now.
Made GameWindow.Dispose() virtual.
2007-09-25 16:45:12 +00:00
the_fiddler da377f3c23 Bumped version number. 2007-09-25 16:13:01 +00:00
the_fiddler 2b7d11d68b Disabled test - InputDriver does not work with Mono's Linux Winforms yet. 2007-09-25 15:47:39 +00:00
the_fiddler 038f9a4b08 Complete Vector2, Vector3 and Vector4 structs. 2007-09-25 15:46:52 +00:00
the_fiddler 38d779eb1a Enabled X11Input mouse driver. 2007-09-24 21:23:27 +00:00
the_fiddler 4743d5afd6 InputDriver now correctly interfaces with its mouseDriver. 2007-09-24 21:10:52 +00:00
the_fiddler 9bd06cf09e Added X11Mouse driver. 2007-09-24 20:56:50 +00:00
the_fiddler c8fa8a7b93 Fixed cast issues with Math.Sqrt. 2007-09-24 20:56:17 +00:00
the_fiddler e9fc2c7134 Added length, normal and scale calculations. 2007-09-24 20:18:51 +00:00
the_fiddler da03090ffa Vector23 math and operator overloads. 2007-09-24 20:11:44 +00:00
the_fiddler 130951343a Work on X11 mouse driver. 2007-09-24 20:10:14 +00:00
the_fiddler 0e862bcfdf Bumped version numbers. 2007-09-24 19:58:45 +00:00
the_fiddler edbdadf34b W03_Extensions now uses the Application.Idle event to load extensions instead of the OnLoad event. Fixes flickering problems. 2007-09-24 19:57:37 +00:00
the_fiddler 8cfee01131 Start of T04_Lighting example. Slight updates to T10_GLSL_Cube. Updates to ExampleLauncher exception handling. 2007-09-23 13:38:03 +00:00
the_fiddler dfe1d7c335 Updated update and render frequencies for all examples. 2007-09-23 12:49:38 +00:00
the_fiddler ceb5f4dfd8 Fixed renderFrequency and updateFrequency (they were render_frequency and update_frequency respectively). 2007-09-23 12:39:15 +00:00
the_fiddler 794f4d4eb4 Added GameWindow.SwapBuffers(). Fixed T02_Vertex_Array_Cube to 60Hz. 2007-09-23 12:37:07 +00:00
the_fiddler 57b72e71e1 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 bb2b3f8eae 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 7bf2e84373 Fixed build. 2007-09-22 15:07:28 +00:00
the_fiddler b2ac1d4c61 Updated BindStreamWriter to better handle endlines. Reverted WinRawInput to standard reads. 2007-09-22 14:59:33 +00:00
the_fiddler 1c8b77cd1b Windows raw input now works. 2007-09-22 13:13:17 +00:00
the_fiddler 1c893bdbb5 Added initial OpenTK.Math implementation. Contains Vector2, Vector3 and Vector4 structs. 2007-09-21 23:38:19 +00:00
the_fiddler 1f366057a2 Added license to S04. 2007-09-21 23:36:59 +00:00
the_fiddler 11261553ea 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 626c6324ca Corrected Windows.API.RawMouse class. Mouse input now works! 2007-09-21 22:39:16 +00:00
the_fiddler 2e987c7d2d Updated Input Logger example. Better handling of mice. 2007-09-21 21:30:18 +00:00
the_fiddler 93fc9ce367 Added S04: Input Logger test. 2007-09-21 20:45:47 +00:00
the_fiddler 9b05ee1022 Small update to LoadAll(). 2007-09-21 20:36:41 +00:00
the_fiddler 39fa68a29f Work on MouseDriver. Windows raw driver works. 2007-09-21 20:34:07 +00:00
the_fiddler 8bbaede72e Corrected some struct definitions in Windows.API 2007-09-21 20:31:47 +00:00
the_fiddler f2b92be34f 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 af35f805ba Slight changes to InputDriver constructor. 2007-09-21 20:05:56 +00:00
the_fiddler 98bf228a3d 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 f5db25f32c Enhanced BindStreamWriter.Indent() and Unindent() implementation (they now change a simple counter).
Suppressed warning CS0649 (uninitialised field) in generated code for delegates.
2007-09-21 19:59:22 +00:00
the_fiddler b22af8fd84 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 51c257b562 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 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 d9cedc213b Added needed DisplayMode constructors. Fixed DisplayMode documentation. 2007-09-09 15:07:14 +00:00
the_fiddler a28c46cdc0 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 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 eea200eb1d Added partial modifier to internal Delegates and Imports class. Removed constructors (they now reside in GLHelper.cs). Renamed GL.DrawArray to GL.DrawArrays. 2007-09-05 19:59:54 +00:00
the_fiddler c32f755ebb Sped up GL.LoadAll() and GL.Load() functions. 2007-09-05 19:53:48 +00:00
the_fiddler 287e4dca8a Updated W03_Extensions example (background loading of extensions). 2007-09-05 13:35:40 +00:00
the_fiddler 41c225a15a 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 a435ee6077 Synced 0.3.11 to trunk. 2007-09-02 23:40:50 +00:00
the_fiddler 7b4cff49f2 Adding asynchronous extension loading. 2007-09-02 23:26:12 +00:00
the_fiddler 06c0468091 Glu is now initialized under X11GLNative 2007-09-02 23:18:50 +00:00
the_fiddler e87ce1e5f1 Updated Documentation and version numbers for release. 2007-09-02 23:13:28 +00:00
the_fiddler 7f5bdc2fdc Removed redudant GL.LoadAll call in WinGLNative
Added Glu.LoadAll call to GLControl.cs
2007-09-02 23:04:11 +00:00
the_fiddler c610a8b707 T04_Lit_Cube not ready yet. 2007-09-02 22:52:56 +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 4ce8c1f0d3 Corrected spelling. 2007-09-02 19:54:01 +00:00
the_fiddler 601a8ad2f8 Added timing information in GL.LoadAll() 2007-09-02 19:30:25 +00:00
the_fiddler 5783528f10 Bumped version number. 2007-09-02 13:36:54 +00:00
the_fiddler 6fb1fe1e1b 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 e160c0fac2 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 8c66c39a80 Added DummyGLContext.cs amd DummyGLControl.cs drivers. 2007-09-02 08:09:01 +00:00
the_fiddler f8b21b1dcd 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 0942647ea8 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 3104a880a1 Added Glu and Glx generators to Bind. 2007-09-02 07:50:46 +00:00
the_fiddler e1b0d5fdb5 Added Glu and Glx generators. 2007-09-02 00:58:10 +00:00
the_fiddler 9b257a97e9 Trunk now compiles again. 2007-09-02 00:53:24 +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 0b0da23f52 Bumped version number. 2007-09-02 00:19:19 +00:00
the_fiddler 8a73f0fb9a Beautified platform selection in GLControl.cs
Added missing ')' in Keyboard.ToString() function.
2007-09-02 00:19:01 +00:00
the_fiddler b30f1069a0 Removed IDisposable from IGLControl
Added IDisposable to INativeGLWindow
2007-09-02 00:17:59 +00:00
the_fiddler 5144535b8e 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 1d72cb7ab9 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 e8ec478237 Updated examples to reflect namespace change of DisplayMode and ColorMode.
Renamed T03_RotatingCube.cs to T03_Immediate_Mode_Cube.cs.
Renamed T07_DisplayLists_Cube.cs to T07_Display_Lists_Flower.cs.
Renamed Cube.cs to W02_Immediate_Mode_Cube.cs
Updated colors in T10_GLSL_Cube and T03_Immediate_Mode_Cube
Add S03_Stack_Imbalance.cs test.
Add T01_Simple_Window.cs and T02_Resizable_Window.cs tutorials.
2007-09-02 00:07:40 +00:00
the_fiddler ac4bde2a2d 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 034c4f6a50 Example names are now more readable (ExampleLauncher.Load())
ExampleLauncher behavior is now more consistent when launching GameWindow and WinForm examples. The launcher becomes invisible, and the launched examples exist in the same thread as the launcher.
Better documentation for IExample.cs
2007-09-02 00:02:10 +00:00
the_fiddler 61048d6ae1 Wgl structs now reside in the OpenTK.Platform.Windows namespace, notin OpenTK.Platform.Windows.API. 2007-09-01 23:59:47 +00:00
the_fiddler 4356601d21 Corrected a couple of compiler warnings. 2007-08-31 16:10:38 +00:00
the_fiddler b2459933b2 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