Commit graph

288 commits

Author SHA1 Message Date
the_fiddler
5c40ce638d Fixed a large amount of documentation warnings.
Marked several APIs as obsolete.
2009-06-04 11:22:20 +00:00
the_fiddler
972cdcdae1 Updated documentation for IGraphicsContext.ErrorChecking. 2009-06-04 10:37:40 +00:00
the_fiddler
efdaf64476 GraphicsContext.GetCurrentContext now returns an IGraphicsContext instead of a GraphicsContext.
Fixed Texture2D finalizer.
Removed GraphicsContext.[Enter|Exit]BeginRegion(). GL.Begin|End now calls IGraphicsContext.ErrorChecking = false.
2009-06-04 10:34:12 +00:00
the_fiddler
7df9a448d6 Merged gw-next2 branch to trunk. 2009-06-02 15:49:39 +00:00
the_fiddler
89f34c9e49 Fixed Stencil property in ToString(). 2009-06-01 11:04:37 +00:00
the_fiddler
9ba8566b39 Do not set the "indexed" flag for 0 bpp. 2009-06-01 11:04:10 +00:00
the_fiddler
c0f9f057f3 Merged Get(Float|Double|Integer) and Viewport helpers from gw-next2. 2009-05-31 15:54:17 +00:00
the_fiddler
76641d46d6 Added GraphicsContext.GetCurrentContextDelegate to IPlatformFactory.
Improved CreateDummyContext logic to detect and use the context handle of the current thread or a specified handle.
Removed GetCurrentContext() methods from platform-specific context implementations (everything now goes through the relevant IPlatformFactories).
2009-05-30 19:27:52 +00:00
the_fiddler
2b6928da66 Actually sort wrapper methods in GL.cs. 2009-05-30 15:28:52 +00:00
the_fiddler
8bafa218e6 Updated tokens for DrawBuffer() method. Fixes issue [#851]: "[OpenGL] DrawBuffer and DrawBuffers tokens" (http://www.opentk.com/node/851). 2009-05-29 16:52:48 +00:00
the_fiddler
9ed2bc59ba Corrected tokens for TexBuffer. Fixes issue [#749]: "ARB_texture_ buffer_object" (http://www.opentk.com/node/749). 2009-05-29 16:02:50 +00:00
the_fiddler
339348bb95 Merged the latest specs from opengl.org.
Replaced all instances of Version14, Version15, Version20, Version30 and Version31 enums by type-safe equivalents.
Added gloverrides.xml to support overrides to function parameters / return types. This will make future spec updates easier to merge.
Improved handling of invalid tokens in the specs.
Bindings are now written in alphabetical order. This will reduce patch size for future updates and make side-by-side comparisons easier to perform.
2009-05-29 15:57:01 +00:00
the_fiddler
deadbdf6cb Merged TextPrinter optimization changes from gw-next2 branch. 2009-05-27 18:40:29 +00:00
the_fiddler
11fbdbf403 Removed ambiguous OpenGL overloads, because they confuse languages that don't distinguish between pass-by-reference and pass-by-value in the call-site (e.g. VB.Net). This affects functions that can take a single parameter either by reference or by value. 2009-05-21 23:34:20 +00:00
the_fiddler
083478e8a5 Added ColorAttachment[0-15] tokens to DrawBuffersEnum (page 182 of the 3.1 specs). 2009-05-11 13:20:35 +00:00
the_fiddler
12f2e51e11 Cleaned up tokens for SGI_color_table (promoted by OpenGL 1.2). Fixes bug [#834] "Problem between GL.ColorTable and Version12 enum" (http://www.opentk.com/node/834),
Started implementing tokens for EXT_convolution.
2009-05-06 18:40:36 +00:00
the_fiddler
222bded7ff The generator now detects and adds the FlagsAttribute to bitwise collections. Fixes bug [#792] "Resharper - Bitwise operation on enum which is not marked by [Flags] attribute" (http://www.opentk.com/node/792). 2009-05-05 21:00:48 +00:00
the_fiddler
03aeb850d2 Added non-EXT EXT_blend_color constants to BlendingFactorDest/Src enums (promoted by GL1.2).
Added ARB_fragment_shaderFragmentShaderDerivativeHint to HintTarget enum (promoted by GL2.0).
Fixes bug [#774]: "Some Token corrections" (http://www.opentk.com/node/774)
2009-05-05 20:24:09 +00:00
the_fiddler
1d80794d6b Fixed UniformMatrix4(..., ref Matrix4) overload (count should be 1). 2009-04-29 13:00:27 +00:00
the_fiddler
51c583b1c4 Fixed Uniform2[234] overloads for Vector[234]. 2009-04-29 11:02:45 +00:00
the_fiddler
3c9ccedc9d Automatic OpenGL error checking now throws an OpenGLErrorException. This is internal, as it should not be caught by the user.
Added Color4 overload to GL.Uniform4.
2009-04-28 17:38:08 +00:00
the_fiddler
ce6dc6870f Disabled printing of available resolutions and extensions in debug builds. 2009-04-20 06:58:39 +00:00
the_fiddler
157ac7b3e2 Fixed issue http://www.opentk.com/node/794 (suppress array overloads for functions that receive/return pointers to single elements). 2009-04-15 13:14:41 +00:00
the_fiddler
c882d7ee18 Fixed Uniform[234] overloads for Vector[234] (they were all named Uniform2).
Removed 'count' parameter from UniformMatrix4 overload for Matrix4 (it is always 16).
2009-04-12 19:59:12 +00:00
the_fiddler
8a0d494069 Updated OpenGL bindings: 'v' suffixes are now trimmed from all functions.
Added Matrix4 and Vector* overloads to Uniform* methods.
2009-04-12 18:24:56 +00:00
the_fiddler
3f41f1eaf5 Added stack traces to automatic error checking.
Added GraphicsContext.ErrorChecking property to temporarily disable error checking if necessary.
Error checking is now added to all functions in debug mode (the generator would miss specific CLS-compliant overloads before).
2009-03-29 21:41:30 +00:00
the_fiddler
0888af5abf Updated tokens for EXT_transform_feedback (http://www.opentk.com/node/602). Updated tokens for ARB_uniform_ buffer_object (http://www.opentk.com/node/748). The generator no longer trims the 's' suffix from Varyings. 2009-03-29 19:26:57 +00:00
the_fiddler
e3a7d702ca Updated tokens for ARB_uniform_ buffer_object (Issue http://www.opentk.com/node/748).
Added tokens for GetIntegeri_v/GetBooleani_v.
2009-03-29 17:44:55 +00:00
the_fiddler
c2fa32829f Generator is now able to trim function suffixes similar to 'i_v' (first introduced in OpenGL 3.0). 2009-03-29 16:11:37 +00:00
the_fiddler
ca63c874a0 Updated tokens for NV_conditional_render. Issue http://www.opentk.com/node/597 2009-03-29 16:05:13 +00:00
the_fiddler
6243477580 Updated tokens for ARB_instanced_arrays (non-core). Issue http://www.opentk.com/node/590 2009-03-29 15:58:54 +00:00
the_fiddler
66713a7e03 Updated tokens for ARB_copy_buffer (issue http://www.opentk.com/node/747). 2009-03-29 15:47:09 +00:00
the_fiddler
417ff1acb2 Updated tokens for APPLE_flush_buffer_range (issue http://www.opentk.com/node/598). 2009-03-29 15:35:58 +00:00
the_fiddler
91951a0d8b Updated tokens for ARB_map_buffer_range (issue http://www.opentk.com/node/591). 2009-03-29 15:26:58 +00:00
the_fiddler
447ecb46f3 Updated tokens for EXT_texture_ shared_exponent (issue [#600]), EXT_packed_float (issue [#599]) and added new OpenGL 3.0 tokens to GetPName (major/minor version, num_extensions and context_flags) and GetStringi. 2009-03-29 15:19:53 +00:00
the_fiddler
4ee1108523 Updated tokens for EXT_gpu_shader4 (issue [#604]). 2009-03-29 14:49:28 +00:00
the_fiddler
cd9b0ff5c7 Updated tokens for ARB_vertex_array_object (issue [#595]). 2009-03-29 14:28:44 +00:00
the_fiddler
978ccdd6f5 Fixed '*Indexed' functions (they were wrapped as '*Indexe', with a missing 'd'). 2009-03-29 14:27:07 +00:00
the_fiddler
aa7c0e11af Updated tokens for ARB_half_float_vertex (issue [#589]). 2009-03-28 15:40:51 +00:00
the_fiddler
7dd8111bb1 Implemented the GL part of ARB_framebuffer_sRGB (issue [#587]) 2009-03-28 15:24:44 +00:00
the_fiddler
a2c1d83b04 Fixed Draw*Instanced (were missing the 'd' from Instanced). Bug [#586]. 2009-03-28 14:48:20 +00:00
the_fiddler
9330ec16fe Updated tokens for ARB_depth_buffer_float (issue [#585]) 2009-03-28 14:44:17 +00:00
the_fiddler
08885ac914 Initial OpenGL 3.1 support. 2009-03-28 11:04:18 +00:00
the_fiddler
d4aef922bc Fixed all known build warnings, apart from missing xml comments. 2009-03-25 21:53:12 +00:00
the_fiddler
a3f29ab963 Regenerated OpenGL bindings using the latest specs and generator. 2009-03-25 18:15:04 +00:00
the_fiddler
71f858fe35 Revert invalid change from previous commit (GraphicsMode now belongs to IGraphicsContext). 2009-03-25 18:05:52 +00:00
the_fiddler
fc103aa8ec Added automatic error checking for all OpenGL function calls (debug mode only). Begin()-End() regions are handled correctly. 2009-03-25 17:55:37 +00:00
the_fiddler
60665a76a4 *GraphicsContext.Assert() should throw GraphicsContextMissing exception. 2009-03-23 11:42:17 +00:00
the_fiddler
c7adcbb79b Moved GraphicsMode to IGraphicsContext as it is universally useful.
Implemented GraphicsMode property on X11 and Mac OS X.
Replaced tabs with spaces in AglContext.cs.
2009-03-23 11:41:11 +00:00
the_fiddler
3c5fd61baa Bind now maps 'void*' to generics ('ref T', 'T[]', 'T[,]' and 'T[,,]') instead of 'object'.
The doc processor can now document more OpenGL functions (e.g. GL.Color3).
Cleaned up several pieces of code in Bind (but I'm afraid it's hopeless - spaghetti code at its greatest).
2009-03-21 21:44:07 +00:00
the_fiddler
e3ff29a068 Corrected the mapping of Byte/SByte wrappers -> entry points. Swapped CLSCompliant attribute between Byte and SByte (Bytes are, SBytes are not). 2009-03-08 22:00:13 +00:00
the_fiddler
c9e8d2f686 Fixed the mapping between unsigned and signed wrappers -> entry points (no unsigned <-> signed casting). Regenerated bindings. 2009-03-08 19:19:52 +00:00
the_fiddler
9112e7f11c Regenerated the bindings using the updated generator - equations are now correctly reported. 2009-03-08 18:38:17 +00:00
the_fiddler
f918720afd Added support for inline OpenGL documentation. 2009-03-08 00:46:58 +00:00
the_fiddler
4a2a223751 Added the capability to specify the desired OpenGL version and parameters (debug / forward-compatible context).
Added OpenGL 3.0 support for GLX contexts.
Added support for creating dummy contexts (useful if you are creating contexts from an external library).
Cleaned up unused and stale code.
2009-03-07 10:36:51 +00:00
the_fiddler
89bfdd4568 Implemented GL.SupportsFunction(MethodInfo). 2009-02-28 20:00:34 +00:00
the_fiddler
f84cc5678f Merged changes from gl3 branch.
Added [AutoGenerated] attribute to all bindings.
2009-02-28 19:30:48 +00:00
the_fiddler
69b17fa43f Normalize line endings and set the mime-type=text/plain and eol-style=native properties on all files. 2009-02-22 10:43:35 +00:00
kanato
c2fd0e5eb2 Merged in macos branch for Mac OS X support. 2009-02-20 18:57:57 +00:00
the_fiddler
5645133fc4 Fixed version strings in GL.SupportsExtension(). 2009-02-20 18:33:30 +00:00
the_fiddler
db690b144f Merged text branch and updated changelog. 2009-02-13 19:09:38 +00:00
the_fiddler
b04895cadb Fixed line endings. 2009-02-12 23:45:24 +00:00
the_fiddler
822a14ed2b Now uses String.Empty instead of "". 2009-02-12 23:43:30 +00:00
the_fiddler
6db13c3341 Applied rdrake's patch for LoadMatrix, etc Matrix4d helpers. 2009-01-31 08:40:11 +00:00
the_fiddler
561b90a0eb Added int overloads to [FogCoord|EdgeFlag|VertexAttrib]Pointer, to avoid issues with the object vs IntPtr overloads. 2009-01-29 00:37:08 +00:00
the_fiddler
4d98cf56fb Added int overloads to [Vertex|Normal|Index|Color]Pointer, to avoid issues with the object vs IntPtr overloads. 2009-01-29 00:26:52 +00:00
the_fiddler
66c05a0954 Made the Color4 structure serializable and added == and != operators. 2009-01-23 15:50:31 +00:00
the_fiddler
ae05d34df5 Added Color4 structure and overloads for Materialv/Lightv. 2009-01-23 15:24:57 +00:00
the_fiddler
dc38987559 Made GraphicsMode public, as it is generally useful. 2009-01-23 15:24:09 +00:00
the_fiddler
033d4722af Moved DummyGLContext and DummyGLControl to the OpenTK/Platform/Dummy directory and namespace.
Fixed a regression where the GLControl would try to instantiate a normal context inside the VS designer, instead of a dummy one.
2008-12-09 10:09:03 +00:00
the_fiddler
73de884ee7 Added Assert function for checking whether a GraphicsContext is exists in the calling thread. 2008-11-20 22:25:28 +00:00
the_fiddler
b61bf2e77d Added xml docs.
Added GraphicsContextMissingException for use when a GraphicsContext is expected but not found.
2008-11-20 22:24:11 +00:00
the_fiddler
3749cb0bb7 Added GenTexture and DeleteTexture helpers for single textures. 2008-11-20 22:23:08 +00:00
the_fiddler
61debfe8d2 Make GL.SupportsExtension ignore underscores.
Fixed GL_VERSION_1_1 support.
Added GL_VERSION_3_0.
2008-11-18 12:42:35 +00:00
the_fiddler
f154fb3ba9 Commented out an unused code block. 2008-07-10 21:13:01 +00:00
the_fiddler
39dbdb997c StencilFuncSeparate and BlendingFactorDest/Src fixes. 2008-07-10 15:14:04 +00:00
the_fiddler
26645b1cee Added System.Drawing.Rectangle and RectangleF overloads to GL.Rect. 2008-06-24 18:23:32 +00:00
the_fiddler
0790d58048 Renamed CreateFromCurrentContext to CreateFromCurrentThread. 2008-05-19 20:55:53 +00:00
the_fiddler
660d7bef57 Initial support for external contexts. 2008-05-19 20:54:44 +00:00
the_fiddler
c57b11662f Passing null to ChangeResolution will restore the original resolution. 2008-05-04 16:26:54 +00:00
the_fiddler
0d659c6e74 Modified the SelectResolution to never fail, even if the specified resolution is not supported. In this case, it will return the current resolution. 2008-05-04 16:25:00 +00:00
the_fiddler
cedb2394ff * GLHelper.cs: Added helpers for GetProgramInfoLog, VertexAttrib* and
MultiTexCoord*
2008-05-01 12:44:47 +00:00
the_fiddler
d4fb64261a Temporarily disabled full screen fade effect on resolution change. 2008-04-22 21:10:20 +00:00
the_fiddler
fef112ab46 Fixed a missing call to Debug.Unindent() during context construction. 2008-04-20 17:47:26 +00:00
the_fiddler
7fca6b3062 Fix line endings. 2008-04-20 11:14:10 +00:00
the_fiddler
fb13f49a85 Moved OpenTK.Graphics.OpenGL to OpenTK.Graphics. 2008-04-13 16:45:56 +00:00
the_fiddler
301ebcc0b7 Applied teichgraf's patch that adds LoadTransposeMatrix overloads, and makes LoadMatrix user ref Matrix4 instead. 2008-04-11 19:33:56 +00:00
the_fiddler
f4fe6912b2 Fixed TexEnvMode.Replace. 2008-04-11 18:19:07 +00:00
the_fiddler
84f117b3d3 Removed obsolete GetDisplayModes() function. 2008-04-04 21:08:09 +00:00
the_fiddler
76825a36c7 Updates to GameWindow shutdown and X11 locking behavior. 2008-03-26 19:43:57 +00:00
the_fiddler
f978762c04 Removed IGLContextCreationHack interface (no longer used). 2008-03-24 13:24:32 +00:00
the_fiddler
034d524a87 Use one display connection for all X11 communication. Seems to fix (not 100%) the crash problems encountered. 2008-03-24 13:12:02 +00:00
the_fiddler
7493aeb412 Debug message when creating default GraphicsMode. 2008-03-23 12:55:33 +00:00
the_fiddler
e295acdd37 Cache default display mode. 2008-03-23 12:51:41 +00:00
the_fiddler
d2ede50705 Renamed. 2008-03-03 12:46:58 +00:00
the_fiddler
4adcea8546 Initial commit. 2008-03-03 12:46:46 +00:00
the_fiddler
58e910d478 Initial commit. 2008-03-03 12:46:17 +00:00
the_fiddler
223c742648 Renamed ColorDepth to ColorFormat, to avoid class with System.Drawing.ColorDepth.
Update X11 stack to use System.Windows.Forms.XPlatUI for its Display, Screen and RootWindow.
Fixed mode setting for X11GLControl.
Fixed X11 shutdown (was generating X11 errors).
Added DeviceContext getter to WinWindowInfo.
Made IWindowInfo disposable.
Added documentation to many public methods.
Worked around a Mono 1.2.4 bug with Handle creation on Windows.Forms.Control.
Updated GL.BuildExtensionList to correctly parse GL_VERSION when in indirect rendering mode.
Fixed crash errors in X11GLContext.CreateContext and X11GraphicsMode.
Added a ref overload to Glx.ChooseVisual()
IGraphicsContext.MakeCurrent now takes an IWindowInfo parameter. This allows the user to change to window is context is bound to (untested).
Renamed XyzWindowInfo.Handle to XyzWindowInfo.WindowHandle.
2008-03-03 12:44:56 +00:00
the_fiddler
e477631ad7 Major update: fixed context construction on X11.
Fixed vsync on X11.
Updated GraphicsContext interface, for better extensibility. Some public functions were moved to IGraphicsContextInternal.
Renamed DisplayDevice.PrimaryDisplay to DisplayDevice.Default.
Updated and documented new GameWindow constructors.
Improved GameWindow.Exit, added GameWindow.ExitAsync() and improved error handling.
Improved GraphicsContext and NativeGLWindow APIs (construction in constructor).
Made ContextHandle public.
2008-03-01 13:15:31 +00:00
the_fiddler
c89abaee72 Renamed GraphicsFormat to GraphicsMode. 2008-02-28 15:28:40 +00:00
the_fiddler
09081803e4 Renamed file. 2008-02-28 15:26:51 +00:00
the_fiddler
7d6d34c686 Renamed GraphicsFormat to GraphicsMode. 2008-02-28 15:26:13 +00:00
the_fiddler
9abcb5d92e Updated to use new IWindowInfo interface.
Updated to use GraphicsFormat instead of DisplayMode.
Updated to use ColorDepth instead of ColorMode.
Improved GameWindow Exit handling, and handling of failed context creation.
Improved WinGLContext creation code, to allow for FSAA support in the future.
Fixed several shutdown bugs in WinGLContext and GraphicsContext.
Context creation no longer relies on IGLContextCreationHack.
X11GLContext is not working at the moment.
2008-02-28 13:57:07 +00:00
the_fiddler
ff5533e355 Initial commit. 2008-02-28 13:38:19 +00:00
the_fiddler
af638d4795 Fixed a few warnings.
Added [assembly: CLSCompliant(true)] attribute to GameWindow.cs
2008-02-02 13:39:23 +00:00
the_fiddler
4fe6d37770 Completed move of OpenTK.OpenGL to OpenTK.Graphics.OpenGL. 2008-02-02 00:58:26 +00:00
the_fiddler
f2d186070c Moved Glu to OpenTK.Graphics.OpenGL.Glu 2008-02-02 00:28:03 +00:00
the_fiddler
dd91c09685 Moved OpenGL bindings to OpenTK.Graphics.OpenGL from OpenTK.OpenGL.
Updated bindings with new FBO tokens.
2008-02-02 00:25:54 +00:00
the_fiddler
73591c128c Moved and renamed OpenTK.IGLContext to OpenTK.Graphics.IGraphicsContext. 2008-01-31 14:42:21 +00:00
the_fiddler
5b9991cba3 Moved and renamed OpenTK.GLContext to OpenTK.Graphics.GraphicsContext. 2008-01-31 14:39:54 +00:00
the_fiddler
210abb6ab6 Moved and renamed OpenTK.GLContext to OpenTK.Graphics.GraphicsContext. 2008-01-31 14:34:13 +00:00
the_fiddler
1f9d04cd9d Moved and renamed OpenTK.GLContext to OpenTK.Graphics.GraphicsContext. 2008-01-31 14:22:37 +00:00
the_fiddler
cf41a23fb1 Fixed error in X11 display. 2008-01-27 15:53:04 +00:00
the_fiddler
28d739c256 call Form.Update() on each fade effect step. 2008-01-27 14:29:15 +00:00
the_fiddler
2f6f12f935 Fixed test. Restored fade-out/fade-in effects. 2008-01-26 14:38:35 +00:00
the_fiddler
285887fc0d Debugging on linux. 2008-01-26 14:35:28 +00:00
the_fiddler
6f9deacc85 Added fadeout and fadein effect. 2008-01-26 14:02:58 +00:00
the_fiddler
6f07dd23f1 Set original_resolution to null after a successful call to RestoreResolution(). 2008-01-26 11:02:49 +00:00
the_fiddler
58ae48833c Changed IDisplayDeviceDriver.RestoreResolution method to IDisplayDeviceDriver.TryRestoreResolution.
DisplayDevice now correctly reports original resolution.
2008-01-26 11:01:20 +00:00
the_fiddler
643e28a8f8 Fix NRE in operator== and operator!= 2008-01-26 10:40:40 +00:00
the_fiddler
c0984b7741 Slightly improved debug string for each DisplayDevice. 2008-01-25 15:33:41 +00:00
the_fiddler
e9f177037e Removed a couple of debug messages. Now marks the current resolution among all available resolutions in debug mode. 2008-01-25 15:19:45 +00:00
the_fiddler
d7dc113238 Added equality and inequality operators. 2008-01-25 15:19:12 +00:00
the_fiddler
733a1dd272 Debug information now reports primary device. 2008-01-25 15:04:00 +00:00
the_fiddler
7087802fc8 Added some cool debugging information on available resolutions per device. 2008-01-25 14:32:09 +00:00
the_fiddler
fac2251a81 Refresh rate may be zero - updated exception string. 2008-01-25 13:11:46 +00:00
the_fiddler
9ccb301c04 Refresh rate may be zero. 2008-01-25 10:23:17 +00:00
the_fiddler
60138b2ff4 Lock in constructor for thread safety. 2008-01-25 10:20:25 +00:00
the_fiddler
96b38b95f4 Create X11/X11XrandrDisplayDevice on X11 platforms. 2008-01-25 10:01:46 +00:00
the_fiddler
37ad581088 Added platform detecion. 2008-01-24 21:20:59 +00:00
the_fiddler
c64efeb942 Refresh rate is now considered a match, if it is less than 1.0Hz away of the specified value. 2008-01-24 10:52:12 +00:00
the_fiddler
793744402e WinDisplayDevice is now multiple-monitor aware.
Added SelectResolution function to DisplayDevice.
Updated test to change settings on all available monitors.
2008-01-24 10:50:39 +00:00
the_fiddler
64571a09bd Added DisplayDevice, DisplayResolution, IDisplayDeviceDriver, GraphicsContextException and GraphicsModeException. 2008-01-24 09:13:50 +00:00
the_fiddler
9ba0a545ba Renamed Display to DisplayDevice. 2008-01-23 14:39:53 +00:00
the_fiddler
a022f7fd68 Renamed Display to DisplayDevice. 2008-01-23 14:39:27 +00:00
the_fiddler
4cbe2f26cc Workaround for unsupported BitsPerPixel property on Mono 1.2.6. 2008-01-23 14:32:03 +00:00
the_fiddler
18ec1d5ad5 Added checks against invalid arguments.
Made sealed.
2008-01-23 13:26:40 +00:00
the_fiddler
2dc209e5c3 Initial commit of Display support. 2008-01-23 12:44:32 +00:00