Implemented per-fragment operations according to the OpenGL 4.4

specification, section 17.
This commit is contained in:
Stefanos A. 2013-10-23 10:49:29 +02:00
parent 1585d6a02e
commit 86214ebc77
5 changed files with 27 additions and 12 deletions

View file

@ -175,12 +175,11 @@
</function> </function>
<function name="StencilFuncSeparate" extension="Core"> <function name="StencilFuncSeparate" extension="Core">
<param name="frontfunc"> <param name="face">
<name>face</name>
<type>StencilFace</type> <type>StencilFace</type>
</param> </param>
<param name="backfunc"> <param name="func">
<name>func</name> <type>StencilFunction</type>
</param> </param>
</function> </function>
@ -1799,6 +1798,10 @@
<token name="CONSTANT_COLOR" value="0x8001" /> <token name="CONSTANT_COLOR" value="0x8001" />
<token name="ONE_MINUS_CONSTANT_ALPHA" value="0x8004" /> <token name="ONE_MINUS_CONSTANT_ALPHA" value="0x8004" />
<token name="ONE_MINUS_CONSTANT_COLOR" value="0x8002" /> <token name="ONE_MINUS_CONSTANT_COLOR" value="0x8002" />
<use enum="VERSION_1_1" token="SRC_COLOR" />
<use enum="VERSION_1_1" token="SRC_ALPHA" />
<use enum="VERSION_1_1" token="ONE_MINUS_SRC_ALPHA" />
<use enum="VERSION_1_1" token="ONE_MINUS_SRC_COLOR" />
<use enum="VERSION_3_3" token="SRC1_ALPHA" /> <use enum="VERSION_3_3" token="SRC1_ALPHA" />
<use enum="VERSION_3_3" token="SRC1_COLOR" /> <use enum="VERSION_3_3" token="SRC1_COLOR" />
<use enum="VERSION_3_3" token="ONE_MINUS_SRC1_ALPHA" /> <use enum="VERSION_3_3" token="ONE_MINUS_SRC1_ALPHA" />
@ -1809,6 +1812,10 @@
<token name="CONSTANT_COLOR" value="0x8001" /> <token name="CONSTANT_COLOR" value="0x8001" />
<token name="ONE_MINUS_CONSTANT_ALPHA" value="0x8004" /> <token name="ONE_MINUS_CONSTANT_ALPHA" value="0x8004" />
<token name="ONE_MINUS_CONSTANT_COLOR" value="0x8002" /> <token name="ONE_MINUS_CONSTANT_COLOR" value="0x8002" />
<use enum="VERSION_1_1" token="SRC_COLOR" />
<use enum="VERSION_1_1" token="SRC_ALPHA" />
<use enum="VERSION_1_1" token="ONE_MINUS_SRC_ALPHA" />
<use enum="VERSION_1_1" token="ONE_MINUS_SRC_COLOR" />
<use enum="VERSION_3_3" token="SRC1_ALPHA" /> <use enum="VERSION_3_3" token="SRC1_ALPHA" />
<use enum="VERSION_3_3" token="SRC1_COLOR" /> <use enum="VERSION_3_3" token="SRC1_COLOR" />
<use enum="VERSION_3_3" token="ONE_MINUS_SRC1_ALPHA" /> <use enum="VERSION_3_3" token="ONE_MINUS_SRC1_ALPHA" />

View file

