Commit graph

1286 commits

Author SHA1 Message Date
the_fiddler
18109103e3 Use new string(sbyte*) instead of Marshal.PtrToStringAnsi to increase performance when calling GetString to retrieve the list of available extensions. 2009-11-03 12:59:25 +00:00
the_fiddler
eb92aa8223 Implemented Tranform(Vector, Quaternion) overloads. Fixes issue [#1028]: "[Math] Add vector transformation by quaternion". 2009-11-03 12:20:21 +00:00
the_fiddler
b5eb7fdb93 Deprecated Mult in favor of Multiply.
Modified operator * to use Multiply internally (reduces code duplication).
2009-11-03 12:11:51 +00:00
the_fiddler
eeda1bf866 Fixed Vector3.Transform signature to return a Vector3, not a Vector4. It was previously impossible to transform a Vector3 structure without intermediate conversions to Vector4. 2009-11-03 11:45:20 +00:00
the_fiddler
4d3e84701c Modified Transform(ref Vector4, ref Matrix4, out Vector4) overload to work correctly when the ref and out parameters point to the same Vector4.
Modified Transform(Vector4, Matrix4): Vector4 to call the reference overload internally. Faster and reduces code duplication.
2009-11-03 11:41:36 +00:00
the_fiddler
d757b00e0a Added missing TextureBuffer token to BufferTarget and TextureTarget enums (promoted from ARB_texture_buffer_object). Fixes issue [#1313]: "TextureBuffer target". 2009-11-03 10:33:24 +00:00
the_fiddler
dc572d7a6f Added type-safe parameters to FramebufferTexture (fixes issue [#1303]: "[GL] fix FramebufferTexture parameters"). 2009-11-03 10:22:50 +00:00
the_fiddler
74bae3e196 Use more aggressive xlib locking following the advice of the multithreaded X manpages (needs work). 2009-11-02 22:37:13 +00:00
the_fiddler
0bfb7897b0 Do not allow MakeCurrent() to change the display connection of the context. This would result in an X error and the change allows us to simplify shutdown/cleanup logic. 2009-11-02 20:50:16 +00:00
the_fiddler
1073c8ccac * Matrix4d.cs: M44 should be 1.0 to conform with GL.Ortho(). Fixes issue [#1307]: "GL.Ortho behaves other than combination of OpenTK.Matrix4d.CreateOrthographic and GL.MultMatrix". 2009-11-02 13:25:41 +00:00
the_fiddler
c8c652131e Added experimental Icon and IconConverter implementations from Mono.
Modified INativeWindow implementations to not qualify Icon class fully, so we can change the implementation between System.Drawing and OpenTK at will (using the EXPERIMENTAL #define).
2009-11-02 09:33:53 +00:00
the_fiddler
600f657b70 Improved interoperation with System.Drawing with new addition, subtraction and implicit conversion operators, as well as additional method overloads.
Only expose fields through public properties to allow for parameter validation.
2009-11-02 07:20:59 +00:00
the_fiddler
af2d77cdc5 Updated version numbers in preparation for release. 2009-11-01 23:07:38 +00:00
the_fiddler
041c491f19 Fixed an issue where "const unsigned [type] [pointer]" parameters where not parsed correctly. Solves issue [#1300]: "[OpenCL] Possible bug at CL.CreateProgramWithBinary". 2009-11-01 19:15:44 +00:00
the_fiddler
ff572e83b7 Added experimental OpenTK.Point/Size/Rectangle alternatives to System.Drawing, to make OpenTK usable without referencing System.Drawing (disabled by default, #define EXPERIMENTAL to test). Modified a number of using directives and namespace qualifiers to accommodate this change. 2009-11-01 12:44:38 +00:00
the_fiddler
4914574bd4 Document that these APIs are incomplete. 2009-11-01 12:40:25 +00:00
the_fiddler
792c4e3645 Merged es20 branch back into trunk. 2009-10-28 23:09:25 +00:00
the_fiddler
038e140e41 Return readonly IList<> instead of copying arrays of data. 2009-10-28 00:39:38 +00:00
the_fiddler
3d0a3dfb4e Implemented INativeWindow.MouseEnter/MouseLeave events on Win32 and X11. 2009-10-27 23:57:44 +00:00
the_fiddler
852fdc3662 Generate UpdateFrame events even if TargetUpdateFrequency is 0. According to the documentation, setting this value to 0 will result in unconstrained UpdateFrame frequency. Fixes issue [#1294]: "OnUpdateFrame function does not work with maximum update rate". 2009-10-27 22:23:11 +00:00
the_fiddler
721277d7f7 Do not qualify Stopwatch fully, to allow it to be overridden by Minimal.cs if necessary. 2009-10-24 10:35:49 +00:00
the_fiddler
f25e37c22a Provide dummy implementations for classes not available on the iPhone. 2009-10-24 10:35:15 +00:00
the_fiddler
0c25f266d3 Fixed x86-specific ABI assumption (do not pass structure directly when a pointer is expected). Patch by jonp. 2009-10-23 22:06:15 +00:00
the_fiddler
b8f8e46bab Added dllmap for OpenGL|ES on Mac OS X. 2009-10-23 20:11:40 +00:00
the_fiddler
ca540e2626 Debug.WriteLine(object, string) does not work as intended (the first parameter defines the category). Use Debug.Print instead. 2009-10-23 17:45:14 +00:00
the_fiddler
8527483c0b Fixed x86-specific ABI assumption (do not return structure directly when a pointer is expected). Patch by jonp. 2009-10-23 16:10:55 +00:00
the_fiddler
a7ccef9ae8 Set default class cursor to avoid invalid cursors when entering the window. 2009-10-21 20:08:04 +00:00
the_fiddler
f1fc4b5b4e Added LoadCursor method.
Added CursorName enum (only default arrow cursor is defined for now).
2009-10-21 20:07:32 +00:00
the_fiddler
f127ddf031 Use StringBuilder.Capacity to specify the available buffer size in OpenGL interop (StringBuilder.Length is invalid in this case).
Added workaround for Mono 1.9.1 issue, where StringBuilder return truncated results when used in interop. Doubling the StringBuilder capacity fixes this issue.
2009-10-21 17:26:07 +00:00
the_fiddler
895e416ca1 OnLoad/OnUnload should be protected, not public, to conform with the class library design guidelines. This issue was supposed to be fixed in 0.9.9-2, but was apparently overlooked. 2009-10-21 13:33:00 +00:00
the_fiddler
bdfa5fc9ec Avoid accessing OpenTK.Graphics.OpenGL from platform-specific code. Reduces coupling and code-duplication. 2009-10-21 10:16:32 +00:00
the_fiddler
25c646639b Trap WM_SYSCHAR to avoid generating system beeps on Alt+[Key] combinations. 2009-10-20 11:35:35 +00:00
the_fiddler
ddcf5f6e44 Revert WindowBorder and WindowState value changes.
Use Nullable types to detect when WindowBorder and WindowState is not set.
2009-10-19 21:32:33 +00:00
the_fiddler
2b7ed38569 * X11GLNative.cs: Added more defensive checks for the existence of the window before issuing XDestroyWindow.
Do not allow multiple calls to XDestroyWindow once the shutdown sequence has been initialized. Fixes issue [#1190]: "GameWindow dispose on linux".
2009-10-19 19:46:37 +00:00
the_fiddler
162faad8e3 * X11GLNative.cs: Correctly set all necessary ClientMessage fields
for XSendEvent call in Close() method.
2009-10-19 19:03:17 +00:00
the_fiddler
47c1cc69e5 * Functions.cs: Added helper function for XSendEvent, so that we
don't need to cast the EventMask to IntPtr.
2009-10-19 19:02:07 +00:00
the_fiddler
e2dd2cb58f * X11GLContext.cs: Correctly set GraphicsMode in constructor (resolves issue [#1175]: "Graphics] GraphicsContext.GraphicsMode property returns null on Linux"). 2009-10-19 18:11:32 +00:00
the_fiddler
38196c57f5 Added dllmap for OpenCL on Linux. 2009-10-19 17:53:59 +00:00
the_fiddler
0c9657c5e7 * X11GLNative.cs: Implemented Icon property for WMs that do not
respect _NET_WM_ICON (e.g. Gnome/Metacity/Compiz).
2009-10-19 10:42:28 +00:00
the_fiddler
a05d06b2d8 * Functions.cs: Added a number of missing methods relating to
XWMHints, images, pixmaps and root windows.
Implemented Create[Mask|Pixmap]FromImage methods.

* Structs.cs: Added ImageFormat enum.
2009-10-19 10:41:41 +00:00
the_fiddler
80350e41d1 Route overloads through GL class instead of calling the Delegates directly. Ensures that automatic error checking will work as expected. 2009-10-19 09:10:32 +00:00
the_fiddler
e551881f1b Implemented icon support. 2009-10-18 16:52:07 +00:00
the_fiddler
a3b2211547 Treat 0 as a special value (necessary for internal purposes). 2009-10-18 15:23:22 +00:00
the_fiddler
76ae6999cd Focused property now returns correct values. FocusedChanged event is now correctly raised. 2009-10-18 15:11:41 +00:00
the_fiddler
590789a684 Improved handling if WindowBorder changes when the window is WindowState is Maximized or Fullscreen. Maximized windows now correctly retain their maximized state, while fullscreen windows do not become non-fullscreen when their border is modified. 2009-10-18 14:56:53 +00:00
the_fiddler
6be563211f * API.cs: added MonitorFromWindow/MonitorFromPoint methods.
* WinGLNative.cs: fixed handling of WindowState.Maximized when WindowBorder is Hidden.
    WindowStateChanged events are now correctly raised on all state changes.
2009-10-18 09:42:41 +00:00
the_fiddler
c5464bc5d0 Do not print window title to debug stream inside the set_Title property. Instead, log an error only when the method call fails. Fixes issue [#1239]: "Debug.Print in Title property". 2009-10-17 22:02:08 +00:00
the_fiddler
158f1af9d3 Added distinct /overrides/add and /overrides/replace elements.
Added check for the existence of override elements before trying to use them (avoids potential null reference exception).
Regenerated bindings using the latest version of the generator.
2009-10-17 21:49:35 +00:00
the_fiddler
353ef37dd4 Fixed issue [#1240]: "Generic ref and out wrappers do not copy results to the reference parameter", by assigning the GCHandle.Target back to the reference parameter. 2009-10-17 20:02:53 +00:00
the_fiddler
b2bc058ac9 Added override for GetProgramInfoLog: infolog parameter should have a flow of 'out'. 2009-10-17 16:31:33 +00:00
the_fiddler
40aae28300 Fixed GetDouble implementation to return correct values (should call GetDouble not GetFloat!) Fixes issue [#1235]: "Matrix4d wrong value on GL.GetDouble". 2009-10-15 14:37:26 +00:00
the_fiddler
4abe4416a8 Added LoadIcon method.
Made SHFILEINFO non-public.
Modified WinGLNative.cs to use Icon.ExctractAssociatedIcon() to set the application icon (needs work).
2009-10-14 22:48:19 +00:00
the_fiddler
ef1a4488d0 Added support for setting the application (use SHGetFileInfo to retrieve the correct icon and set it when constructing a new window). 2009-10-14 21:50:40 +00:00
the_fiddler
973839ef2b Restore previous window size when leaving fullscreen mode. 2009-10-14 19:46:39 +00:00
the_fiddler
83514567f4 Corrected documentation on the M42 property. Fixes issue [#1227]: "Matrix4.M42 documentation". 2009-10-14 18:30:12 +00:00
the_fiddler
34f36d579f Added missing CreatePerspectiveFieldOfView and CreatePerspectiveOffCenter methods (fixes issue [#1226]: "Matrix4d.CreatePerspectiveFieldOfView").
Replaced several instances of float values by double equivalents.
2009-10-13 21:33:59 +00:00
the_fiddler
d76279565f Workaround for modal loop blocking in ENTERMENULOOP event. 2009-10-12 13:15:12 +00:00
the_fiddler
6dd6fedd08 * Enums.cs: Enums now use the inherit from the correct int or long type. 2009-10-09 06:03:12 +00:00
the_fiddler
5e95ec9fc4 * CL.cs: Removed invalid documentation. 2009-10-09 05:41:50 +00:00
the_fiddler
ab138bfb37 Post a close message instead of destroying the window outright, when the user calls the Close() method. Ensures that the user can stop the exit sequence through the IsClosing event. 2009-10-07 16:18:48 +00:00
the_fiddler
4482a79e84 * GameWindow.cs: Improved implementation of GameWindow.Exit(). It should now be possible to cancel the exit through the IsClosing event. 2009-10-07 16:13:46 +00:00
the_fiddler
e441e9d067 Generate Update/ResizeFrame events whenever the window is moved or resized. Partially fix for issue [#1218]: "[NativeWindow] Avoid modal loop during window resize/movement". 2009-10-07 15:18:53 +00:00
the_fiddler
c0528707c3 Refactored and simplified the Run() loop. 2009-10-07 13:08:13 +00:00
the_fiddler
a6984a7a48 Added timer callback to WM_ENTERSIZEMOVE messages to avoid stalling the rendering during the modal size/move loop (which occurs when the user clicks the window bar or borders). Still need to find a way to notify the frontend (GameWindow) to process queued up UpdateFrame/RenderFrame events. 2009-10-07 13:07:36 +00:00
the_fiddler
eaac78008b Added SetTimer, KillTimer and TimerProc bindings. 2009-10-07 13:03:32 +00:00
the_fiddler
c47eacee05 * OpenGL/GLHelper.cs: Removed static GetAddress method in favor of
implementation inherited from GraphicsBindingsBase.
Disabled unused code.
2009-10-07 11:23:40 +00:00
the_fiddler
5f93a2fb0d * GraphicsContext.cs: Removed unused code. 2009-10-07 11:22:48 +00:00
the_fiddler
c0e0872c19 * AudioCapture.cs: Fixed documentation warning. 2009-10-07 11:21:18 +00:00
the_fiddler
7b5cde901e * AL/AL.cs:
* Alc/AlcEnums.cs: Fixed documentation warnings.
2009-10-07 11:20:44 +00:00
the_fiddler
b2c9fdab58 * BindingsBase.cs:
* Graphics/BindingsBase.cs:
* Graphics/GraphicsBindingsBase.cs: Moved GraphicsBindingsBase to its
  own file.
Moved BindingsBase to root OpenTK folder (reason: BindingsBase is not
  specific to OpenTK.Graphics anymore).
Documented GetAddress methods.
2009-10-07 10:52:48 +00:00
the_fiddler
d3a56a15ef * Graphics/ES10/Helper.cs:
* Graphics/ES11/Helper.cs:
* Graphics/ES20/Helper.cs:
* Graphics/BindingsBase.cs:
* Platform/X11/GlxHelper.cs:
* Graphics/OpenGL/GLHelper.cs:
* Platform/X11/X11GLContext.cs: Modified BindingsBase to define
  abstract GetAddress method (reason: removes OpenTK.Graphics-specific
  code from BindingsBase and allows it to be used in different
  bindings).
Implemented GraphicsBindingsBase and modified the OpenGL and OpenGL|ES
  bindings to use this.
Modified the GLX bindings to inherit from BindingsBase (reason:
  reduces code duplication for extension loading).
2009-10-07 10:44:45 +00:00
the_fiddler
8992f90571 Replaced calls to obsolete methods.
Fixed parameters in double versions of BaryCentric() (should be double instead of float).
2009-10-06 09:51:13 +00:00
the_fiddler
f926595b64 Obsoleted Scale() instance method (reason: redundant. Mult()/Multiply() instance/static methods can be used to achieve the same effect). 2009-10-06 09:45:09 +00:00
the_fiddler
65c6b29918 Added vector overloads to Multiply and Divide methods.
Renamed Sub to Subtract, Mult to Multiply and Div to Divide (reason: conform with the class library design guidelines).
Obsoleted instance Add, Sub, Mult and Div methods in favor of static ones (reason: reduce API bloat, they are completely redudant).
Improved documentation for new methods.
2009-10-06 09:42:21 +00:00
the_fiddler
6b79a2d251 Fixed formatting. 2009-10-06 08:57:48 +00:00
the_fiddler
3fb4df13fb Bumped version number. 2009-10-06 08:53:11 +00:00
the_fiddler
c6afa30b4b Added GetActiveAttrib, GetActiveUniform, GetActiveUniformName and GetActiveUniformBlockName overloads that return strings. Fixes issue [#1213]: "[GL] let GetUniformName() return String". 2009-10-06 08:29:12 +00:00
the_fiddler
9933bf4739 Added ClearColor(Color4) overload. Fixes issue [#1207]: "[GL] add Color4 argument overload for ClearColor". 2009-10-06 08:03:53 +00:00
the_fiddler
69cfe6b56a Raise KeyPress events (handle WindowsMessage.CHAR message). 2009-09-26 21:56:42 +00:00
the_fiddler
5ce65c92ad Made KeyChar property setter internal instead of private. Useful for reusing KeyPressEventArgs structures (instead of allocating a new one on each and every character event). 2009-09-26 21:55:23 +00:00
the_fiddler
c201b71cf7 Marked IGameWindow as public. 2009-09-26 21:34:19 +00:00
the_fiddler
0abd2823d2 * X11GraphicsMode.cs: Protect the mode queries with XLockDisplay()/XUnlockDisplay(). 2009-09-25 08:28:51 +00:00
the_fiddler
255cad1f21 Ensure the GameWindow is visible when the Run() method is called. 2009-09-19 21:56:13 +00:00
the_fiddler
87683d533e Renamed IsWindowVisisble to the correct IsWindowVisible. 2009-09-19 20:30:12 +00:00
the_fiddler
3170c7aa0a * X11KeyMap.cs: Removed dependency on System.Windows.Forms. 2009-09-13 16:34:03 +00:00
the_fiddler
76e338ce5e Removed obsolete comment. 2009-09-08 16:55:41 +00:00
the_fiddler
4e86dd1381 Remove System.Windows.Forms.Control dependency in favor of OpenTK.NativeWindow. 2009-09-08 13:09:50 +00:00
the_fiddler
542144ac7c Construct windows invisible by default. Use 'Visible = true' or 'GameWindow.Run' to display them. 2009-09-08 13:04:22 +00:00
the_fiddler
b41877e771 Added IsWindowVisible method. 2009-09-08 13:03:21 +00:00
the_fiddler
837604a1a6 Updated tokens for ARB_depth_clamp, ARB_vertex_array_bgra, ARB_seamless_cube_map, ARB_provoking_vertex, ARB_draw_elements_base_vertex which where promoted in version 3.2. Fixes issue [#1146]: "[GL3.2] Multiple (minor) corrections". 2009-09-07 18:33:32 +00:00
the_fiddler
5643259379 Updated tokens for ARB_geometry_shader4 (promoted in Version 3.2). Fixes issue [#588]: "ARB_geometry_shader4". 2009-09-07 18:21:39 +00:00
the_fiddler
7c3b758509 Updated tokens for ARB_texture_multisample (promoted in Version 3.2). Fixes issue [#1151]: "ARB_texture_multisample". 2009-09-07 17:56:25 +00:00
the_fiddler
ccda66e0a8 Added AllowPartialTrustedCallers attribute. 2009-09-06 14:19:52 +00:00
the_fiddler
66e17487b0 Updated in preparation of 0.9.9-2 release. 2009-09-05 18:35:20 +00:00
the_fiddler
ce77b57566 Implemented Quaternion scaling by scalars. Fixes issue [#1131]: "[Math] add Quaternion scaling (easy)". 2009-09-05 16:17:47 +00:00
the_fiddler
88d6d57121 Regenerated bindings using the fixed MinmaxTarget and SeparableTarget enums names. 2009-09-05 15:32:00 +00:00
the_fiddler
316b5f265d Regenerated bindings with using the cleaned up EXT_histogram, EXT_convolution and SGI_color_table tokens that were promoted in version 1.2. 2009-09-05 15:28:12 +00:00
the_fiddler
594f877021 Removed obsolete OnCreate and OnDestroy methods/events. 2009-09-04 23:23:46 +00:00
the_fiddler
72eb674817 Silenced a few compiler warnings. 2009-09-04 23:23:13 +00:00
the_fiddler
1f0c7fe466 Removed unnecessary CLSCompliant attributes. 2009-09-04 23:22:44 +00:00
the_fiddler
26db415bd8 Changed IsDisposed into a property and modified code to use this instead of the backing field. 2009-09-04 23:18:47 +00:00
the_fiddler
f020cfce33 Fixed XML documentation warnings. 2009-09-04 23:16:43 +00:00
the_fiddler
997f57c1f7 Modified MouseDevice events to follow the class library design guidelines.
Changed Mouse[Move|Button|Wheel]EventArgs into classes that inherit from EventsArgs, in order to follow the event design guidelines.
2009-09-04 23:13:24 +00:00
the_fiddler
d3bccf0b4b Fixed XML documentation warnings.
Removed unnecessary [CLSCompliant(true)] attributes.
2009-09-04 23:12:10 +00:00
the_fiddler
00930380b5 Fixed XML documentation warnings. 2009-09-04 23:11:20 +00:00
the_fiddler
d7f83f3cb2 Fixed XML documentation warnings. 2009-09-04 22:16:12 +00:00
the_fiddler
cd9ea45427 Suppressed 'unused code' warnings. 2009-09-04 22:16:02 +00:00
the_fiddler
6fdf37f99f Added KeyboardKeyEventArgs.
Modified KeyboardDevice.KeyDown/KeyUp to follow the class library design guidelines.
Modified samples to use the new KeyDown/KeyUp event signatures.
2009-09-04 22:10:50 +00:00
the_fiddler
4155342b2e Fixed XML documentation warnings. 2009-09-04 22:09:07 +00:00
the_fiddler
98ae93d424 Removed [Obsolete] attribute from Joysticks, Keyboard and Mouse properties until the new input API is ready. 2009-09-04 22:08:51 +00:00
the_fiddler
4cfd0ab270 Added missing XML documentation. 2009-09-04 22:08:10 +00:00
the_fiddler
2606d0d6e8 Set disposed to true when calling Dispose() method. 2009-09-04 21:46:39 +00:00
the_fiddler
33db1f6b74 Fixed a large number of documentation warnings. 2009-09-04 21:44:39 +00:00
the_fiddler
7601c2b57d Removed this property to maintain parity with the Matrix4 structure. 2009-09-04 21:37:53 +00:00
the_fiddler
9701b97bb8 Added missing XML documentation. 2009-09-04 21:31:31 +00:00
the_fiddler
b89b377119 Applied kvark's latest NativeWindow/GameWindow patch, which improves event handling, the shutdown sequence and documentation, while removing stale code. 2009-09-04 21:27:05 +00:00
the_fiddler
abf3787e8e Added missing XML documentation and fixed invalid XML doc references.
Removed deprecated methods from IGraphicsContext.
2009-09-04 21:25:29 +00:00
the_fiddler
c573869322 Made GraphicsMode.Index public, as it is necessary when extending OpenTK.
Removed OpenTK.Platform.Utilities.CreateWindowInfo and made the platform-specific CreateWindowInfo methods public (e.g. CreateX11WindowInfo).
Moved Mono Windows.Forms-specific code into X11GLControl.
Removed OpenTK.Platform.Utilities.IsIdle.
Removed obsolete methods from OpenTK.Platform.Utilities.
Marked OpenTK.Platform.Utilities.CreateGraphicsContext as obsolete (use GraphicsContext constructor instead).
Made IWindowInfo implementations private.
2009-09-04 21:11:25 +00:00
the_fiddler
6c9eb1dbf2 OpenAL DllImport library should be internal, not public. 2009-09-04 13:02:44 +00:00
the_fiddler
72f0fb86da Added missing Matrix4./Matrix4d.CreateRotation[XYZ] methods.
Added missing Matrix4d.CreateFromAxisAngle method.
Fixed Matrix4d constructor to take double parameters instead of float.
2009-09-04 13:02:23 +00:00
the_fiddler
2c4e0feb1a * Source/Build/Properties/AssemblyInfo.cs:
* Source/OpenTK/Properties/AssemblyInfo.cs:
* Source/Examples/Properties/AssemblyInfo.cs:
* Source/GLControl/Properties/AssemblyInfo.cs:
* Source/Compatibility/Properties/AssemblyInfo.cs: Added
  AssemblyKeyFile and AllowPartialTrustCallers attributes.

* Source/OpenTK/Configuration.cs: Added [assemly: AssemblyKeyFile]
  attribute.
Added missing license information.
Moved [assembly: CLSCompliant] to Properies/AssemblyInfo.cs.
2009-09-04 10:34:18 +00:00
the_fiddler
f8467ab767 * Keyboard.cs: Disabled fixed buffer due to gmcs 2.0.1 compiler bug
(bogus CS0214) warning.
Added license information.

* Mouse.cs:
* MouseState.cs:
* MouseDevice.cs:
* MouseButton.cs:
* KeyboardState.cs:
* KeyboardDevice.cs: Added license information.

* Key.cs: Added missing LastKey enum.
2009-09-03 21:15:12 +00:00
the_fiddler
0fdcb94ca9 * GamePad.cs:
* GamePadState.cs: Added initial implementations.
* Keyboard.cs:
* KeyboardState.cs: Added a number of public members, experimentally.
2009-09-03 20:53:48 +00:00
the_fiddler
b5cd97c693 Added ColorAttachmenti tokens to ReadBufferMode enum. Fixes issue [#1140]: "ColorAttachment values on ReadBufferMode". 2009-09-03 20:14:54 +00:00
the_fiddler
f6da09177e Fixed line endings and set svn:eol-style to native and svn:mime-type to text/plain for .cs files. 2009-09-03 19:01:11 +00:00
the_fiddler
2f5a0bfe3b * Source/OpenTK/Platform/Egl/EglContext.cs:
* Source/OpenTK/Graphics/GraphicsContext.cs:
* Source/OpenTK/Graphics/IGraphicsContext.cs:
* Source/OpenTK/Platform/MacOS/AglContext.cs:
* Source/OpenTK/Platform/X11/X11GLContext.cs:
* Source/OpenTK/Graphics/GraphicsContextBase.cs:
* Source/OpenTK/Platform/Windows/WinGLContext.cs:
* Source/OpenTK/Platform/Dummy/DummyGLContext.cs: Added IsDisposed
  property to IGraphicsContext and implemented in all context classes.
  Removed 'bool disposed' fields from these classes in favor of the
  new property.
2009-09-03 12:23:11 +00:00
the_fiddler
0edbcae3b4 Removed unused code. 2009-09-02 23:02:14 +00:00
the_fiddler
9d3561dc4e Merged nativewindow branch to trunk. 2009-09-02 13:36:34 +00:00
the_fiddler
37f5c99d58 * DesktopGraphicsContext.cs: Removed unecessary using directives. 2009-08-25 10:36:46 +00:00
the_fiddler
b5244f22c2 Added EmbeddedGraphicsContext as the foundation of all ES context implementations and modified EglContext to inherit from this. 2009-08-25 10:36:14 +00:00
the_fiddler
63314b0f82 * X11GLContext.cs: Remove context field in favor of GraphicsContextBase.Handle. Fixes issue 1121: "GraphicsContext fails with KeyNotFoundException on SVN trunk". 2009-08-25 09:03:19 +00:00
the_fiddler
ecb70f9fd3 Fixed issue 1119: "[Compute] 'CL.GetPlatformIDs' missing 's'". 2009-08-20 21:36:57 +00:00
the_fiddler
c6516c2255 Moved OpenTK.GLControl to its own project. 2009-08-19 14:17:47 +00:00
the_fiddler
073109c8c7 Fixed documentation warnings.
Removed duplicate code (due to BindingsBase class).
2009-08-19 13:22:12 +00:00
the_fiddler
c1f41d1eb9 Moved Alut to OpenTK.Compatibility.
Moved SoundData and SoundFormat to OpenTK.Compatibility.
Moved AL and Alc classes to OpenTK.Audio.OpenAL and added the previous namespace to OpenTK.Compatibility.
Removed SoundData wrappers from AL class.
Updated samples to use the new API.
2009-08-17 10:32:20 +00:00
the_fiddler
7f970763a7 Moved GdiPlus wrappers to OpenTK.Compatibility.
Moved TextPrinter to OpenTK.Compatibility.
2009-08-17 10:29:51 +00:00
the_fiddler
775f158269 Removed Destroy event and RegisterForDisposal method from IGraphicsContext.
Added GraphicsContextBase, which acts as the foundation of all IGraphicsContext implementations.
Added DesktopGraphicsContext, which acts as the foundation of all desktop (i.e. not ES) IGraphicsContext implementations.
Modified all IGraphicsContext implementations to inherit from GraphicsContextBase and/or DesktopGraphicsContext.
2009-08-17 10:23:16 +00:00
the_fiddler
2747869a92 Added BindingsBase class that provides a common base for all generated bindings.
Made the OpenGL and OpenGL|ES bindings non static.
Made the OpenGL and OpenGL|ES bindings inherit from BindingsBase.
2009-08-17 10:20:42 +00:00
the_fiddler
ebaf16bf8a Now use "Core" as default Settings.ImportsClass. 2009-08-17 10:15:29 +00:00
the_fiddler
1bcc012f35 Implemented INativeWindow.WindowBorderChanged and INativeWindow.WindowStateChanged events. 2009-08-17 09:34:15 +00:00
the_fiddler
0b36b2a779 Updated documentation to remove references to the 3.1 specification (this class always supports the full profile of the latest specification.) 2009-08-15 18:02:16 +00:00
the_fiddler
1f53422cf1 Normalized line endings. 2009-08-15 18:01:15 +00:00
the_fiddler
e24402487c Regenerated bindings to fix CLSCompliance issues. 2009-08-15 17:51:03 +00:00
the_fiddler
68c985c6f4 Regenerated bindings using the latest generator updates. 2009-08-15 17:37:56 +00:00
the_fiddler
e2bfabd659 Fixed compilation errors.
Moved bindings to the GL class.
2009-08-15 17:37:18 +00:00
the_fiddler
521c1211d3 Removed the various GetProcAddress methods (now handled by IGraphicsContextInternal).
Removed Imports nested class.
2009-08-15 16:56:36 +00:00
the_fiddler
e4f1c956c9 Regenerated bindings using the latest generator updates.
ES bindings now exist in ES10.GL, ES11.GL and ES20.GL classes instead of ES10.ES etc (reason: easier porting to/from regular OpenGL).
2009-08-15 16:55:53 +00:00
the_fiddler
7a8bfc60ee Modified CreateX11WindowInfo to check GraphicsMode.Index.HasValue prior to using it. 2009-08-15 16:46:33 +00:00
the_fiddler
5d5f598707 Implemented EglContext construction according to AMD's OpenGL|ES samples. 2009-08-15 16:45:59 +00:00
the_fiddler
5515c59173 Added OutAttribute to array parameters that return values.
Added Egl.GetProcAddress method.
2009-08-15 16:45:21 +00:00
the_fiddler
9a6a539d26 Modified GraphicsMode.Index to be a nullable property. Modified consuming classes to check Index.HasValue prior to first use. 2009-08-15 16:44:43 +00:00
the_fiddler
b503c41bf1 Made GraphicsMode query non-eager. The GraphicsMode will only be queried on first access of its Index property, for example when creating an X11 window or a new GraphicsContext. 2009-08-15 16:03:54 +00:00
the_fiddler
0feae9b6e3 Added documentation. 2009-08-15 16:02:52 +00:00
the_fiddler
584fe3f301 Replaced libGLES.dll by libGLESv2.dll, which is provided by AMD's OpenGL|ES emulator. 2009-08-14 15:33:39 +00:00
the_fiddler
5464be873f Removed duplicate GetConfigAttrib calls. 2009-08-14 15:32:38 +00:00
the_fiddler
d436bf5e14 Use Egl.GetDisplay to get a display connection from an EGLNativeDisplayType. 2009-08-14 15:19:37 +00:00
the_fiddler
b5928c6dd4 Replaced libGLES_CM.dll by libEGL.dll, which is provided by the AMD OpenGL|ES emulator. 2009-08-14 15:17:42 +00:00
the_fiddler
5743d2bf3b Renamed GL folder to OpenGL, in order to match namespace. 2009-08-14 14:24:18 +00:00
the_fiddler
2e6a80624b Fixed GraphicsContextFlags.Embedded matching. 2009-08-14 14:18:30 +00:00
the_fiddler
b240db8cd9 Added mathematical constants used by XNA (Pi, E, logarithms).
Removed unused code.
2009-08-14 14:15:30 +00:00
the_fiddler
6336246f57 Ensure UnsupportedPlatform is used for Factory.Embedded if OpenGL|ES is not supported. 2009-08-14 14:10:56 +00:00
the_fiddler
3462e80978 Moved OpenTK.Graphics.GL class to the OpenTK.Graphics.OpenGL namespace (reason: necessary for OpenGL|ES support; necessary for support of different OpenGL profiles). OpenTK.Graphics.GL has been moved to the OpenTK.Compatibility library.
Removed OpenTK.Graphics.Glu class (reason: deprecated upstream; most functionality provided by OpenTK math; not compatible with OpenGL 3.0+.) OpenTK.Graphics.Glu can be accessed through OpenTK.Compatibility.
Added OpenGL|ES-specific ErrorHelper classes.
Moved OpenTK.Graphics.DisplayDevice and OpenTK.Graphics.DisplayResolution to the root OpenTK namespace (reason: their functionality is not specific and does not depend on OpenTK.Graphics).
Split Graphics*Exception classes into different files.
Made GraphicsErrorException public (reason: necessary for OpenTK.Compatibility).
2009-08-14 13:13:28 +00:00
the_fiddler
3cfc3906b8 Obsoleted OpenTK.Functions in favor of OpenTK.MathHelper (reason: XNA compatibility).
Added Matrix4.LookAt overload that does not use Vector3 parameters.
2009-08-14 12:37:18 +00:00
the_fiddler
245f45c7eb Added support for IPlatformFactory implementations for embedded devices that use EGL. The embedded implementation can be used side-by-side with the normal implementations (useful for platforms that support both desktop GL and EGL). 2009-08-13 11:52:51 +00:00
the_fiddler
e0ba370b4a Added GraphicsContextFlags.Embedded for OpenGL|ES. 2009-08-13 11:41:32 +00:00
the_fiddler
fec018e921 Normalized line endings. 2009-08-13 11:41:14 +00:00
the_fiddler
d9fc224f72 Added IsSupported property, which checks for the existence of EGL libraries. 2009-08-13 11:40:16 +00:00
the_fiddler
a905b3ce24 * Egl.cs: Added workaround for gmcs 2.4.2 bug #530270 (https://bugzilla.novell.com/show_bug.cgi?id=530270). 2009-08-12 10:58:23 +00:00
the_fiddler
41c8dc9fbb Regenerated OpenCL bindings with the compilation fixes for gmcs 2.0. 2009-08-12 10:13:51 +00:00
the_fiddler
81b06b8a08 Ensure Wgl core entry points are loaded prior to first use, even without a Wgl context.
Do not query actual GraphicsMode.Default in DummyGLContext constructor. Doing so creates a temporary context, which should not be done when creating a dummy context.
Fixed issue [#993]: "Possible bug in GraphicsContext.CreateDummyContext()".
2009-08-11 21:45:32 +00:00
the_fiddler
e0f6300c5b Missed part of the refactored X11 bindings. 2009-08-11 21:15:29 +00:00
the_fiddler
d9d2cfd735 Added missing license information. Made public. Added documentation. 2009-08-11 21:11:46 +00:00
the_fiddler
d3fadd0be1 Suppressed documentation warnings and ensured public structures follow the class library design guidelines. 2009-08-11 21:11:39 +00:00
the_fiddler
682d371cbe Made types used by X11WindowInfo public. 2009-08-11 21:02:52 +00:00
the_fiddler
bf5decd472 Added missing license information and removed unused code. 2009-08-11 20:57:54 +00:00
the_fiddler
8f74430e23 Made class public.
Added missing license information.
2009-08-11 20:55:43 +00:00
the_fiddler
c83f9d6a3a Added missing license information. 2009-08-11 20:55:13 +00:00
the_fiddler
791be928cb Removed unused code. 2009-08-11 20:51:02 +00:00
the_fiddler
d308ee7bd5 Bumped version number 2009-08-11 20:44:32 +00:00
the_fiddler
01345de5bc Added loading code for OpenCL entry points. 2009-08-11 20:16:28 +00:00
the_fiddler
0a2079e170 Removed hand-written OpenCL bindings in favor of generated ones. 2009-08-11 19:27:28 +00:00
the_fiddler
ff4af08d2c Generated OpenCL bindings with fixed function pointers. 2009-08-11 19:26:27 +00:00
the_fiddler
38a4011200 Added generated bindings for OpenCL 1.0. 2009-08-11 14:21:35 +00:00
the_fiddler
a906a70146 Merged fix for issue [#1074]: " X11XrandrDisplayDevice on Xming ---> Argument is out of range." from 0.9.8 branch. 2009-08-10 11:36:26 +00:00
the_fiddler
fbab14bb7a Merged fix for issue [#1089]: "TextPrinter is affected by TextureGen* and TextureEnvMode" from 0.9.8 branch. 2009-08-09 18:54:35 +00:00
the_fiddler
3f009dc723 Moved AutoGeneratedAttribute to root namespace (it is now used by more than just OpenTK.Graphics). 2009-08-09 17:55:11 +00:00
the_fiddler
d177be4b19 Fixed out ErrorCode parameters in OpenTK.Compute.CL.CreateBuffer and CreateImage2D[23]D methods. 2009-08-09 14:29:17 +00:00
the_fiddler
461e300c3b Fixed out ErrorCode parameters in OpenTK.Compute.CL.CreateKernel method. 2009-08-09 14:23:13 +00:00
the_fiddler
e4f3fcb55e Fixed out ErrorCode parameters in OpenTK.Compute.CL.CreateProgram* methods. 2009-08-09 14:20:49 +00:00
the_fiddler
5408787be8 Updated version information. 2009-08-04 10:01:33 +00:00
the_fiddler
d2ed387c67 Merged improved XRandR handling from 0.9.8 branch. 2009-08-04 09:35:31 +00:00
the_fiddler
58e58e8885 Implemented CreateKeyboardDriver (currently disabled). 2009-08-04 08:49:15 +00:00
the_fiddler
ec24c5022f Added GetState() method for primary keyboard. 2009-08-04 08:47:53 +00:00
the_fiddler
28a3efa23c Merged OpenGL 3.2 bindings. Fixed a conflict between the new ProgramParameter method and the existing ProgramParameter enum in GLHelper.cs. 2009-08-03 23:16:10 +00:00
the_fiddler
276675fd9c Merged fix for bug [#1060]: "Wrong XML Comment on the W property in Vector4[d]". 2009-08-01 14:24:47 +00:00
the_fiddler
503d86267a Marked all IPlatformFactory interface implementations as virtual. 2009-07-24 21:52:01 +00:00
the_fiddler
aff44002b1 Added new EglWindowInfo constructor.
Added missing license information.
2009-07-24 21:51:06 +00:00
the_fiddler
e0c88b92e6 Initial implementation. 2009-07-24 21:50:21 +00:00
the_fiddler
e7fd9eb296 Implemented IDisposable pattern. 2009-07-24 21:19:42 +00:00
the_fiddler
f031e34ecf Initial implementation. 2009-07-24 21:13:46 +00:00