mirror of
https://github.com/bkaradzic/bgfx.git
synced 2026-02-17 20:52:36 +01:00
Fixed discard flags.
This commit is contained in:
@@ -533,37 +533,42 @@ public static partial class bgfx
|
||||
public enum DiscardFlags : uint
|
||||
{
|
||||
/// <summary>
|
||||
/// Discard nothing
|
||||
/// Preserve everything.
|
||||
/// </summary>
|
||||
None = 0x00000000,
|
||||
|
||||
/// <summary>
|
||||
/// Discard only Index Buffer
|
||||
/// Discard texture sampler and buffer bindings.
|
||||
/// </summary>
|
||||
IndexBuffer = 0x00000001,
|
||||
Bindings = 0x00000001,
|
||||
|
||||
/// <summary>
|
||||
/// Discard only Vertex Streams
|
||||
/// Discard index buffer.
|
||||
/// </summary>
|
||||
VertexStreams = 0x00000002,
|
||||
IndexBuffer = 0x00000002,
|
||||
|
||||
/// <summary>
|
||||
/// Discard only texture samplers
|
||||
/// Discard instance data.
|
||||
/// </summary>
|
||||
TextureSamplers = 0x00000004,
|
||||
InstanceData = 0x00000004,
|
||||
|
||||
/// <summary>
|
||||
/// Discard only Compute shader related state
|
||||
/// Discard state.
|
||||
/// </summary>
|
||||
Compute = 0x00000008,
|
||||
State = 0x00000008,
|
||||
|
||||
/// <summary>
|
||||
/// Discard only state
|
||||
/// Discard transform.
|
||||
/// </summary>
|
||||
State = 0x00000010,
|
||||
Transform = 0x00000010,
|
||||
|
||||
/// <summary>
|
||||
/// Discard every rendering states
|
||||
/// Discard vertex streams.
|
||||
/// </summary>
|
||||
VertexStreams = 0x00000020,
|
||||
|
||||
/// <summary>
|
||||
/// Discard all states.
|
||||
/// </summary>
|
||||
All = 0x000000ff,
|
||||
}
|
||||
@@ -3733,7 +3738,7 @@ public static partial class bgfx
|
||||
/// <param name="_id">View id.</param>
|
||||
/// <param name="_program">Program.</param>
|
||||
/// <param name="_depth">Depth for sorting.</param>
|
||||
/// <param name="_flags">Which states to discard for next draw. See BGFX_DISCARD_</param>
|
||||
/// <param name="_flags">Discard or preserve states. See `BGFX_DISCARD_*`.</param>
|
||||
///
|
||||
[DllImport(DllName, EntryPoint="bgfx_encoder_submit", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern unsafe void encoder_submit(Encoder* _this, ushort _id, ProgramHandle _program, uint _depth, byte _flags);
|
||||
@@ -3746,7 +3751,7 @@ public static partial class bgfx
|
||||
/// <param name="_program">Program.</param>
|
||||
/// <param name="_occlusionQuery">Occlusion query.</param>
|
||||
/// <param name="_depth">Depth for sorting.</param>
|
||||
/// <param name="_flags">Which states to discard for next draw. See BGFX_DISCARD_</param>
|
||||
/// <param name="_flags">Discard or preserve states. See `BGFX_DISCARD_*`.</param>
|
||||
///
|
||||
[DllImport(DllName, EntryPoint="bgfx_encoder_submit_occlusion_query", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern unsafe void encoder_submit_occlusion_query(Encoder* _this, ushort _id, ProgramHandle _program, OcclusionQueryHandle _occlusionQuery, uint _depth, byte _flags);
|
||||
@@ -3762,7 +3767,7 @@ public static partial class bgfx
|
||||
/// <param name="_start">First element in indirect buffer.</param>
|
||||
/// <param name="_num">Number of dispatches.</param>
|
||||
/// <param name="_depth">Depth for sorting.</param>
|
||||
/// <param name="_flags">Which states to discard for next draw. See BGFX_DISCARD_</param>
|
||||
/// <param name="_flags">Discard or preserve states. See `BGFX_DISCARD_*`.</param>
|
||||
///
|
||||
[DllImport(DllName, EntryPoint="bgfx_encoder_submit_indirect", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern unsafe void encoder_submit_indirect(Encoder* _this, ushort _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, ushort _start, ushort _num, uint _depth, byte _flags);
|
||||
@@ -3844,9 +3849,10 @@ public static partial class bgfx
|
||||
/// <param name="_numX">Number of groups X.</param>
|
||||
/// <param name="_numY">Number of groups Y.</param>
|
||||
/// <param name="_numZ">Number of groups Z.</param>
|
||||
/// <param name="_flags">Discard or preserve states. See `BGFX_DISCARD_*`.</param>
|
||||
///
|
||||
[DllImport(DllName, EntryPoint="bgfx_encoder_dispatch", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern unsafe void encoder_dispatch(Encoder* _this, ushort _id, ProgramHandle _program, uint _numX, uint _numY, uint _numZ);
|
||||
public static extern unsafe void encoder_dispatch(Encoder* _this, ushort _id, ProgramHandle _program, uint _numX, uint _numY, uint _numZ, byte _flags);
|
||||
|
||||
/// <summary>
|
||||
/// Dispatch compute indirect.
|
||||
@@ -3857,15 +3863,16 @@ public static partial class bgfx
|
||||
/// <param name="_indirectHandle">Indirect buffer.</param>
|
||||
/// <param name="_start">First element in indirect buffer.</param>
|
||||
/// <param name="_num">Number of dispatches.</param>
|
||||
/// <param name="_flags">Discard or preserve states. See `BGFX_DISCARD_*`.</param>
|
||||
///
|
||||
[DllImport(DllName, EntryPoint="bgfx_encoder_dispatch_indirect", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern unsafe void encoder_dispatch_indirect(Encoder* _this, ushort _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, ushort _start, ushort _num);
|
||||
public static extern unsafe void encoder_dispatch_indirect(Encoder* _this, ushort _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, ushort _start, ushort _num, byte _flags);
|
||||
|
||||
/// <summary>
|
||||
/// Discard previously set state for draw or compute call.
|
||||
/// </summary>
|
||||
///
|
||||
/// <param name="_flags">Draw/compute states to discard.</param>
|
||||
/// <param name="_flags">Discard or preserve states. See `BGFX_DISCARD_*`.</param>
|
||||
///
|
||||
[DllImport(DllName, EntryPoint="bgfx_encoder_discard", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern unsafe void encoder_discard(Encoder* _this, byte _flags);
|
||||
@@ -4359,9 +4366,10 @@ public static partial class bgfx
|
||||
/// <param name="_numX">Number of groups X.</param>
|
||||
/// <param name="_numY">Number of groups Y.</param>
|
||||
/// <param name="_numZ">Number of groups Z.</param>
|
||||
/// <param name="_flags">Discard or preserve states. See `BGFX_DISCARD_*`.</param>
|
||||
///
|
||||
[DllImport(DllName, EntryPoint="bgfx_dispatch", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern unsafe void dispatch(ushort _id, ProgramHandle _program, uint _numX, uint _numY, uint _numZ);
|
||||
public static extern unsafe void dispatch(ushort _id, ProgramHandle _program, uint _numX, uint _numY, uint _numZ, byte _flags);
|
||||
|
||||
/// <summary>
|
||||
/// Dispatch compute indirect.
|
||||
@@ -4372,9 +4380,10 @@ public static partial class bgfx
|
||||
/// <param name="_indirectHandle">Indirect buffer.</param>
|
||||
/// <param name="_start">First element in indirect buffer.</param>
|
||||
/// <param name="_num">Number of dispatches.</param>
|
||||
/// <param name="_flags">Discard or preserve states. See `BGFX_DISCARD_*`.</param>
|
||||
///
|
||||
[DllImport(DllName, EntryPoint="bgfx_dispatch_indirect", CallingConvention = CallingConvention.Cdecl)]
|
||||
public static extern unsafe void dispatch_indirect(ushort _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, ushort _start, ushort _num);
|
||||
public static extern unsafe void dispatch_indirect(ushort _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, ushort _start, ushort _num, byte _flags);
|
||||
|
||||
/// <summary>
|
||||
/// Discard previously set state for draw or compute call.
|
||||
|
||||
@@ -1463,7 +1463,7 @@ version(BindBgfx_Static)
|
||||
* _id = View id.
|
||||
* _program = Program.
|
||||
* _depth = Depth for sorting.
|
||||
* _flags = Which states to discard for next draw. See BGFX_DISCARD_
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
void bgfx_encoder_submit(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _depth, byte _flags);
|
||||
|
||||
@@ -1474,7 +1474,7 @@ version(BindBgfx_Static)
|
||||
* _program = Program.
|
||||
* _occlusionQuery = Occlusion query.
|
||||
* _depth = Depth for sorting.
|
||||
* _flags = Which states to discard for next draw. See BGFX_DISCARD_
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
void bgfx_encoder_submit_occlusion_query(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_occlusion_query_handle_t _occlusionQuery, uint _depth, byte _flags);
|
||||
|
||||
@@ -1488,7 +1488,7 @@ version(BindBgfx_Static)
|
||||
* _start = First element in indirect buffer.
|
||||
* _num = Number of dispatches.
|
||||
* _depth = Depth for sorting.
|
||||
* _flags = Which states to discard for next draw. See BGFX_DISCARD_
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
void bgfx_encoder_submit_indirect(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num, uint _depth, byte _flags);
|
||||
|
||||
@@ -1556,8 +1556,9 @@ version(BindBgfx_Static)
|
||||
* _numX = Number of groups X.
|
||||
* _numY = Number of groups Y.
|
||||
* _numZ = Number of groups Z.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
void bgfx_encoder_dispatch(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _numX, uint _numY, uint _numZ);
|
||||
void bgfx_encoder_dispatch(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _numX, uint _numY, uint _numZ, byte _flags);
|
||||
|
||||
/**
|
||||
* Dispatch compute indirect.
|
||||
@@ -1567,13 +1568,14 @@ version(BindBgfx_Static)
|
||||
* _indirectHandle = Indirect buffer.
|
||||
* _start = First element in indirect buffer.
|
||||
* _num = Number of dispatches.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
void bgfx_encoder_dispatch_indirect(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num);
|
||||
void bgfx_encoder_dispatch_indirect(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num, byte _flags);
|
||||
|
||||
/**
|
||||
* Discard previously set state for draw or compute call.
|
||||
* Params:
|
||||
* _flags = Draw/compute states to discard.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
void bgfx_encoder_discard(bgfx_encoder_t* _this, byte _flags);
|
||||
|
||||
@@ -2015,8 +2017,9 @@ version(BindBgfx_Static)
|
||||
* _numX = Number of groups X.
|
||||
* _numY = Number of groups Y.
|
||||
* _numZ = Number of groups Z.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
void bgfx_dispatch(bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _numX, uint _numY, uint _numZ);
|
||||
void bgfx_dispatch(bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _numX, uint _numY, uint _numZ, byte _flags);
|
||||
|
||||
/**
|
||||
* Dispatch compute indirect.
|
||||
@@ -2026,8 +2029,9 @@ version(BindBgfx_Static)
|
||||
* _indirectHandle = Indirect buffer.
|
||||
* _start = First element in indirect buffer.
|
||||
* _num = Number of dispatches.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
void bgfx_dispatch_indirect(bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num);
|
||||
void bgfx_dispatch_indirect(bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num, byte _flags);
|
||||
|
||||
/**
|
||||
* Discard previously set state for draw or compute call.
|
||||
@@ -3648,7 +3652,7 @@ else
|
||||
* _id = View id.
|
||||
* _program = Program.
|
||||
* _depth = Depth for sorting.
|
||||
* _flags = Which states to discard for next draw. See BGFX_DISCARD_
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
alias da_bgfx_encoder_submit = void function(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _depth, byte _flags);
|
||||
da_bgfx_encoder_submit bgfx_encoder_submit;
|
||||
@@ -3660,7 +3664,7 @@ else
|
||||
* _program = Program.
|
||||
* _occlusionQuery = Occlusion query.
|
||||
* _depth = Depth for sorting.
|
||||
* _flags = Which states to discard for next draw. See BGFX_DISCARD_
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
alias da_bgfx_encoder_submit_occlusion_query = void function(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_occlusion_query_handle_t _occlusionQuery, uint _depth, byte _flags);
|
||||
da_bgfx_encoder_submit_occlusion_query bgfx_encoder_submit_occlusion_query;
|
||||
@@ -3675,7 +3679,7 @@ else
|
||||
* _start = First element in indirect buffer.
|
||||
* _num = Number of dispatches.
|
||||
* _depth = Depth for sorting.
|
||||
* _flags = Which states to discard for next draw. See BGFX_DISCARD_
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
alias da_bgfx_encoder_submit_indirect = void function(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num, uint _depth, byte _flags);
|
||||
da_bgfx_encoder_submit_indirect bgfx_encoder_submit_indirect;
|
||||
@@ -3750,8 +3754,9 @@ else
|
||||
* _numX = Number of groups X.
|
||||
* _numY = Number of groups Y.
|
||||
* _numZ = Number of groups Z.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
alias da_bgfx_encoder_dispatch = void function(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _numX, uint _numY, uint _numZ);
|
||||
alias da_bgfx_encoder_dispatch = void function(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _numX, uint _numY, uint _numZ, byte _flags);
|
||||
da_bgfx_encoder_dispatch bgfx_encoder_dispatch;
|
||||
|
||||
/**
|
||||
@@ -3762,14 +3767,15 @@ else
|
||||
* _indirectHandle = Indirect buffer.
|
||||
* _start = First element in indirect buffer.
|
||||
* _num = Number of dispatches.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
alias da_bgfx_encoder_dispatch_indirect = void function(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num);
|
||||
alias da_bgfx_encoder_dispatch_indirect = void function(bgfx_encoder_t* _this, bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num, byte _flags);
|
||||
da_bgfx_encoder_dispatch_indirect bgfx_encoder_dispatch_indirect;
|
||||
|
||||
/**
|
||||
* Discard previously set state for draw or compute call.
|
||||
* Params:
|
||||
* _flags = Draw/compute states to discard.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
alias da_bgfx_encoder_discard = void function(bgfx_encoder_t* _this, byte _flags);
|
||||
da_bgfx_encoder_discard bgfx_encoder_discard;
|
||||
@@ -4251,8 +4257,9 @@ else
|
||||
* _numX = Number of groups X.
|
||||
* _numY = Number of groups Y.
|
||||
* _numZ = Number of groups Z.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
alias da_bgfx_dispatch = void function(bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _numX, uint _numY, uint _numZ);
|
||||
alias da_bgfx_dispatch = void function(bgfx_view_id_t _id, bgfx_program_handle_t _program, uint _numX, uint _numY, uint _numZ, byte _flags);
|
||||
da_bgfx_dispatch bgfx_dispatch;
|
||||
|
||||
/**
|
||||
@@ -4263,8 +4270,9 @@ else
|
||||
* _indirectHandle = Indirect buffer.
|
||||
* _start = First element in indirect buffer.
|
||||
* _num = Number of dispatches.
|
||||
* _flags = Discard or preserve states. See `BGFX_DISCARD_*`.
|
||||
*/
|
||||
alias da_bgfx_dispatch_indirect = void function(bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num);
|
||||
alias da_bgfx_dispatch_indirect = void function(bgfx_view_id_t _id, bgfx_program_handle_t _program, bgfx_indirect_buffer_handle_t _indirectHandle, ushort _start, ushort _num, byte _flags);
|
||||
da_bgfx_dispatch_indirect bgfx_dispatch_indirect;
|
||||
|
||||
/**
|
||||
|
||||
@@ -10,7 +10,7 @@ public import core.stdc.stdarg : va_list;
|
||||
|
||||
extern(C) @nogc nothrow:
|
||||
|
||||
enum uint BGFX_API_VERSION = 104;
|
||||
enum uint BGFX_API_VERSION = 105;
|
||||
|
||||
alias bgfx_view_id_t = ushort;
|
||||
|
||||
@@ -193,13 +193,14 @@ enum ushort BGFX_CLEAR_DISCARD_MASK = 0x1ff8;
|
||||
* Rendering state discard. When state is preserved in submit, rendering states can be discarded
|
||||
* on a finer grain.
|
||||
*/
|
||||
enum ubyte BGFX_DISCARD_NONE = 0x00; /// Discard nothing
|
||||
enum ubyte BGFX_DISCARD_INDEX_BUFFER = 0x01; /// Discard only Index Buffer
|
||||
enum ubyte BGFX_DISCARD_VERTEX_STREAMS = 0x02; /// Discard only Vertex Streams
|
||||
enum ubyte BGFX_DISCARD_TEXTURE_SAMPLERS = 0x04; /// Discard only texture samplers
|
||||
enum ubyte BGFX_DISCARD_COMPUTE = 0x08; /// Discard only Compute shader related state
|
||||
enum ubyte BGFX_DISCARD_STATE = 0x10; /// Discard only state
|
||||
enum ubyte BGFX_DISCARD_ALL = 0xff; /// Discard every rendering states
|
||||
enum ubyte BGFX_DISCARD_NONE = 0x00; /// Preserve everything.
|
||||
enum ubyte BGFX_DISCARD_BINDINGS = 0x01; /// Discard texture sampler and buffer bindings.
|
||||
enum ubyte BGFX_DISCARD_INDEX_BUFFER = 0x02; /// Discard index buffer.
|
||||
enum ubyte BGFX_DISCARD_INSTANCE_DATA = 0x04; /// Discard instance data.
|
||||
enum ubyte BGFX_DISCARD_STATE = 0x08; /// Discard state.
|
||||
enum ubyte BGFX_DISCARD_TRANSFORM = 0x10; /// Discard transform.
|
||||
enum ubyte BGFX_DISCARD_VERTEX_STREAMS = 0x20; /// Discard vertex streams.
|
||||
enum ubyte BGFX_DISCARD_ALL = 0xff; /// Discard all states.
|
||||
|
||||
enum uint BGFX_DEBUG_NONE = 0x00000000; /// No debug.
|
||||
enum uint BGFX_DEBUG_WIREFRAME = 0x00000001; /// Enable wireframe for all primitives.
|
||||
|
||||
Reference in New Issue
Block a user