Commit graph

7177 commits

Author SHA1 Message Date
Jarl Gullberg d3f5a87809
Override context creation in GLArea.
This allows forward compatible and debug contexts to be created, and
provides more descriptive exceptions in the case where the context
cannot be created with the requested settings.
2017-10-01 20:11:58 +02:00
Jarl Gullberg b1f90c380e
Add builtin frame time measurement.
GLArea automatically synchronizes to GDK's refresh rate, which may lead
to incorrect frame time measurements if it's not correctly measured.

This property is guaranteed to always contain the actual live frame
delta of the previous frame in render functions.
2017-10-01 20:06:50 +02:00
Jarl Gullberg 29863f13da
Removed redundant WindowInfo initializer. 2017-09-16 16:20:00 +02:00
Jarl Gullberg 5df8f47d18
Bump AppVeyor image to 2017 to support C# 7.0 language features 2017-09-15 18:33:31 +02:00
Jarl Gullberg 82f0d4a5fd
Add InternalsVisibleTo override in build script. 2017-09-15 18:14:32 +02:00
Jarl Gullberg 67a9669917
Bump language version to 7.0. 2017-09-15 16:57:46 +02:00
Jarl Gullberg e6e2764c55
Add explanatory comment. 2017-09-15 12:57:28 +02:00
Jarl Gullberg 4089de86a5
Remove redundant MakeCurrent call. 2017-09-15 12:44:47 +02:00
Jarl Gullberg eb317df44c
Use GLArea MakeCurrent method in disposal as well. 2017-09-15 12:42:57 +02:00
Jarl Gullberg ed126403b3
Use GLArea MakeCurrent method. 2017-09-15 12:42:28 +02:00
Jarl Gullberg 9dd03dd769
Remove redundant SwapBuffers call, the base OnDrawn already does this. 2017-09-15 12:41:36 +02:00
Jarl Gullberg 6d4bb30596
Remove redundant MakeCurrent call, the base OnDrawn already does this. 2017-09-15 12:41:23 +02:00
Jarl Gullberg e9f27ff630
Remove duplicate RenderFrame event (GLArea has one already). 2017-09-15 12:40:21 +02:00
Jarl Gullberg 6a40207b9f
Remove properties that are no longer relevant or used. 2017-09-15 12:39:47 +02:00
Jarl Gullberg 649cce05f7
Remove manual visual selection from the X11 initialization. 2017-09-15 12:38:49 +02:00
Jarl Gullberg e879b73145
Add buffer flag selection. 2017-09-15 12:37:28 +02:00
Jarl Gullberg c485327da5
Remove GLVersion properties, and use the underlying GLArea implementation. 2017-09-15 11:52:50 +02:00
Jarl Gullberg 456d7cde37
Initialize an OpenTK::GraphicsContext from the foreign GDK context. 2017-09-15 11:51:11 +02:00
Jarl Gullberg d677aef6c3
Inherit from GLArea instead of DrawingArea. 2017-09-15 11:21:22 +02:00
Jarl Gullberg d4112a6e95
Add OpenTK.GLWidget as a friend assembly, allowing it to access internals. 2017-09-15 11:21:10 +02:00
varon 9215744415 Merge pull request #650 from Frassle/half
Add some tests for the Half type
2017-09-13 12:19:48 +02:00
Fraser Waters 05abff631a Add some tests for the Half type 2017-09-10 19:39:47 +01:00
varon 077d7c7098 Merge pull request #634 from Frassle/utf8
Change BindingBase to use UTF8, not ASCII, strings
2017-09-03 11:29:55 +02:00
varon f3044c259a Merge pull request #627 from Nihlus/rewrite-new-1-better-options
Simplify option parsing for Generator.Rewrite
2017-09-03 11:28:09 +02:00
varon a9f6b2c38c Merge pull request #631 from Frassle/prtemplate
Add a pull request template
2017-09-03 01:20:38 +02:00
varon d9f8120f0d Merge pull request #645 from winterhell/develop
Prevent crash when XInput is not present
2017-09-03 01:19:27 +02:00
varon 11c24a80d9 Merge pull request #644 from Frassle/rewriteexception
Add BindingsNotRewrittenException
2017-09-02 10:18:26 +02:00
Rosen Iliev 33ed6727bf Update XInputJoystick.cs
Debug message for programmers
2017-08-31 10:47:56 +03:00
Rosen Iliev 8e5faec07c Prevent crash when XInput is not present
Now returns from the function instead of throwing an exception
2017-08-30 18:10:56 +03:00
Fraser Waters 96ef07b229 Merge pull request #643 from Frassle/outoptimize
Optimize assignment to vector math out parameters
2017-08-30 13:13:42 +01:00
Fraser Waters 6cbaeee54a Replace manually written code using NotImplementedException with BindingsNotRewrittenException 2017-08-28 17:14:21 +01:00
Fraser Waters 7ae39813f3 Rerun Bind.exe 2017-08-28 17:10:06 +01:00
Fraser Waters 741a4cfaac Change binding generator to emit BindingsNotRewrittenException rather than NotImplementedException 2017-08-28 17:09:43 +01:00
Fraser Waters 51a7f0abdb Add BindingsNotRewrittenException 2017-08-28 17:09:18 +01:00
Jarl Gullberg 947162ce6c
Correct altered logic. 2017-08-28 17:01:05 +02:00
Jarl Gullberg 6eb77be281
Correct odd line breaks and remove duplicate debug option. 2017-08-28 16:58:44 +02:00
Jarl Gullberg d7a6c0f3bd
Use 'a' instead of 'i' for the short assembly option. 2017-08-28 16:57:49 +02:00
Fraser Waters 4a31379f92 Add remarks about not reusing the same variable to ref/out methods 2017-08-28 15:52:04 +01:00
Fraser Waters b1e30393a1 Optimize assignment to vector math out parameters
See #500 for more details.

