Commit graph

2103 commits

Author SHA1 Message Date
the_fiddler 73326138ee Avoid numeric overflow when printing debug message. 2010-10-28 08:42:20 +00:00
the_fiddler 20ecd2232d Implemented equality operators. 2010-10-28 08:41:48 +00:00
the_fiddler 22ae245306 Do not rebuild documentation file on each build. OpenTK.Compatibility is not developed anymore, so we can just cache the last documentation file to speed up builds significantly. 2010-10-28 08:14:39 +00:00
the_fiddler 821a8e1117 Always validate parameters to ReadBit/EnableBit/DisableBit before using them. 2010-10-28 08:14:28 +00:00
the_fiddler 76db3e188f Minor fixes for code clarity. 2010-10-28 08:13:42 +00:00
the_fiddler 7c78cc4205 Fixed ref overloads of GenSources and GenBuffers to follow the rest of the OpenTK design. Fixes invalid return values on x64 systems. 2010-10-28 08:12:24 +00:00
chrisbrandtner ceca4403ad Added anaglyph rendering example (for red/cyan glasses). 2010-10-27 16:28:38 +00:00
chrisbrandtner c9502aae54 Added OpenGL Diagnostics program, similar to OpenAL Diagnostics. 2010-10-24 14:29:27 +00:00
the_fiddler eb04d4996c Avoid using deprecated GLControl.GrabScreenshot() method. 2010-10-22 15:04:04 +00:00
the_fiddler 23b2cd74fd Suppressed unused field warnings. The code is like that on purpose. 2010-10-22 15:03:35 +00:00
the_fiddler 7c5d4fab58 Do not use deprecated methods. 2010-10-22 15:03:06 +00:00
the_fiddler 3c2c07361a Implemented raw keyboard input for Windows. Improved the interface for receiving input. Moved raw input window to its own thread. 2010-10-22 14:57:06 +00:00
the_fiddler ef6c910d30 Initial implementation of raw mouse input on Windows. 2010-10-22 13:41:42 +00:00
the_fiddler 687594db4c Fixed CursorVisible getter.
If necessary, re-grab the cursor whenever the window changes position/size.
2010-10-22 13:36:05 +00:00
the_fiddler 38f54630cb Implemented PointToScreen and fixed mouse grab rectangle to match the client rectangle exactly. 2010-10-22 13:22:28 +00:00
the_fiddler 6231931fcc Fixed text anti-aliasing on Windows. 2010-10-22 09:29:41 +00:00
the_fiddler b63db9329d Removed fixed expression that caused compilation error on VS2010 (but not Mono 2.6.7). 2010-10-22 08:16:37 +00:00
the_fiddler 4d2759eb78 * XI2Mouse.cs:
* X11Factory.cs: Detect whether XInput2 is not supported without
  throwing an exception.
2010-10-22 07:41:56 +00:00
the_fiddler eeefbd1a9c * Input/Mouse.cs:
* Platform/X11/X11Mouse.cs:
* Platform/X11/XI2Mouse.cs: Added internal list of mouse devices in
  preparation for multi-mouse support.
