Commit graph

4490 commits

Author SHA1 Message Date
Stefanos A.
3398902940 Use Wgl.Import.GetCurrentContext DllImport directly
Wgl is implemented using the regular DllImport + delegate approach, in
order to support extensions. The delegates have not been armed at this
point, so we need to use the DllImport directly.

The whole wgl API should be revisited (we are using only a tiny
portion.)
2013-09-27 18:55:38 +02:00
Stefanos A
0fdef8eb23 Merge remote-tracking branch 'origin/master' into sdl2 2013-09-27 15:20:45 +02:00
Stefanos A.
cf703aca62 Added app.manifest to OpenTK.Examples project
The file had been added to the source tree, but was missing from the
OpenTK.Examples project configuration, causing hi-dpi mode to fail on
the examples window.
2013-09-27 15:19:21 +02:00
thefiddler
6d0b5eb49f Implemented SDL2 platform using sdl2-cs
This is a new platform that can be used then sdl2 is installed on the target system. SDL2 is commercially supported by Valve and provides better support for MacOS compared to our current implementation (Cocoa vs Carbon). It will also help us introduce faster support for new platforms. Existing platforms remain as a fallback and will be automatically used if sdl2 is not installed.

Please note that this is still a work in progress. The new mouse and keyboard API is not supported yet. Due to limitations of sdl2, multiple mice/keyboards are also not supported.
2013-09-27 14:41:37 +02:00
thefiddler
89845d5ff9 Integrated sdl2-cs bindings for sdl2
This is using the sdl2/pure branch of https://github.com/thefiddler/SDL2-CS.git which contains the SDL2 bindings without MiniTK.
2013-09-27 14:33:52 +02:00
thefiddler
3989b94e68 Merge commit 'ed45dddb98c8250a33505c953b6c60bf7a854ffb' as 'Source/OpenTK/Platform/SDL2/sdl2-cs' 2013-09-27 14:26:50 +02:00
thefiddler
77d124d7e8 Made OpenTK.Examples high-dpi aware
Added application manifest with the necessary key to mark
OpenTK.Examples as high-dpi aware. This improves application
appearance when DPI scaling is enabled.
2013-09-26 01:38:27 +02:00
thefiddler
2e1bcaf280 Added support for high-dpi mode on Windows.
The platform factory for windows now calls SetProcessDPIAware
in order to enable support for high-dpi modes. The relevant
DllImport has been added to API.cs
2013-09-26 01:35:59 +02:00
thefiddler
c7e04c6097 Merge remote-tracking branch 'andy/master' 2013-09-26 01:28:58 +02:00
Neil White
fc1a8e022b Fix for setting Matrix/Vector values by Index
Many Matrix*/Vector* implementations were throwing
IndexOutOfBoundsException when you tried to set their values via their
indexer due to a missing else statement.
2013-09-24 15:46:34 +01:00
David Jeske
cce40d60b0 fix MacOS bug mapping modifier keys to the scancode array 2013-08-10 19:50:05 -07:00
David Jeske
2c29df6296 added support for smooth trackpad scrolling on macos 2013-08-09 23:20:49 -07:00
Robert Rouhani
5c66266933 Added Quaterniond version of FromMatrix 2013-07-18 13:14:30 -07:00
Robert Rouhani
d479e3768b Added Quaternion.FromMatrix
Added a Diagonal and Trace property to all matrices
Added missing doc comments in the matrix classes to reduce the number of compiler warnings
2013-07-18 12:58:43 -07:00
Andy Korth
f38e717601 Fix for github issue 13, terrible crash on Keyboard GetState 2013-06-04 16:02:37 -05:00
zastrowm
e7ba5e789f Update whitespace issues to conform to the rest of the document 2013-04-26 21:09:12 -05:00
zastrowm
5f336dd9f9 Change WinRawMouse.ProcessMouseEvents to call code directly instead of using lambdas
Change WinRawMouse.ProcessMouseEvents to call code directly instead of using lambdas.  The lambdas caused memory allocations and were unneeded
2013-04-26 21:06:08 -05:00
Andy Korth
29c7d96420 Merge pull request #10 from Artfunkel/master
Matrix ExtractScale() bug fix and "Clear" methods
2013-04-15 07:52:49 -07:00
Tom Edwards
b38c81a458 Added Matrix clearing methods
- Added ClearTranslation(), ClearScale(), ClearRotation() and
ClearProjection()
- Added ExtractProjection() to Matrix4
- Fixed ExtractScale() giving incorrect results if a Matrix4 contained
projection data
- Added setters to Matrix4d's Column properties
2013-04-11 22:23:43 +01:00
Dean Ellis
9a39949249 Merge pull request #1 from elisee/fix-client-rectangle-setter
Fix ClientRectangle setter on Windows (WinGL) & Linux (X11)
2013-03-22 16:29:36 -05:00
Tom Edwards
ca7e2c9c4b Copied Matrix4 changes to other classes
* Removed  pointless LengthSquared check from ExtractRotation()
* Improved inline documentation
2013-03-20 12:44:12 +00:00
Tom Edwards
498b659d58 Changes suggested by Rob Rouhani
* Turned the new Matrix4 properties into methods
* Matrix4.Normalize() now behaves correctly. ExtractRotation() does its
own row normalisation.
2013-03-19 15:28:31 +00:00
Tom Edwards
b20b21d228 A couple more maths functions 2013-02-23 18:26:34 +00:00
Tom Edwards
11114ca4ea Extra maths features
- Added TranslationPart, ScalePart and RotationPart properties to
Matrix4
- Added Normalized() to Vector2/3/4, Quaternion and Matrix
2013-02-18 18:46:26 +00:00
Tom Edwards
6c35e8ef24 Merge remote-tracking branch 'origin/ScanCodeKeyboardBranch' 2013-02-17 14:58:16 +00:00
Andy Korth
ebb56e9d77 minor notes in comments of Matrix classes 2013-01-31 09:58:49 -06:00
Robert Rouhani
920d683954 Merge branch 'master' of github.com:andykorth/opentk
Conflicts:
	Source/OpenTK/Math/Matrix3.cs
	Source/OpenTK/Math/Matrix3d.cs
