thefiddler
a706a78cf5
[ES] Implemented bindings for ES 3.1 (2/2)
...
Implemented core functionality:
- KHR_shader_atomic_counters
- KHR_shader_image_load_store
- KHR_shader_storage_buffer_object
- KHR_stencil_texturing
- KHR_texture_gather
- KHR_texture_storage_multisample
- KHR_vertex_attrib_binding
2014-09-02 13:04:13 +02:00
thefiddler
dcca1d77ac
[ES] Implemented bindings for ES 3.1 (1/2)
...
Implemented core functionality:
- KHR_compute_shader
- KHR_draw_indirect
- KHR_explicit_uniform_location
- KHR_framebuffer_no_attachments
- KHR_program_interface_queries
- KHR_separate_shader_objects
2014-09-02 13:04:13 +02:00
thefiddler
d570eb2032
[Bind] Moved GL overrides to parent folder
2014-09-02 13:04:13 +02:00
thefiddler
0e0565098c
[GL] Added a missing enum
2014-09-02 13:04:13 +02:00
thefiddler
c6e8991872
[Bind] Allow multiple overrides files
...
Multiple overrides files allow us to split overrides by extension,
simplifying maintenance.
2014-09-02 13:04:13 +02:00
thefiddler
5e8357b17e
[GL] Implemented ARB_direct_state_access
...
See http://www.opengl.org/registry/specs/ARB/direct_state_access.txt
2014-09-02 13:04:13 +02:00
thefiddler
02d592c548
[GL] Added missing tokens for 4.2-4.4
2014-09-02 13:04:13 +02:00
thefiddler
398bcd40aa
[GL][ES] Implemented KHR_context_robustness
2014-09-02 13:04:12 +02:00
thefiddler
06269f2253
[GL] Implemented ARB_get_texture_sub_image
...
Also fixed KHR_context_flush_control tokens in OpenGL ES.
2014-09-02 13:04:12 +02:00
thefiddler
adffb47af2
[GL][ES] Implemented KHR_context_flush_control
2014-09-02 13:04:12 +02:00
thefiddler
056e586bb1
[GL] Implemented ARB_conditional_render_inverted
2014-09-02 13:04:12 +02:00
thefiddler
cde7061280
[GL] Implemented ARB_cull_distance
2014-09-02 13:04:12 +02:00
thefiddler
240a5a6e70
[GL][ES] Added tokens for backwards compatibility
...
The 4.5 spec moves BLEND_ADVANCED_COHERENT_KHR from
KHR_blend_equation_advanced to KHR_blend_equation_advanced_coherent.
Add a deprecated token to maintain binary compatibility.
2014-09-02 13:04:12 +02:00
thefiddler
b0192b7d15
[GL] Added ARB_clip_control
2014-09-02 13:04:12 +02:00
thefiddler
6bb7c1d406
Merge pull request #173 from thefiddler/buffersize_to_int
...
[Bind] Add int overloads to buffer size (IntPtr) parameters
2014-09-02 13:03:42 +02:00
thefiddler
a37057233f
[GL] Added int overload to DrawElements for OpenGL4
2014-09-02 10:54:31 +02:00
thefiddler
cbe0684d7f
[Bind] Add int overloads to buffer size (IntPtr) parameters
...
As a convenience, int overloads are provided for IntPtr size
parameters (corresponding to BufferSize or size_t). In the vast
majority of cases, a 32bit int is sufficient for buffer sizes,
so these overloads avoid the necessity of annoying (IntPtr) casts.
If more than 2^31-1 elements are required, the IntPtr overloads
remain available. (As always, this requires a 64bit runtime
environment.)
2014-09-02 09:48:39 +02:00
thefiddler
2a84104262
Merge pull request #157 from thefiddler/warnfix
...
Fix all build warnings on VS2013 and Mono 3.4.0
2014-07-21 18:05:20 +02:00
thefiddler
093dd1d1ca
[Bind] Fixed an issue where CLS-compliance was incorrectly overriden
2014-07-21 16:53:02 +02:00
thefiddler
6d1149cccd
[GL] BufferObjects and TextureUnit are not obsolete
2014-07-21 16:34:21 +02:00
thefiddler
c046584aaf
[Bind] Implemented CLS-compliant checks for Enums
2014-07-21 16:25:21 +02:00
thefiddler
bf65005e7b
[Bind] Added Enum.Obsolete property
2014-07-21 16:02:56 +02:00
thefiddler
33c9fe5025
[ES] Marked obsolete enums as such
2014-07-21 16:02:32 +02:00
thefiddler
cab9e85386
[Bind] Enums can now be marked as obsolete
2014-07-21 16:02:18 +02:00
thefiddler
5cac37a4f5
[GL] Synced with the July 2014 Khronos spec
...
This version fixes various issues in the OES_byte_coordinates extension
and improves the documentation on parameter lengths.
2014-07-21 09:19:29 +02:00
thefiddler
28746e85cc
[ES][GL] Synced with June 2014 specifications
...
This introduces support for the following extensions:
- EXT_geometry_point_size
- EXT_primitive_bounding_box
- EXT_texture_array
- EXT_tessellation_point_size
2014-06-19 16:24:40 +02:00
thefiddler
c0f6d4bc79
[Bind] Fixed a System.FormatException
2014-06-08 09:57:48 +02:00
thefiddler
92efb5957f
[Bind] Use byte for GLboolean return types
...
GLboolean is typedefed as an unsigned char. It appears that `[return:
MarshalAs(UnmanagedType.U1)]` is ignored in calli p/invokes, so we need
to take care of this ourselves by emitting byte instead of bool for the
p/invoke signature. The public API remains unchanged.
Fixes issue #129 .
2014-06-08 09:52:12 +02:00
thefiddler
a6bdd2840c
[Graphics] Synced with May 2014 Khronos spec
2014-05-19 23:03:39 +02:00
thefiddler
bfaff0bd66
[GL] Added generic RenderbufferStorage depth-stencil formats
...
According to the OpenGL 4.4 specification, RenderbufferStorage accepts
both generic and sized depth-stencil formats (DepthComponent and
DepthStencil). See sections 9.2.4, 9.2.5 and 9.4.
2014-05-07 23:21:24 +02:00
thefiddler
168713aecf
[GL] Added GetPName.Max*ImageUniforms
...
These tokens were introduced in OpenGL 4.2 and 4.3.
2014-04-27 22:47:04 +02:00
thefiddler
6186373df1
[ES][GL] Synced with April Khronos specification
2014-04-27 09:53:22 +02:00
thefiddler
bd339523ab
[Bind] Do not generate DllImports
...
These break dynamic loading of OpenGL ES and bloat OpenTK.dll with
duplicated strings. The new extension loading mechanism is now fast
enough to make DllImports unnecessary.
2014-04-26 14:22:37 +02:00
thefiddler
6257858d54
[Bind][ES][GL] Output entry points as byte[]
...
Moving from string[] to byte[] reduces startup memory allocations
tremendously (up to 70% lower memory use on Windows!)
2014-04-25 17:25:20 +02:00
thefiddler
774ebd1df7
[Bind] Do not generate slots for OpenGL <= v1.1
...
We can use DllImports for OpenGL functions <= v1.1 on all platforms,
including Windows. This allows us to reduce the number of required
GetProcAddress calls by 474, reducing startup time and memory
consumption.
This setting can be turned off through Settings.Legacy.UseDllImports
and UseWindowsCompatibleGL.
2014-04-25 12:14:28 +02:00
thefiddler
4ae65c86ff
[GL] Added missing GetPName.MaxPatchVertices
2014-04-25 11:11:42 +02:00
thefiddler
bd920a15f2
[Bind] Corrected CSharpSpecWriter output and warning messages
...
CSharpSpecWriter now correctly outputs doc summaries on ARB_imaging
functions that do not have a version/deprecation string. Additionally,
it no longer warns about documentation parameter mismatches for
parameters matching C# keywords.
2014-03-31 17:40:15 +02:00
thefiddler
d68c31a561
[Bind] Move documentation generation to DocProcessor class
...
This de-duplicates a large amount of code that is shared between the
various ISpecWriter implementations.
2014-03-31 17:09:30 +02:00
thefiddler
8001d62599
[Bind] Make documentation output closer to previous xslt implementation
2014-03-31 10:10:56 +02:00
thefiddler
9012101e8c
[Bind] Propagate ComputeSize attribute in cloned Parameters
2014-03-31 10:09:33 +02:00
thefiddler
e11b7ca993
[Bind] More aggressive trimming of documentation strings
2014-03-31 09:51:15 +02:00
thefiddler
570d08fff1
[Bind] Add NoIndent option to BindStreamWriter
2014-03-31 09:50:51 +02:00
thefiddler
61791c91db
[Bind] Do not skip parameters in documentation
...
Multiple parameters may share a single description. The DocProcessor
will now correctly generate DocumentationParameters for each of them.
2014-03-30 19:16:30 +02:00
thefiddler
21b328992a
[Bind] Remove xmlns to simplify xpath processing
2014-03-30 11:01:03 +02:00
thefiddler
243f41b83f
[Bind] Use DocumentationParameter instead of KeyValuePair
2014-03-30 10:43:30 +02:00
thefiddler
bd9f760f4b
[Bind] Merge GL2 and GL4 documentation into one
2014-03-30 10:29:50 +02:00
thefiddler
033e0b7155
[Bind] Concatenate multiline documentation
2014-03-30 10:29:11 +02:00
thefiddler
67b0ead68b
[Bind] Process documentation from subdirectories
...
Instead of using xslt, we now process the documentation in code. This
allows us to fix mismatches from e.g. invalid parameter names that
sometimes creep in the specs.
2014-03-28 20:08:38 +01:00
thefiddler
22a706e44f
[Bind] Added documentation files for OpenGL ES
2014-03-28 20:06:55 +01:00
thefiddler
db913ca3f4
[GL] Added missing [Rgba]16Snorm texture formats
...
See https://www.opengl.org/sdk/docs/man4/html/glTexImage2D.xhtml or the
4.4 spec, section 8.5, table "Sized internal color formats".
2014-03-18 12:08:02 +01:00