2010-10-21 14:53:10 +00:00
the_fiddler 4d66cf3070 * Test/GameWindowStates.cs: Added relative mouse motion indicator. Improved text antialiasing. Moved to GameWindow category. 2010-10-21 13:14:36 +00:00
the_fiddler da0e4f3887 * QuickStart.sln:
* Source/QuickStart/QuickStart.csproj: Added missing QuickStart
solution. Fixes issue [#2093]: "QuickStart.sln doesn't exist in
"latest version of OpenTK"".
2010-10-21 12:55:45 +00:00
the_fiddler 80ee257777 * OpenTK.csproj:
* Input/MouseState.cs:
* Platform/X11/Structs.cs:
* Platform/X11/XI2Mouse.cs:
* Platform/X11/Functions.cs:
* Platform/X11/X11Factory.cs: Added XInput2 driver for mice.
  Multi-mouse support pending.

* Platform/X11/X11Mouse.cs: Log the driver type for debugging
  purposes.
2010-10-21 12:32:00 +00:00
the_fiddler 23ad81d12b * Platform/X11/X11Keyboard.cs: Added index bounds check for
GetState.
2010-10-21 07:56:48 +00:00
the_fiddler 1a8f589f5c * OpenTK.csproj:
* Input/MouseState.cs:
* Input/ButtonState.cs:
* Platform/X11/X11Mouse.cs:
* Platform/X11/X11Factory.cs: Added initial implementation of
  OpenTK.Input.Mouse for X11.
2010-10-21 07:56:37 +00:00
the_fiddler 3c238a01f6 * X11Keyboard.cs: Do not allocate an X11WindowInfo unnecessarily. 2010-10-20 15:16:55 +00:00
the_fiddler 362a853664 * Input/MouseState.cs: Implemented MouseState structure. 2010-10-20 15:14:38 +00:00
the_fiddler ca30b85bad * Input/KeyboardState.cs: Fixed the amount of storage for keyboard
keys (the code would allocate one less int than necessary when
  "number of keys % 32" falls between 1 and 15).
Fixed the implementation of the Equals method to compare the two
  instances (instead of comparing this instance against itself).
2010-10-20 15:14:26 +00:00
the_fiddler 85c37f0600 * Source/OpenTK/Input/Mouse.cs:
* Source/OpenTK/Platform/Factory.cs:
* Source/OpenTK/Input/InputDriver.cs:
* Source/OpenTK/Input/IMouseDriver.cs:
* Source/OpenTK/Platform/X11/X11Input.cs:
* Source/OpenTK/Platform/X11/X11Factory.cs:
* Source/OpenTK/Platform/Windows/WMInput.cs:
* Source/OpenTK/Platform/IPlatformFactory.cs:
* Source/OpenTK/Platform/MacOS/CarbonInput.cs:
* Source/OpenTK/Platform/Windows/WinFactory.cs:
* Source/OpenTK/Platform/MacOS/MacOSFactory.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs:
* Source/OpenTK/Platform/Windows/WinRawMouse.cs:
* Source/OpenTK/Platform/Windows/WinRawInput.cs: Added new MouseDriver
  interface and added stub internal implementations.
2010-10-20 14:58:38 +00:00
the_fiddler 7e3182b1fc * Source/OpenTK/OpenTK.csproj:
* Source/OpenTK/Input/Keyboard.cs:
* Source/OpenTK/Input/InputDriver.cs:
* Source/OpenTK/Input/KeyboardState.cs:
* Source/OpenTK/Input/IKeyboardDriver.cs:
* Source/OpenTK/Platform/X11/X11Input.cs:
* Source/OpenTK/Platform/X11/Functions.cs:
* Source/OpenTK/Platform/X11/X11Factory.cs:
* Source/OpenTK/Platform/Windows/WMInput.cs:
* Source/OpenTK/Platform/X11/X11Keyboard.cs:
* Source/OpenTK/Platform/MacOS/CarbonInput.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs:
* Source/OpenTK/Platform/Windows/WinRawInput.cs:
* Source/OpenTK/Platform/Windows/WinRawKeyboard.cs: Added initial
  OpenTK.Input.Keyboard implementation for X11.
2010-10-20 14:33:23 +00:00
the_fiddler 33529aff63 * Source/OpenTK/Platform/X11/X11GLNative.cs: Confine pointer to
window when it becomes invisible.
2010-10-20 09:50:49 +00:00
the_fiddler 527cdf8622 * Source/OpenTK/Platform/X11/X11GLNative.cs: Refactored empty cursor
creation into its own function. Create one empty cursor for the
  lifetime of the window.
2010-10-20 09:19:34 +00:00
the_fiddler 63b35badee Take into account the fact that ShowCursor(true/false) calls are cumulative (we want boolean behavior instead). 2010-10-19 09:25:09 +00:00
the_fiddler f302a62fc1 Added initial code for mouse grabbing. Modified GameWindowStates to test this. 2010-10-19 09:20:59 +00:00
the_fiddler 9c524e0d52 * Source/OpenTK/Platform/MacOS/CarbonGLNative.cs: Removed unused
code.
2010-10-18 16:14:50 +00:00
the_fiddler 60a9af5939 * Source/OpenTK/Platform/Windows/API.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Implemented
  CursorVisible.
2010-10-18 16:14:38 +00:00
the_fiddler e1cf566c81 * Source/Examples/OpenTK/Test/GameWindowStates.cs: Handle
MouseButtonUp event to make mouse visible.
2010-10-18 15:48:32 +00:00
the_fiddler 1fc5e96a25 * Source/OpenTK/NativeWindow.cs:
* Source/OpenTK/INativeWindow.cs:
* Source/OpenTK/Platform/X11/API.cs:
* Source/OpenTK/Platform/X11/X11GLNative.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs:
* Source/OpenTK/Platform/MacOS/CarbonGLNative.cs:
* Source/Examples/OpenTK/Test/GameWindowStates.cs: Initial
  implementation of CursorVisible API. See issue [#1560].
2010-10-18 15:25:25 +00:00
the_fiddler 6f815689e7 Added UNSIGNED_INT to ActiveUniformType enum. Fixes issue [#2077]: "Add UnsignedInt to ActiveUniformType". 2010-10-13 20:42:58 +00:00
the_fiddler cf97ff84a9 Fixed issue [#2072]: "Box2 constructor bug". 2010-10-11 07:54:46 +00:00
the_fiddler 546decd579 Fixed code formatting. 2010-10-09 19:59:06 +00:00
the_fiddler 9516b56eb4 Avoid deprecated EnableClientState(EnableCap) in favor of EnableClientState(ArrayCap). 2010-10-09 19:56:33 +00:00
the_fiddler f2d418e3d1 Report Xinerama as not supported when it fails to detect any devices. Fixes issue on Nvidia drivers when Twinview is enabled. 2010-10-09 19:11:45 +00:00
the_fiddler dd41ed9610 Added XF86VM fallback when XRandR is missing (many thanks to jdomnitz!) 2010-10-09 19:10:39 +00:00
the_fiddler 42fdd873ff Set the correct, platform-specific GetCurrentContext implementation on startup. Ensures the correct function of dummy contexts. 2010-10-09 18:53:20 +00:00
the_fiddler 9775253051 Use current date as the 'readable' version (on installer/zip). 2010-10-06 16:53:53 +00:00
the_fiddler 4d44184dd9 Explicitly set assembly name and root namespace to "Build.UpdateVersion" in order to avoid conflicts with xbuild. 2010-10-06 15:17:29 +00:00
the_fiddler 2b9391f6c6 Use mono to invoke Build.UpdateVersion.exe on non-Windows systems. 2010-10-06 15:07:12 +00:00
the_fiddler 71199b0363 Replaced all custom tasks with built-in tasks, because custom tasks cause builds through Visual Studio to fail. This is a known issue since VS2005 (the dll containing custom tasks gets loaded into the devenv AppDomain and remains locked, meaning you have to exit Visual Studio before rebuilding the project). 2010-10-06 14:59:13 +00:00
the_fiddler 1cd8cfbc0f Converted into an actual commandline tool to avoid using custom tasks. 2010-10-06 14:56:11 +00:00
the_fiddler c0e883bb9a * Source/Build.Tasks/DateStamp.cs: Read/Write stamp from/to
Version.txt file. Allows a single stamp to be propagated throughout
  the build process.

* Source/Build.Tasks/GenerateAssemblyInfo.cs: Correctly invoke
  DateStamp task (need to call Execute() to generate the stamp).

* Source/Build.UpdateVersion/Build.UpdateVersion.csproj: Cleaned up
  'Rebuild' target.
Cleaned up 'GenerateAssemblyInfo' task invocation.
Attempted to generate GlobalAssemblyInfo.cs without using a custom
  task. Unfortunately, xbuild didn't wish to cooperate.
Remove Version.txt file to update the datestamp.
2010-10-06 08:47:01 +00:00
the_fiddler 2d0679d0c2 Reorganize code for clarity. 2010-10-05 20:52:28 +00:00
the_fiddler 333ea05d9e Do not check whether the path exists before deletion (an exception will be caught anyway). 2010-10-05 20:51:47 +00:00
the_fiddler 35eea33561 Log error message when a non-existent path is specified. 2010-10-05 20:38:44 +00:00
the_fiddler 146262f34e Really delete GlobalAssemblyInfo.cs this time. 2010-10-05 18:59:28 +00:00
the_fiddler a8c39875f3 Populate ImageList manually to avoid crash issue when cross-compiling from Mono. 2010-10-05 17:43:33 +00:00
the_fiddler 6a4c432d6b GlobalAssemblyInfo is autogenerated and should not be in version control. 2010-10-05 07:07:47 +00:00
the_fiddler 63e31e34b2 Consolidated DateStamp and AssemblyInfo generation. 2010-10-05 07:00:54 +00:00
the_fiddler 0bbc524cbe Use custom property to select correct Build.Tasks.dll directory. 2010-10-04 23:02:31 +00:00
the_fiddler 9d273cee7e All projects now read common AssemblyInfo items from GlobalAssemblyInfo.cs. The various AssemblyInfo.cs files now only contain project-specific information. Assembly versions are now controlled by Build.UpdateVersion. 2010-10-04 21:37:33 +00:00
the_fiddler 1ebb3e023a Added Build.UpdateVersion project which generates a global AssemblyInfo file that is reused throughout the solution (TBD). 2010-10-04 21:30:42 +00:00
the_fiddler 5bf9631f7b Added GenerateAssemblyInfo task that specifies common assembly properties to a global AssemblyInfo file.
Modify Build.Tasks.dll search path depending on the current configuration.
2010-10-04 21:25:31 +00:00
the_fiddler 6cfc2649bb Added license information. 2010-10-04 20:49:12 +00:00
the_fiddler 2d0b6340f4 Removed unused variable. 2010-10-04 14:52:29 +00:00
the_fiddler bb61dfe3f4 Added keyfile and strong-named all projects. 2010-10-04 14:39:42 +00:00
the_fiddler d169315719 Updated default ToolsVersion to 4.0. Fixes intermittent build issues and increases build performance significantly. It is still possible to build on the 3.5 toolset by passing the /tv:3.5 parameter to msbuild. 2010-10-04 13:49:08 +00:00
the_fiddler 6c2cf0e7fd Do not import OpenCL namespace if "EXPERIMENTAL" is not defined. 2010-10-04 08:40:57 +00:00
the_fiddler 4f1e320894 Deleted old build system. 2010-10-03 13:25:18 +00:00
the_fiddler 080729bad7 Disabled OpenCL bindings (#define EXPERIMENTAL in project options to re-enable). 2010-10-03 13:19:05 +00:00
the_fiddler 5f23fbc1f0 Removed app.config file that somehow made it into the csproj. 2010-10-03 12:38:19 +00:00
the_fiddler a4e82c0915 Added Generator.Bind and Generator.Convert projects.
Fixed msbuild compilation by removing the 3.5 bootstrap ItemGroups. (VS2010 added those on its own - hey, we are targeting v2.0 and we are not using ClickOnce!)
2010-10-03 12:30:39 +00:00
the_fiddler 3895b74a7e Made Nsis configuration identical to Release. Fixes build from windows terminal. 2010-10-03 09:31:40 +00:00
the_fiddler 91c6b571de Fixed incorrect output paths. 2010-10-03 09:25:52 +00:00
the_fiddler de1fa768c8 * Source/OpenTK/OpenTK.csproj:
* Source/Build.Tasks/Build.Tasks.csproj:
* Source/Examples/OpenTK.Examples.csproj:
* Source/GLControl/OpenTK.GLControl.csproj:
* Source/Compatibility/OpenTK.Compatibility.csproj: Ensure we are
using the 2.0 toolset to build. Fixes compilation errors on
MonoDevelop/xbuild.

* Documentation/Build.Docs.csproj: Use "." instead of
"$(MSBuildProjectDirectory)", because MonoDevelop/xbuild fails to
replace the latter with its value.
2010-10-02 23:21:58 +00:00
the_fiddler f2f2c05485 * Added project files for all projects.
* Modified Build.Docs project to respond to the "Documentation" configuration. Added Clean target.
2010-10-02 22:16:59 +00:00
the_fiddler dd257ee29d Added Build.Tasks project that contains custom MSBuild tasks for the compilation process:
- DateStamp, which generates a version number based on the current date.
- DelTree which mimics RemoveDir but can delete non-empty directories on xbuild 2.6.x (which only supports empty directories).
- Run which mimics Exec but also captures stderr/stdout.
2010-10-02 22:15:19 +00:00
the_fiddler 88e6aceae0 Synced trunk with 1.0 branch. 2010-10-02 18:52:34 +00:00
the_fiddler bca3751e8b Synced with 1.0 branch. 2010-03-11 22:53:11 +00:00
the_fiddler adcce2c00b Added explicit ActiveUniformParameter enum for GetActiveUniforms function. Fixes issue [#1443]: "GetActiveUniforms parameter name". 2010-02-03 20:43:42 +00:00
the_fiddler 0b3fa24c10 Added missing TEXTURE_LOD_BIAS token to TextureParameterName. Fixes issue [#1531]: "TextureParameterName enum missing TEXTURE_LOD_BIAS element". 2010-02-03 20:17:02 +00:00
the_fiddler da138163bf Backported fix for issue [#1538] from 1.0 branch. 2010-02-03 19:55:09 +00:00
the_fiddler 53b84d18d4 Backported bugfixes from 1.0 branch. 2010-02-03 19:04:42 +00:00
kanato 411f4bcc98 * Platform/MacOS/CarbonGLNative.cs: Fix width/height properties on Mac OS X. 2010-01-11 22:08:00 +00:00
the_fiddler 25339f3bee * Source/OpenTK/Compute/CL10/CL.cs:
* Source/OpenTK/Compute/CL10/Core.cs:
* Source/Bind/Specifications/csharp.tm:
* Source/OpenTK/Compute/CL10/Delegates.cs: cl_context_properties
  should be mapped to IntPtr, not int.
Modified CreateContext signature to return ErrorCode rather than plain
  int.

* Source/OpenTK/Compute/CL10/CLHelper.cs: Added helper overloads that
  convert ContextProperties enums into IntPtr internally.
2010-01-04 13:29:21 +00:00
the_fiddler 7fbecbd7bd CreateContext should return an ErrorCode, not an int. 2010-01-04 13:23:56 +00:00
the_fiddler da1ffa44f3 Regenerated bindings using the latest binding generator, which ensures consistent sorting order between consecutive runs. 2009-12-25 14:17:55 +00:00
the_fiddler d00cc6bd86 Merged GameWindow timing fixes and release documentation from branches/1.0. 2009-11-17 14:54:30 +00:00
the_fiddler 144e6b6947 Re-enabled CL10, ES10 and ES11 bindings in trunk. 2009-11-17 10:04:00 +00:00
the_fiddler 938e6349a7 Added BlittableValueType test from branches/1.0. 2009-11-17 10:00:52 +00:00
the_fiddler 77c4c2ee2d Merged fix for [#1386] from branches/1.0. 2009-11-17 09:59:36 +00:00
the_fiddler b5c747761d Merged fix for [#1098] from branches/1.0. 2009-11-17 09:33:14 +00:00
the_fiddler 97b3cd2e93 Type, Parameter, ParameterCollection and Function classes now implement IComparable directly (rather than casting to strings and comparing those).
Modified comparison order to place pointer overloads after reference or array overloads. Fixes issue [#1098]: "[Bind] Work around VS bug by ensuring pointer parameters are generated last".
2009-11-17 09:26:05 +00:00
the_fiddler 86b366edf2 Synced trunk with 1.0 branch. 2009-11-16 18:45:41 +00:00
the_fiddler 3aa67b84a3 Added strongly-typed tokens for GetActiveUniformBlock, which was introduced in OpenGL 3.1. Fixes issue [#1216]: "[GL] GetActiveUniformBlock* methods take ArbUniformBufferObject parameters". 2009-11-16 16:23:36 +00:00
the_fiddler 4e04838148 Added new OpenGL 3.1 tokens for ARB_texture_rectangle, ARB_shader_objects and EXT_gpu_shader4. Fixes issue [#1355]: "TextureRectangle tokens for ActiveUniformType". 2009-11-16 16:14:32 +00:00
the_fiddler 9d3c251c75 VertexAttribIPointer should take the integer subset (VertexAttribIPointerType) of VertexAttribPointerType. Fixes issue [#1166]: "VertexAttribIPointer pointer type parameter". 2009-11-16 15:13:57 +00:00
the_fiddler fa2cdee5ef Removed invalid BGRA token from VertexAttribPointerType. 2009-11-16 15:00:24 +00:00
the_fiddler b96aaabcae Made unix kernel detection less strict. The program is now allowed to run even the specific kernel name is unknown. Partly fixes issue [#1382]: "OpenTK and other Unix OS". 2009-11-16 14:28:37 +00:00
the_fiddler 9cb660bf85 Added new OpenGL 3.x tokens to GenerateMipmap. Fixes issue [#1162]: "GL.GenerateMipmap argument". 2009-11-16 14:15:56 +00:00
the_fiddler bbe606da53 Vector3(d).Cross: do not modify 'result' more than once to ensure that Cross(ref a, ref b, out a) works correctly.
Optimized vector-quaternion transform. Fixes issue [#1373]: "[Math] optimize Vector transform by Quaternion".
2009-11-16 13:23:04 +00:00
the_fiddler 0605607e6a Changed vector-quaternion transformations to use standard q * v * q^-1 convention. Fixes issue [#1372]: "[Math] Vector transformation by Quaternion follows non-standard quaternion math convention". 2009-11-16 13:00:42 +00:00