Stefanos A. [Mon, 28 Oct 2013 13:28:57 +0000 (14:28 +0100)]
More line ending troubles...
Stefanos A. [Mon, 28 Oct 2013 13:15:58 +0000 (14:15 +0100)]
Allow comparison of function elements
This allows us to store both enums and functions in the same tree.
Stefanos A. [Mon, 28 Oct 2013 13:15:17 +0000 (14:15 +0100)]
Stable sort and correct extension names
Use a stable sort for generated elements, in order to make the generated
file work better with version control. Extension names are now extracted
directly from function names - solves issues with functions that are
defined in multiple extensions.
Stefanos A [Mon, 28 Oct 2013 13:12:23 +0000 (14:12 +0100)]
Add apiname parameter to ISpecReader
This allows us to reuse the same ISpecReader implementation to parse
different APIs (GL and GLES).
Stefanos A. [Mon, 28 Oct 2013 13:11:16 +0000 (14:11 +0100)]
Re-added PixelInternalFormat
GL4.4 renamed PixelInternalFormat to InternalFormat. The missing tokens
are now re-added, since a lot of functions depend on them. Additionally,
a number of 'open' <use> elements now define a specific enum reference.
This is not necessary, but is good for documentation purposes.
Stefanos A. [Mon, 28 Oct 2013 13:08:55 +0000 (14:08 +0100)]
Sort tokens within an enum
This allows us to keep a specific ordering regardless of the token order
in the input file (much friendlier for source control!)
Stefanos A. [Mon, 28 Oct 2013 13:07:45 +0000 (14:07 +0100)]
Simplifed Constant.Reference resolution
Instead of recursing, we use a simple do..while loop to resolve the
transitive reference of a constant. If there is a loop at any point, we
stop and use a brute force search over all tokens. If this still fails
to resolve the reference, then we report this reference as unresolved.
Stefanos A. [Sun, 27 Oct 2013 22:47:52 +0000 (23:47 +0100)]
Multi-API support for XML spec parser
The XML spec parser now generates signatures for multiple APIs (gl,
glcore, gles1, gles2). Additionally, it supports per-token deprecation
attributes.
Stefanos A. [Sun, 27 Oct 2013 16:35:36 +0000 (17:35 +0100)]
Made IsFlagsCollection read-write
The decision whether an Enum is a flags collection is now made either by
the spec reader or the enum processor (not the Enum class itself.)
Stefanos A. [Sun, 27 Oct 2013 00:35:53 +0000 (02:35 +0200)]
Improve override lookup for extension functions.
Function overrides are now looked up in the following order: specific
name (e.g. ProgramParameteriARB), extensionless name (e.g.
ProgramParameteri) and generic mame (e.g. ProgramParameter). This
improves the override resolution for functions with multiple extension
forms (core, ext, arb, etc).
Stefanos A. [Sat, 26 Oct 2013 23:32:08 +0000 (01:32 +0200)]
Fixed the DebugProc signatures.
The various DebugProc* delegates now conform to their specifications.
Stefanos A. [Sat, 26 Oct 2013 23:31:20 +0000 (01:31 +0200)]
Regenerated using latest generator.
Stefanos A. [Sat, 26 Oct 2013 23:30:45 +0000 (01:30 +0200)]
Moved more transformations into the *Processor classes.
An EnumProcessor or FuncProcessor instance is now required in order to
call their Translate*() methods. A number of transformations that
relied on calling the static methods have now been moved inside the
processor classes.
Stefanos A [Sat, 26 Oct 2013 23:25:29 +0000 (01:25 +0200)]
Read extension list from xml spec; new acronyms.
Instead of hardcoding a list of extensions, extensions are now read
directly from the signatures.xml file. Acronyms for new texture
formats are now listed.
Stefanos A. [Sat, 26 Oct 2013 23:24:04 +0000 (01:24 +0200)]
Improved extension detection in .spec parser.
Instead of using a hardcoded list of extensions, the parser will now
use a regex to detect extension names. This gives better results on
new specs without manual editing.
Stefanos A. [Fri, 25 Oct 2013 22:07:49 +0000 (00:07 +0200)]
Functions are now categorized correctly according to their extensions.
Stefanos A. [Fri, 25 Oct 2013 22:07:00 +0000 (00:07 +0200)]
Fixed the parsing of extensions.
Stefanos A. [Fri, 25 Oct 2013 14:43:43 +0000 (16:43 +0200)]
MASK_COHERENT_BIT should be MAP_COHERENT_BIT
Stefanos A. [Fri, 25 Oct 2013 14:31:26 +0000 (16:31 +0200)]
Trim the final endline regardless of operating system.
Fixes differences between bindings generated on Windows and Linux/Mac.
Stefanos A. [Fri, 25 Oct 2013 14:30:50 +0000 (16:30 +0200)]
The last parameter of GL.ShaderSource should be an array.
Stefanos A. [Fri, 25 Oct 2013 14:30:20 +0000 (16:30 +0200)]
Fixed ShaderSource and VertexArrayFogCoordOffsetEXT parameters.
ShaderSource is supposed to accept an array of string lengths as the
last parameter. The count="1" statement in the registry is wrong.
GL.VertexArrayFogCoordOffsetEXT is supposed to receive a
FogPointerType.
Stefanos A. [Fri, 25 Oct 2013 14:10:51 +0000 (16:10 +0200)]
Corrected the values of the GL_NEXT_BUFFER_NV and
GL_SKIP_COMPONENTS_*_NV extensions.
Stefanos A. [Fri, 25 Oct 2013 06:57:33 +0000 (08:57 +0200)]
Check the existence of a Constant reference using the
Constant.Reference property, instead of the first character of
Constant.Value. Fixes values that are negative numbers.
Stefanos A. [Fri, 25 Oct 2013 06:55:12 +0000 (08:55 +0200)]
Strip struct and const identifiers from the output. This matches the
old .spec files.
Group attributes in parameters no longer overwrite the pointer order
or const-ness of the parameter.
Stefanos A. [Fri, 25 Oct 2013 06:52:34 +0000 (08:52 +0200)]
Allow spaces in pointer types (e.g. "GLchar * *").
Added todo for string->String translation that is overwritten
immediately.
Stefanos A. [Fri, 25 Oct 2013 06:48:24 +0000 (08:48 +0200)]
Fixed translation of GLchar** (should be string[], not string). Added
diagnostic message in case of higher-order pointer parameters that
will currently generate incorrect bindings.
Stefanos A. [Fri, 25 Oct 2013 06:47:17 +0000 (08:47 +0200)]
Added DEBUGPROCKHR for the KHR_debug extension. Added
CompressedTextureARB that is encountered in the new gl.xml registry.
Stefanos A. [Fri, 25 Oct 2013 06:45:02 +0000 (08:45 +0200)]
Fixed implementation of IsValue. Improved the handling of value
(number) parameters.
Stefanos A. [Thu, 24 Oct 2013 20:42:12 +0000 (22:42 +0200)]
Added support for overriding the element count of an array parameter.
Stefanos A. [Thu, 24 Oct 2013 18:56:28 +0000 (20:56 +0200)]
Improved grouping of enumerations. Fixed missing extension
enumerations.
Stefanos A [Thu, 24 Oct 2013 16:49:38 +0000 (18:49 +0200)]
Don't crash on non-numeric element counts.
Stefanos A. [Thu, 24 Oct 2013 16:46:58 +0000 (18:46 +0200)]
Improved diagnostic message in case of a circular definition.
Stefanos A. [Thu, 24 Oct 2013 16:42:52 +0000 (18:42 +0200)]
Return type should be defined in the "type" attribute of the returns
element.
Stefanos A. [Thu, 24 Oct 2013 16:41:09 +0000 (18:41 +0200)]
Tokens in "All" enum should have a name of "token" not "enum".
Stefanos A. [Thu, 24 Oct 2013 16:32:09 +0000 (18:32 +0200)]
Implemented translation of function attributes (api, category,
deprecated, extension, version).
Stefanos A. [Thu, 24 Oct 2013 15:19:52 +0000 (17:19 +0200)]
Initial implementation of new XML spec parser.
Stefanos A. [Thu, 24 Oct 2013 07:32:17 +0000 (09:32 +0200)]
Implemented Sdl2GraphicsMode..
Stefanos A [Thu, 24 Oct 2013 07:03:15 +0000 (09:03 +0200)]
Updated gl4 documentation according to latest manpages
Stefanos A [Thu, 24 Oct 2013 06:57:25 +0000 (08:57 +0200)]
Fixed ClearTex[Sub]Image <type> parameter
As per bug #1006 on the public Khronos bugzilla, <type> corresponds to the PixelType accepted by TexImage3D. This is now fixed.
Stefanos A [Thu, 24 Oct 2013 06:56:44 +0000 (08:56 +0200)]
Updated to SDL 2.0.1
Stefanos A. [Thu, 24 Oct 2013 00:02:35 +0000 (02:02 +0200)]
Removed sdl2-cs in favor of a leaner, better-designed binding.
Stefanos A [Wed, 23 Oct 2013 23:47:00 +0000 (01:47 +0200)]
Merge branch 'gl4' of https://github.com/thefiddler/opentk
Stefanos A [Wed, 23 Oct 2013 23:45:13 +0000 (01:45 +0200)]
Implemented new, leaner SDL2 binding.
The new binding is based on the SDL2.0.1 RC1 headers.
Stefanos A [Wed, 23 Oct 2013 18:19:16 +0000 (20:19 +0200)]
Updated documentation according to the latest GL4 manpages.
Stefanos A. [Wed, 23 Oct 2013 18:17:08 +0000 (20:17 +0200)]
Updated documentation according to the latest available manpages.
Stefanos A. [Wed, 23 Oct 2013 18:12:05 +0000 (20:12 +0200)]
Implemented "Debug Output" and "State and State Requests"
functionality according to the OpenGL 4.4 specification, sections 20
and 22.
Stefanos A. [Wed, 23 Oct 2013 16:54:34 +0000 (18:54 +0200)]
Implemented "Reading and Copying Pixels" functionality from the OpenGL
4.4 specification, sections 18.2 and 18.3.
Stefanos A. [Wed, 23 Oct 2013 09:43:11 +0000 (11:43 +0200)]
Implemented Whole Framebuffer commands according to the OpenGL 4.4
specification, section 17.4.
Stefanos A. [Wed, 23 Oct 2013 09:42:24 +0000 (11:42 +0200)]
Prefer overrides with exact name matches over generic name matches.
For instance, if we override both ClearBufferfi and ClearBuffer, then
ClearBuffer{i f ui}v will be overriden be ClearBuffer and
ClearBufferfi will be overriden by ClearBufferfi. This allows us to
specialize overrides when necessary.
Stefanos A. [Wed, 23 Oct 2013 08:49:29 +0000 (10:49 +0200)]
Implemented per-fragment operations according to the OpenGL 4.4
specification, section 17.
Stefanos A. [Wed, 23 Oct 2013 08:23:02 +0000 (10:23 +0200)]
Implemented Vertex Post-Processing according to the OpenGL 4.4
specification, section 13.
Stefanos A. [Wed, 23 Oct 2013 07:43:33 +0000 (09:43 +0200)]
Implemented Vertex Attributes according to the OpenGL 4.4
specification, section 11.
Stefanos A. [Wed, 23 Oct 2013 07:31:09 +0000 (09:31 +0200)]
Implemented Vertex Arrays accordign to the OpenGL 4.4 specification,
section 10.
Stefanos A. [Tue, 22 Oct 2013 19:10:14 +0000 (21:10 +0200)]
Fixed version number on VertexAttribP1 methods (should be 3.3, not
1.2).
Stefanos A. [Tue, 22 Oct 2013 19:09:18 +0000 (21:09 +0200)]
Allow version attribute in overrides.xml.
Stefanos A. [Tue, 22 Oct 2013 18:52:37 +0000 (20:52 +0200)]
Implemented strongly-typed Framebuffer and Renderbuffer Objects
according to the OpenGL 4.4 specification, section 9.
Stefanos A. [Tue, 22 Oct 2013 16:37:25 +0000 (18:37 +0200)]
Implemented strongly-typed Texture functions according to the OpenGL
4.4 specification, section 8. See issue #2.
Stefanos A. [Tue, 22 Oct 2013 15:19:19 +0000 (17:19 +0200)]
Added SGIX_texture_icc enumeration that has been removed by the
upstream specs. This silences a large amount of warnings caused by the
lack of this extension.
Stefanos A [Tue, 22 Oct 2013 15:03:39 +0000 (17:03 +0200)]
Merge branch 'master' into gl4
Stefanos A [Tue, 22 Oct 2013 15:03:16 +0000 (17:03 +0200)]
Line ending fix.
Stefanos A [Tue, 22 Oct 2013 14:58:33 +0000 (16:58 +0200)]
Merge branch 'master' of https://github.com/thefiddler/opentk
Stefanos A. [Tue, 22 Oct 2013 14:52:35 +0000 (16:52 +0200)]
Implemented strong-types for Shader and Program Objects according to
the OpenGL 4.4 specification, section 7.
Stefanos A. [Tue, 22 Oct 2013 12:40:49 +0000 (14:40 +0200)]
Updated strong-types for Buffer Objects according to the OpenGL 4.4
spec, section 6.
Stefanos A. [Tue, 22 Oct 2013 12:00:01 +0000 (14:00 +0200)]
Updated strong-types for asynchronous queries, query objects and time
queries according to OpenGL 4.4 spec, section 4.2.
Stefanos A. [Tue, 22 Oct 2013 11:41:31 +0000 (13:41 +0200)]
Array overloads with count=1 should be turned into ref/out parameters.
This fixes an issue where arrays with count=1 would remain as unsafe
pointers instead of becoming ref/out parameters.
Stefanos A. [Tue, 22 Oct 2013 11:22:22 +0000 (13:22 +0200)]
Updated to the latest 4.3 specs (WIP).
Stefanos A. [Tue, 22 Oct 2013 09:58:23 +0000 (11:58 +0200)]
Fixed exception while parsing the 4.3 specs.
This was caused by changes in the .spec file definitions between 4.1
and 4.3.
Stefanos A. [Tue, 22 Oct 2013 09:57:18 +0000 (11:57 +0200)]
Implemented compatibility overloads for the changes introduced by the
4.3 .spec files.
Added DebugProc definition required in the 4.3 specs.
Stefanos A. [Tue, 22 Oct 2013 09:56:08 +0000 (11:56 +0200)]
Updated to the latest 4.3 .spec files from the OpenGL registry.
Stefanos A. [Tue, 22 Oct 2013 09:40:41 +0000 (11:40 +0200)]
Added usage example.
Stefanos A. [Tue, 22 Oct 2013 09:39:50 +0000 (11:39 +0200)]
Updated to the latest gl.tm from Khronos public svn.
Stefanos A. [Tue, 22 Oct 2013 09:39:20 +0000 (11:39 +0200)]
Re-added BeginMode and PixelFormat enums which were removed by the
OpenGL spec.
Added strong types for sync and fence objects (4.4 core specification,
section 4.1).
Stefanos A. [Mon, 21 Oct 2013 19:43:05 +0000 (21:43 +0200)]
Added ConstCharPointer->string transformation in accordance to GL 4.3
specs.
Stefanos A. [Mon, 21 Oct 2013 19:42:09 +0000 (21:42 +0200)]
Added DebugProc delegate in accordance to GL 4.3 specs.
Stefanos A. [Mon, 21 Oct 2013 17:41:26 +0000 (19:41 +0200)]
Fixed crash on 32-bit machines
uint-to-intptr conversion must obey uint-to-int conversions on 32-bit
machines, otherwise an OverflowException may occur: conversions of
numbers over 2^31-1 must be declared as unchecked.
Fixes issue reported here: http://www.opentk.com/node/3418
thefiddler [Mon, 21 Oct 2013 16:28:01 +0000 (18:28 +0200)]
Initial work on new gl xml spec support.
thefiddler [Sat, 12 Oct 2013 17:43:26 +0000 (19:43 +0200)]
Added missing DllImport attribute.
Fixes thefiddler/opentk#1
Stefanos A [Sat, 12 Oct 2013 13:17:10 +0000 (15:17 +0200)]
Modify dllimport path on Android builds.
Stefanos A [Sat, 12 Oct 2013 13:16:05 +0000 (15:16 +0200)]
Fixed incorrect self-assignment statements
Stefanos A [Sat, 12 Oct 2013 03:15:46 +0000 (05:15 +0200)]
[DllImport] registry methods when the Microsoft.Win32 namespace is not
available (untested).
Stefanos A [Sat, 12 Oct 2013 03:14:51 +0000 (05:14 +0200)]
Fixed compilation on desktop platforms.
Stefanos A [Sat, 12 Oct 2013 03:08:27 +0000 (05:08 +0200)]
Added Xamarin.Android target
Stefanos A [Sat, 12 Oct 2013 03:07:46 +0000 (05:07 +0200)]
System.Drawing is required for Point, Size and Rectangle types.
Stefanos A [Sat, 12 Oct 2013 03:06:54 +0000 (05:06 +0200)]
Use OpenTK.Minimal to stub out missing System.Drawing functionality
when building on Android or iOS platforms.
Stefanos A [Sat, 12 Oct 2013 02:59:55 +0000 (04:59 +0200)]
Implemented minimal System.Drawing stubs for Xamarin.Android targets.
thefiddler [Fri, 11 Oct 2013 07:52:53 +0000 (09:52 +0200)]
Why does this file keep changing?
thefiddler [Fri, 11 Oct 2013 07:51:08 +0000 (09:51 +0200)]
Fixed Tilde and Number1 scancodes
thefiddler [Thu, 10 Oct 2013 23:58:54 +0000 (01:58 +0200)]
Normalized line endings
Hopefully this is the first and last time we have to do this.
thefiddler [Thu, 10 Oct 2013 23:57:45 +0000 (01:57 +0200)]
Update .gitattributes
Use automatic line ending conversion
Stefanos A [Thu, 10 Oct 2013 23:16:20 +0000 (01:16 +0200)]
Treate .pdf as binary files
Stefanos A [Thu, 10 Oct 2013 23:11:28 +0000 (01:11 +0200)]
Added line-ending conversions
Stefanos A [Thu, 10 Oct 2013 23:05:55 +0000 (01:05 +0200)]
Merge branch 'scancodes'
Conflicts:
Source/OpenTK/OpenTK.csproj
Source/OpenTK/Platform/Windows/WinFactory.cs
Stefanos A [Wed, 9 Oct 2013 22:34:15 +0000 (00:34 +0200)]
Always Set HIDPI flag
It does not to set this flag on previous SDL2 versions, it is ignored silently when not supported.
Stefanos A [Wed, 9 Oct 2013 22:18:59 +0000 (00:18 +0200)]
Fixed line endings
Stefanos A [Mon, 7 Oct 2013 11:17:42 +0000 (14:17 +0300)]
HIDPI support requires SDL > 2.0.0
SDL_GL_GetDrawableSize was introduced after 2.0.0, so we need to check for that version before we call this method. Fixes MethodNotFounException on vanilla libsdl2-2.0.0 on linux.
Stefanos A [Fri, 4 Oct 2013 15:04:35 +0000 (17:04 +0200)]
Do not copy Dependencies
Since the Example Browser is not loading its Dependencies by itself, there is no point in copying them to the output directory.
Stefanos A [Fri, 4 Oct 2013 15:01:51 +0000 (17:01 +0200)]
Use 7z wildcards to zip tree
Using msbuild/xbuild wildcards results in different behavior between the two implementations. Since we require 7z anyway, it is simpler if we just use that directly.
Stefanos A. [Fri, 4 Oct 2013 14:52:59 +0000 (16:52 +0200)]
Fixed git revision detection
Stefanos A [Fri, 4 Oct 2013 08:03:26 +0000 (10:03 +0200)]
Fixed file not found error
The debug.log would be deleted after launching an example, causing the
example browser to complain that the file cannot be found. In reality,
it should be deleted before launching an example - fixed.
Stefanos A [Fri, 4 Oct 2013 08:02:19 +0000 (10:02 +0200)]
Moved all input processing to Sdl2InputDriver
This reduces the duplication of code between Sdl2NativeWindow and
Sdl2InputDriver. Sdl2InputDriver is now solely responsible for handling
input.