Instead of using the pattern:
        result = new Vector(x, y, z)
Which would allocate and copy a vector instance, instead assign the fields
directly:
        result.X = x;
        result.Y = y;
        result.Z = z;
This should be a small improvment in performance.
2017-08-27 16:13:32 +01:00
Fraser Waters 6d3458d3ff Add a pull request template
Based on one from ArasP:
http://aras-p.info/blog/2017/05/07/Users-POV-and-Empathy/
2017-08-27 09:25:42 +01:00
Fraser Waters a498da9448 Fix mscorlib 4.0.0.0 reference added by Rewrite.exe 2017-08-26 22:17:04 +01:00
Fraser Waters fd4871aa87 Fix style errors in iPhoneOS project 2017-08-26 13:43:22 +01:00
Fraser Waters ee7f578253 Merge pull request #637 from VPeruS/macos-refresh-rate
Fix DisplayDevice.RefreshRate being 0 for some monitors on MacOS.

Use CoreVideo CVDisplayLink to get correct display refresh rate. Previous implementation can sometimes return 0 according to https://developer.apple.com/documentation/coregraphics/1454661-cgdisplaymodegetrefreshrate.
2017-08-26 12:49:52 +01:00
Fraser Waters 7b0f9adb0c Add build status to README 2017-08-22 13:20:45 +01:00
Fraser Waters ef9d07fcb5 Revert GLWidget back to 4.5 framework due to gtk3 dependency 2017-08-22 13:04:36 +01:00
Fraser Waters 1106a9ab07 Revert GLControl and GLWidget to target 2.0 framework 2017-08-22 11:54:02 +01:00
Jarl Gullberg 975dfc32c7
Correct target command line arguments. 2017-08-19 18:26:34 +02:00
Jarl Gullberg c0060bc681
Update options to the new v2 API. 2017-08-19 18:26:33 +02:00
Jarl Gullberg 3919e5f14f
Updated calls to Rewrite in the OpenTK project. 2017-08-19 18:26:33 +02:00
Jarl Gullberg 4184e6a10e
Inverted unclear check and changed it check the dllimport option directly. 2017-08-19 18:26:33 +02:00