2013-01-26 16:29:23 -05:00
Robert Rouhani
8a7f506529 Added GL.UniformMatrix* double overloads. 2013-01-26 16:23:40 -05:00
Robert Rouhani
2f9ccbc3af Converted tabs to spaces. 2013-01-26 16:08:34 -05:00
Robert Rouhani
2cbff7261a Copied float matrix classes to their double equivalents. 2013-01-26 14:06:16 -05:00
Robert Rouhani
94c7ad4f58 Implemented Matrix3(d) constructor that takes upper-left 3x3 of a Matrix4(d) as discussed in the following issue: https://github.com/andykorth/opentk/issues/4 2013-01-26 12:57:19 -05:00
Jacob Hauberg Hansen
af74d97903 Fix NullPointerException on Windows 8. 2013-01-26 14:27:26 +01:00
Andy Korth
0f64af130a Committing artfunkel patch for scan codes 2013-01-24 15:48:01 -06:00
Tamme Schichler
f455176d2b Added missing XML comments for Matrix3d 2013-01-24 01:53:40 +01:00
Tamme Schichler
56430c7751 Added missing XML comments for Matrix3d
Fixed a few small issues in XML comments for Matrix4d

--HG--
extra : rebase_source : 18595a2fc57dcf7ff0f61d699e092be036d65157
2013-01-24 01:28:53 +01:00
Tamme Schichler
f0a9afacce Fixed a few warnings with XML comments 2013-01-24 01:26:33 +01:00
Robert Rouhani
31ba0a36b9 Matrix4x2 implementation and documenting the other matrix classes. 2013-01-20 16:38:25 -05:00
Robert Rouhani
df78210bc5 Matrix3x2 implementation and partial Matrix4x2 implementation. 2013-01-20 00:46:47 -08:00
Robert Rouhani
f10af59c14 Matrix2x3 and Matrix2x4 implementatinos 2013-01-19 23:58:30 -08:00
Robert Rouhani
5438f941dc More work on matrices.
Fixed some static fields in the math classes that weren't also readonly.
2013-01-19 15:06:51 -08:00
Robert Rouhani
84a03e965c Matrix2 implementation
Started on Matrix2x3 implementation
Minor changes to Matrix3 and Matrix4
2013-01-19 00:29:22 -08:00
Robert Rouhani
8b8ded3232 Added very basic implementations of all possible matrix sizes up to 4x4
Moved the indexers out of the Properties region and into their own Indexers region
2013-01-18 19:21:24 -08:00
Robert Rouhani
e5adf4d862 Added Matrix4x3 and Matrix3x4 implementations from our game. 2013-01-18 15:32:09 -08:00
Robert Rouhani
afefc93fc6 Fixed bug in Matrix4.LookAt. 2013-01-18 15:13:36 -08:00
Andy Korth
2a0ad3ef6f A few minor comments 2013-01-17 14:45:57 -06:00
Robert Rouhani
3a9dfc62ad Fixed extra endregion directive that prevented compilation.
Fixed some warnings about csproj files.
2013-01-16 22:11:18 -08:00
Robert Rouhani
1712057977 Removed swizzles that had duplicate components. 2013-01-16 19:21:54 -08:00
Robert Rouhani
c0fcbb6961 Fixed spacing of #endregion directives from merging 2013-01-16 18:53:59 -08:00
Robert Rouhani
bf1401e115 Fixed the issues caused by merging in our changes as patches from the old repo. 2013-01-16 18:08:03 -08:00
Robert Rouhani
59c652aaf8 Added all swizzle permutations up to the vector's dimension. 2013-01-16 18:01:07 -08:00