@ -97597,13 +97597,13 @@ namespace OpenTK.Graphics.OpenGL
/// </param> /// </param>
[AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glStencilFuncSeparate")] [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glStencilFuncSeparate")]
public static public static
void StencilFuncSeparate(OpenTK.Graphics.OpenGL.Version20 face, OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, Int32 mask) void StencilFuncSeparate(OpenTK.Graphics.OpenGL.StencilFace face, OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, Int32 mask)
{ {
#if DEBUG #if DEBUG
using (new ErrorHelper(GraphicsContext.CurrentContext)) using (new ErrorHelper(GraphicsContext.CurrentContext))
{ {
#endif #endif
Delegates.glStencilFuncSeparate((OpenTK.Graphics.OpenGL.Version20)face, (OpenTK.Graphics.OpenGL.StencilFunction)func, (Int32)@ref, (UInt32)mask); Delegates.glStencilFuncSeparate((OpenTK.Graphics.OpenGL.StencilFace)face, (OpenTK.Graphics.OpenGL.StencilFunction)func, (Int32)@ref, (UInt32)mask);
#if DEBUG #if DEBUG
} }
#endif #endif
@ -97636,13 +97636,13 @@ namespace OpenTK.Graphics.OpenGL
[System.CLSCompliant(false)] [System.CLSCompliant(false)]
[AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glStencilFuncSeparate")] [AutoGenerated(Category = "VERSION_2_0", Version = "2.0", EntryPoint = "glStencilFuncSeparate")]
public static public static
void StencilFuncSeparate(OpenTK.Graphics.OpenGL.Version20 face, OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask) void StencilFuncSeparate(OpenTK.Graphics.OpenGL.StencilFace face, OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask)
{ {
#if DEBUG #if DEBUG
using (new ErrorHelper(GraphicsContext.CurrentContext)) using (new ErrorHelper(GraphicsContext.CurrentContext))
{ {
#endif #endif
Delegates.glStencilFuncSeparate((OpenTK.Graphics.OpenGL.Version20)face, (OpenTK.Graphics.OpenGL.StencilFunction)func, (Int32)@ref, (UInt32)mask); Delegates.glStencilFuncSeparate((OpenTK.Graphics.OpenGL.StencilFace)face, (OpenTK.Graphics.OpenGL.StencilFunction)func, (Int32)@ref, (UInt32)mask);
#if DEBUG #if DEBUG
} }
#endif #endif

View file

@ -5477,7 +5477,7 @@ namespace OpenTK.Graphics.OpenGL
internal extern static void StencilFunc(OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask); internal extern static void StencilFunc(OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask);
[System.Security.SuppressUnmanagedCodeSecurity()] [System.Security.SuppressUnmanagedCodeSecurity()]
[System.Runtime.InteropServices.DllImport(GL.Library, EntryPoint = "glStencilFuncSeparate", ExactSpelling = true)] [System.Runtime.InteropServices.DllImport(GL.Library, EntryPoint = "glStencilFuncSeparate", ExactSpelling = true)]
internal extern static void StencilFuncSeparate(OpenTK.Graphics.OpenGL.Version20 face, OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask); internal extern static void StencilFuncSeparate(OpenTK.Graphics.OpenGL.StencilFace face, OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask);
[System.Security.SuppressUnmanagedCodeSecurity()] [System.Security.SuppressUnmanagedCodeSecurity()]
[System.Runtime.InteropServices.DllImport(GL.Library, EntryPoint = "glStencilFuncSeparateATI", ExactSpelling = true)] [System.Runtime.InteropServices.DllImport(GL.Library, EntryPoint = "glStencilFuncSeparateATI", ExactSpelling = true)]
internal extern static void StencilFuncSeparateATI(OpenTK.Graphics.OpenGL.StencilFunction frontfunc, OpenTK.Graphics.OpenGL.StencilFunction backfunc, Int32 @ref, UInt32 mask); internal extern static void StencilFuncSeparateATI(OpenTK.Graphics.OpenGL.StencilFunction frontfunc, OpenTK.Graphics.OpenGL.StencilFunction backfunc, Int32 @ref, UInt32 mask);

View file

@ -5475,7 +5475,7 @@ namespace OpenTK.Graphics.OpenGL
internal delegate void StencilFunc(OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask); internal delegate void StencilFunc(OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask);
internal static StencilFunc glStencilFunc; internal static StencilFunc glStencilFunc;
[System.Security.SuppressUnmanagedCodeSecurity()] [System.Security.SuppressUnmanagedCodeSecurity()]
internal delegate void StencilFuncSeparate(OpenTK.Graphics.OpenGL.Version20 face, OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask); internal delegate void StencilFuncSeparate(OpenTK.Graphics.OpenGL.StencilFace face, OpenTK.Graphics.OpenGL.StencilFunction func, Int32 @ref, UInt32 mask);
internal static StencilFuncSeparate glStencilFuncSeparate; internal static StencilFuncSeparate glStencilFuncSeparate;
[System.Security.SuppressUnmanagedCodeSecurity()] [System.Security.SuppressUnmanagedCodeSecurity()]
internal delegate void StencilFuncSeparateATI(OpenTK.Graphics.OpenGL.StencilFunction frontfunc, OpenTK.Graphics.OpenGL.StencilFunction backfunc, Int32 @ref, UInt32 mask); internal delegate void StencilFuncSeparateATI(OpenTK.Graphics.OpenGL.StencilFunction frontfunc, OpenTK.Graphics.OpenGL.StencilFunction backfunc, Int32 @ref, UInt32 mask);

View file

@ -28883,6 +28883,14 @@ namespace OpenTK.Graphics.OpenGL
/// </summary> /// </summary>
Zero = ((int)0) , Zero = ((int)0) ,
/// <summary> /// <summary>
/// Original was GL_SRC_COLOR = 0x0300
/// </summary>
SrcColor = ((int)0x0300) ,
/// <summary>
/// Original was GL_ONE_MINUS_SRC_COLOR = 0x0301
/// </summary>
OneMinusSrcColor = ((int)0x0301) ,
/// <summary>
/// Original was GL_SRC_ALPHA = 0x0302 /// Original was GL_SRC_ALPHA = 0x0302
/// </summary> /// </summary>
SrcAlpha = ((int)0x0302) , SrcAlpha = ((int)0x0302) ,
@ -51314,7 +51322,7 @@ namespace OpenTK.Graphics.OpenGL
} }
/// <summary> /// <summary>
/// Used in GL.StencilMaskSeparate, GL.StencilOpSeparate /// Used in GL.StencilFuncSeparate, GL.StencilMaskSeparate, GL.StencilOpSeparate
/// </summary> /// </summary>
public enum StencilFace : int public enum StencilFace : int
{ {
@ -56444,7 +56452,7 @@ namespace OpenTK.Graphics.OpenGL
} }
/// <summary> /// <summary>
/// Used in GL.StencilFuncSeparate /// Not used directly.
/// </summary> /// </summary>
public enum Version20 : int public enum Version20 : int
{ {