diff --git a/bindings/cs/bgfx.cs b/bindings/cs/bgfx.cs
index 01f7044d1..33d6e90e8 100644
--- a/bindings/cs/bgfx.cs
+++ b/bindings/cs/bgfx.cs
@@ -3638,10 +3638,22 @@ public static partial class bgfx
/// Vertex buffer.
/// First vertex to render.
/// Number of vertices to render.
- /// Vertex layout for aliasing vertex buffer. If invalid handle is used, vertex layout used for creation of vertex buffer will be used.
///
[DllImport(DllName, EntryPoint="bgfx_encoder_set_vertex_buffer", CallingConvention = CallingConvention.Cdecl)]
- public static extern unsafe void encoder_set_vertex_buffer(Encoder* _this, byte _stream, VertexBufferHandle _handle, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
+ public static extern unsafe void encoder_set_vertex_buffer(Encoder* _this, byte _stream, VertexBufferHandle _handle, uint _startVertex, uint _numVertices);
+
+ ///
+ /// Set vertex buffer for draw primitive.
+ ///
+ ///
+ /// Vertex stream.
+ /// Vertex buffer.
+ /// First vertex to render.
+ /// Number of vertices to render.
+ /// Vertex layout for aliasing vertex buffer. If invalid handle is used, vertex layout used for creation of vertex buffer will be used.
+ ///
+ [DllImport(DllName, EntryPoint="bgfx_encoder_set_vertex_buffer_with_layout", CallingConvention = CallingConvention.Cdecl)]
+ public static extern unsafe void encoder_set_vertex_buffer_with_layout(Encoder* _this, byte _stream, VertexBufferHandle _handle, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
///
/// Set vertex buffer for draw primitive.
@@ -3651,10 +3663,24 @@ public static partial class bgfx
/// Dynamic vertex buffer.
/// First vertex to render.
/// Number of vertices to render.
- /// Vertex layout for aliasing vertex buffer. If invalid handle is used, vertex layout used for creation of vertex buffer will be used.
///
[DllImport(DllName, EntryPoint="bgfx_encoder_set_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)]
- public static extern unsafe void encoder_set_dynamic_vertex_buffer(Encoder* _this, byte _stream, DynamicVertexBufferHandle _handle, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
+ public static extern unsafe void encoder_set_dynamic_vertex_buffer(Encoder* _this, byte _stream, DynamicVertexBufferHandle _handle, uint _startVertex, uint _numVertices);
+
+ [DllImport(DllName, EntryPoint="bgfx_encoder_set_dynamic_vertex_buffer_with_layout", CallingConvention = CallingConvention.Cdecl)]
+ public static extern unsafe void encoder_set_dynamic_vertex_buffer_with_layout(Encoder* _this, byte _stream, DynamicVertexBufferHandle _handle, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
+
+ ///
+ /// Set vertex buffer for draw primitive.
+ ///
+ ///
+ /// Vertex stream.
+ /// Transient vertex buffer.
+ /// First vertex to render.
+ /// Number of vertices to render.
+ ///
+ [DllImport(DllName, EntryPoint="bgfx_encoder_set_transient_vertex_buffer", CallingConvention = CallingConvention.Cdecl)]
+ public static extern unsafe void encoder_set_transient_vertex_buffer(Encoder* _this, byte _stream, TransientVertexBuffer* _tvb, uint _startVertex, uint _numVertices);
///
/// Set vertex buffer for draw primitive.
@@ -3666,8 +3692,8 @@ public static partial class bgfx
/// Number of vertices to render.
/// Vertex layout for aliasing vertex buffer. If invalid handle is used, vertex layout used for creation of vertex buffer will be used.
///
- [DllImport(DllName, EntryPoint="bgfx_encoder_set_transient_vertex_buffer", CallingConvention = CallingConvention.Cdecl)]
- public static extern unsafe void encoder_set_transient_vertex_buffer(Encoder* _this, byte _stream, TransientVertexBuffer* _tvb, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
+ [DllImport(DllName, EntryPoint="bgfx_encoder_set_transient_vertex_buffer_with_layout", CallingConvention = CallingConvention.Cdecl)]
+ public static extern unsafe void encoder_set_transient_vertex_buffer_with_layout(Encoder* _this, byte _stream, TransientVertexBuffer* _tvb, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
///
/// Set number of vertices for auto generated vertices use in conjuction
@@ -4160,10 +4186,34 @@ public static partial class bgfx
/// Vertex buffer.
/// First vertex to render.
/// Number of vertices to render.
- /// Vertex layout for aliasing vertex buffer. If invalid handle is used, vertex layout used for creation of vertex buffer will be used.
///
[DllImport(DllName, EntryPoint="bgfx_set_vertex_buffer", CallingConvention = CallingConvention.Cdecl)]
- public static extern unsafe void set_vertex_buffer(byte _stream, VertexBufferHandle _handle, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
+ public static extern unsafe void set_vertex_buffer(byte _stream, VertexBufferHandle _handle, uint _startVertex, uint _numVertices);
+
+ ///
+ /// Set vertex buffer for draw primitive.
+ ///
+ ///
+ /// Vertex stream.
+ /// Vertex buffer.
+ /// First vertex to render.
+ /// Number of vertices to render.
+ /// Vertex layout for aliasing vertex buffer. If invalid handle is used, vertex layout used for creation of vertex buffer will be used.
+ ///
+ [DllImport(DllName, EntryPoint="bgfx_set_vertex_buffer_with_layout", CallingConvention = CallingConvention.Cdecl)]
+ public static extern unsafe void set_vertex_buffer_with_layout(byte _stream, VertexBufferHandle _handle, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
+
+ ///
+ /// Set vertex buffer for draw primitive.
+ ///
+ ///
+ /// Vertex stream.
+ /// Dynamic vertex buffer.
+ /// First vertex to render.
+ /// Number of vertices to render.
+ ///
+ [DllImport(DllName, EntryPoint="bgfx_set_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)]
+ public static extern unsafe void set_dynamic_vertex_buffer(byte _stream, DynamicVertexBufferHandle _handle, uint _startVertex, uint _numVertices);
///
/// Set vertex buffer for draw primitive.
@@ -4175,8 +4225,8 @@ public static partial class bgfx
/// Number of vertices to render.
/// Vertex layout for aliasing vertex buffer. If invalid handle is used, vertex layout used for creation of vertex buffer will be used.
///
- [DllImport(DllName, EntryPoint="bgfx_set_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)]
- public static extern unsafe void set_dynamic_vertex_buffer(byte _stream, DynamicVertexBufferHandle _handle, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
+ [DllImport(DllName, EntryPoint="bgfx_set_dynamic_vertex_buffer_with_layout", CallingConvention = CallingConvention.Cdecl)]
+ public static extern unsafe void set_dynamic_vertex_buffer_with_layout(byte _stream, DynamicVertexBufferHandle _handle, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
///
/// Set vertex buffer for draw primitive.
@@ -4190,6 +4240,19 @@ public static partial class bgfx
[DllImport(DllName, EntryPoint="bgfx_set_transient_vertex_buffer", CallingConvention = CallingConvention.Cdecl)]
public static extern unsafe void set_transient_vertex_buffer(byte _stream, TransientVertexBuffer* _tvb, uint _startVertex, uint _numVertices);
+ ///
+ /// Set vertex buffer for draw primitive.
+ ///
+ ///
+ /// Vertex stream.
+ /// Transient vertex buffer.
+ /// First vertex to render.
+ /// Number of vertices to render.
+ /// Vertex layout for aliasing vertex buffer. If invalid handle is used, vertex layout used for creation of vertex buffer will be used.
+ ///
+ [DllImport(DllName, EntryPoint="bgfx_set_transient_vertex_buffer_with_layout", CallingConvention = CallingConvention.Cdecl)]
+ public static extern unsafe void set_transient_vertex_buffer_with_layout(byte _stream, TransientVertexBuffer* _tvb, uint _startVertex, uint _numVertices, VertexLayoutHandle _layoutHandle);
+
///
/// Set number of vertices for auto generated vertices use in conjuction
/// with gl_VertexID.
diff --git a/bindings/d/funcs.d b/bindings/d/funcs.d
index dc6ae0e74..ce0c0dbee 100644
--- a/bindings/d/funcs.d
+++ b/bindings/d/funcs.d
@@ -1361,6 +1361,16 @@ version(BindBgfx_Static)
*/
void bgfx_encoder_set_transient_index_buffer(bgfx_encoder_t* _this, const(bgfx_transient_index_buffer_t)* _tib, uint _firstIndex, uint _numIndices);
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _handle = Vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ */
+ void bgfx_encoder_set_vertex_buffer(bgfx_encoder_t* _this, byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices);
+
/**
* Set vertex buffer for draw primitive.
* Params:
@@ -1372,7 +1382,7 @@ version(BindBgfx_Static)
* handle is used, vertex layout used for creation
* of vertex buffer will be used.
*/
- void bgfx_encoder_set_vertex_buffer(bgfx_encoder_t* _this, byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void bgfx_encoder_set_vertex_buffer_with_layout(bgfx_encoder_t* _this, byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
/**
* Set vertex buffer for draw primitive.
@@ -1381,11 +1391,20 @@ version(BindBgfx_Static)
* _handle = Dynamic vertex buffer.
* _startVertex = First vertex to render.
* _numVertices = Number of vertices to render.
- * _layoutHandle = Vertex layout for aliasing vertex buffer. If invalid
- * handle is used, vertex layout used for creation
- * of vertex buffer will be used.
*/
- void bgfx_encoder_set_dynamic_vertex_buffer(bgfx_encoder_t* _this, byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void bgfx_encoder_set_dynamic_vertex_buffer(bgfx_encoder_t* _this, byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices);
+
+ void bgfx_encoder_set_dynamic_vertex_buffer_with_layout(bgfx_encoder_t* _this, byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _tvb = Transient vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ */
+ void bgfx_encoder_set_transient_vertex_buffer(bgfx_encoder_t* _this, byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices);
/**
* Set vertex buffer for draw primitive.
@@ -1398,7 +1417,7 @@ version(BindBgfx_Static)
* handle is used, vertex layout used for creation
* of vertex buffer will be used.
*/
- void bgfx_encoder_set_transient_vertex_buffer(bgfx_encoder_t* _this, byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void bgfx_encoder_set_transient_vertex_buffer_with_layout(bgfx_encoder_t* _this, byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
/**
* Set number of vertices for auto generated vertices use in conjuction
@@ -1833,6 +1852,16 @@ version(BindBgfx_Static)
*/
void bgfx_set_transient_index_buffer(const(bgfx_transient_index_buffer_t)* _tib, uint _firstIndex, uint _numIndices);
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _handle = Vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ */
+ void bgfx_set_vertex_buffer(byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices);
+
/**
* Set vertex buffer for draw primitive.
* Params:
@@ -1844,7 +1873,17 @@ version(BindBgfx_Static)
* handle is used, vertex layout used for creation
* of vertex buffer will be used.
*/
- void bgfx_set_vertex_buffer(byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void bgfx_set_vertex_buffer_with_layout(byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _handle = Dynamic vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ */
+ void bgfx_set_dynamic_vertex_buffer(byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices);
/**
* Set vertex buffer for draw primitive.
@@ -1857,7 +1896,7 @@ version(BindBgfx_Static)
* handle is used, vertex layout used for creation
* of vertex buffer will be used.
*/
- void bgfx_set_dynamic_vertex_buffer(byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void bgfx_set_dynamic_vertex_buffer_with_layout(byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
/**
* Set vertex buffer for draw primitive.
@@ -1869,6 +1908,19 @@ version(BindBgfx_Static)
*/
void bgfx_set_transient_vertex_buffer(byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices);
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _tvb = Transient vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ * _layoutHandle = Vertex layout for aliasing vertex buffer. If invalid
+ * handle is used, vertex layout used for creation
+ * of vertex buffer will be used.
+ */
+ void bgfx_set_transient_vertex_buffer_with_layout(byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+
/**
* Set number of vertices for auto generated vertices use in conjuction
* with gl_VertexID.
@@ -3561,6 +3613,17 @@ else
alias da_bgfx_encoder_set_transient_index_buffer = void function(bgfx_encoder_t* _this, const(bgfx_transient_index_buffer_t)* _tib, uint _firstIndex, uint _numIndices);
da_bgfx_encoder_set_transient_index_buffer bgfx_encoder_set_transient_index_buffer;
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _handle = Vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ */
+ alias da_bgfx_encoder_set_vertex_buffer = void function(bgfx_encoder_t* _this, byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices);
+ da_bgfx_encoder_set_vertex_buffer bgfx_encoder_set_vertex_buffer;
+
/**
* Set vertex buffer for draw primitive.
* Params:
@@ -3572,8 +3635,8 @@ else
* handle is used, vertex layout used for creation
* of vertex buffer will be used.
*/
- alias da_bgfx_encoder_set_vertex_buffer = void function(bgfx_encoder_t* _this, byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
- da_bgfx_encoder_set_vertex_buffer bgfx_encoder_set_vertex_buffer;
+ alias da_bgfx_encoder_set_vertex_buffer_with_layout = void function(bgfx_encoder_t* _this, byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ da_bgfx_encoder_set_vertex_buffer_with_layout bgfx_encoder_set_vertex_buffer_with_layout;
/**
* Set vertex buffer for draw primitive.
@@ -3582,13 +3645,24 @@ else
* _handle = Dynamic vertex buffer.
* _startVertex = First vertex to render.
* _numVertices = Number of vertices to render.
- * _layoutHandle = Vertex layout for aliasing vertex buffer. If invalid
- * handle is used, vertex layout used for creation
- * of vertex buffer will be used.
*/
- alias da_bgfx_encoder_set_dynamic_vertex_buffer = void function(bgfx_encoder_t* _this, byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ alias da_bgfx_encoder_set_dynamic_vertex_buffer = void function(bgfx_encoder_t* _this, byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices);
da_bgfx_encoder_set_dynamic_vertex_buffer bgfx_encoder_set_dynamic_vertex_buffer;
+ alias da_bgfx_encoder_set_dynamic_vertex_buffer_with_layout = void function(bgfx_encoder_t* _this, byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ da_bgfx_encoder_set_dynamic_vertex_buffer_with_layout bgfx_encoder_set_dynamic_vertex_buffer_with_layout;
+
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _tvb = Transient vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ */
+ alias da_bgfx_encoder_set_transient_vertex_buffer = void function(bgfx_encoder_t* _this, byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices);
+ da_bgfx_encoder_set_transient_vertex_buffer bgfx_encoder_set_transient_vertex_buffer;
+
/**
* Set vertex buffer for draw primitive.
* Params:
@@ -3600,8 +3674,8 @@ else
* handle is used, vertex layout used for creation
* of vertex buffer will be used.
*/
- alias da_bgfx_encoder_set_transient_vertex_buffer = void function(bgfx_encoder_t* _this, byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
- da_bgfx_encoder_set_transient_vertex_buffer bgfx_encoder_set_transient_vertex_buffer;
+ alias da_bgfx_encoder_set_transient_vertex_buffer_with_layout = void function(bgfx_encoder_t* _this, byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ da_bgfx_encoder_set_transient_vertex_buffer_with_layout bgfx_encoder_set_transient_vertex_buffer_with_layout;
/**
* Set number of vertices for auto generated vertices use in conjuction
@@ -4075,6 +4149,17 @@ else
alias da_bgfx_set_transient_index_buffer = void function(const(bgfx_transient_index_buffer_t)* _tib, uint _firstIndex, uint _numIndices);
da_bgfx_set_transient_index_buffer bgfx_set_transient_index_buffer;
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _handle = Vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ */
+ alias da_bgfx_set_vertex_buffer = void function(byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices);
+ da_bgfx_set_vertex_buffer bgfx_set_vertex_buffer;
+
/**
* Set vertex buffer for draw primitive.
* Params:
@@ -4086,8 +4171,19 @@ else
* handle is used, vertex layout used for creation
* of vertex buffer will be used.
*/
- alias da_bgfx_set_vertex_buffer = void function(byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
- da_bgfx_set_vertex_buffer bgfx_set_vertex_buffer;
+ alias da_bgfx_set_vertex_buffer_with_layout = void function(byte _stream, bgfx_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ da_bgfx_set_vertex_buffer_with_layout bgfx_set_vertex_buffer_with_layout;
+
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _handle = Dynamic vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ */
+ alias da_bgfx_set_dynamic_vertex_buffer = void function(byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices);
+ da_bgfx_set_dynamic_vertex_buffer bgfx_set_dynamic_vertex_buffer;
/**
* Set vertex buffer for draw primitive.
@@ -4100,8 +4196,8 @@ else
* handle is used, vertex layout used for creation
* of vertex buffer will be used.
*/
- alias da_bgfx_set_dynamic_vertex_buffer = void function(byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
- da_bgfx_set_dynamic_vertex_buffer bgfx_set_dynamic_vertex_buffer;
+ alias da_bgfx_set_dynamic_vertex_buffer_with_layout = void function(byte _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ da_bgfx_set_dynamic_vertex_buffer_with_layout bgfx_set_dynamic_vertex_buffer_with_layout;
/**
* Set vertex buffer for draw primitive.
@@ -4114,6 +4210,20 @@ else
alias da_bgfx_set_transient_vertex_buffer = void function(byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices);
da_bgfx_set_transient_vertex_buffer bgfx_set_transient_vertex_buffer;
+ /**
+ * Set vertex buffer for draw primitive.
+ * Params:
+ * _stream = Vertex stream.
+ * _tvb = Transient vertex buffer.
+ * _startVertex = First vertex to render.
+ * _numVertices = Number of vertices to render.
+ * _layoutHandle = Vertex layout for aliasing vertex buffer. If invalid
+ * handle is used, vertex layout used for creation
+ * of vertex buffer will be used.
+ */
+ alias da_bgfx_set_transient_vertex_buffer_with_layout = void function(byte _stream, const(bgfx_transient_vertex_buffer_t)* _tvb, uint _startVertex, uint _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ da_bgfx_set_transient_vertex_buffer_with_layout bgfx_set_transient_vertex_buffer_with_layout;
+
/**
* Set number of vertices for auto generated vertices use in conjuction
* with gl_VertexID.
diff --git a/bindings/d/types.d b/bindings/d/types.d
index 008677811..37c3f6d52 100644
--- a/bindings/d/types.d
+++ b/bindings/d/types.d
@@ -10,7 +10,7 @@ public import core.stdc.stdarg : va_list;
extern(C) @nogc nothrow:
-enum uint BGFX_API_VERSION = 108;
+enum uint BGFX_API_VERSION = 109;
alias bgfx_view_id_t = ushort;
diff --git a/include/bgfx/c99/bgfx.h b/include/bgfx/c99/bgfx.h
index a6137cc1e..d7b5efcc7 100644
--- a/include/bgfx/c99/bgfx.h
+++ b/include/bgfx/c99/bgfx.h
@@ -2462,6 +2462,17 @@ BGFX_C_API void bgfx_encoder_set_dynamic_index_buffer(bgfx_encoder_t* _this, bgf
*/
BGFX_C_API void bgfx_encoder_set_transient_index_buffer(bgfx_encoder_t* _this, const bgfx_transient_index_buffer_t* _tib, uint32_t _firstIndex, uint32_t _numIndices);
+/**
+ * Set vertex buffer for draw primitive.
+ *
+ * @param[in] _stream Vertex stream.
+ * @param[in] _handle Vertex buffer.
+ * @param[in] _startVertex First vertex to render.
+ * @param[in] _numVertices Number of vertices to render.
+ *
+ */
+BGFX_C_API void bgfx_encoder_set_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices);
+
/**
* Set vertex buffer for draw primitive.
*
@@ -2474,7 +2485,7 @@ BGFX_C_API void bgfx_encoder_set_transient_index_buffer(bgfx_encoder_t* _this, c
* of vertex buffer will be used.
*
*/
-BGFX_C_API void bgfx_encoder_set_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+BGFX_C_API void bgfx_encoder_set_vertex_buffer_with_layout(bgfx_encoder_t* _this, uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
/**
* Set vertex buffer for draw primitive.
@@ -2483,12 +2494,21 @@ BGFX_C_API void bgfx_encoder_set_vertex_buffer(bgfx_encoder_t* _this, uint8_t _s
* @param[in] _handle Dynamic vertex buffer.
* @param[in] _startVertex First vertex to render.
* @param[in] _numVertices Number of vertices to render.
- * @param[in] _layoutHandle Vertex layout for aliasing vertex buffer. If invalid
- * handle is used, vertex layout used for creation
- * of vertex buffer will be used.
*
*/
-BGFX_C_API void bgfx_encoder_set_dynamic_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+BGFX_C_API void bgfx_encoder_set_dynamic_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices);
+BGFX_C_API void bgfx_encoder_set_dynamic_vertex_buffer_with_layout(bgfx_encoder_t* _this, uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+
+/**
+ * Set vertex buffer for draw primitive.
+ *
+ * @param[in] _stream Vertex stream.
+ * @param[in] _tvb Transient vertex buffer.
+ * @param[in] _startVertex First vertex to render.
+ * @param[in] _numVertices Number of vertices to render.
+ *
+ */
+BGFX_C_API void bgfx_encoder_set_transient_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices);
/**
* Set vertex buffer for draw primitive.
@@ -2502,7 +2522,7 @@ BGFX_C_API void bgfx_encoder_set_dynamic_vertex_buffer(bgfx_encoder_t* _this, ui
* of vertex buffer will be used.
*
*/
-BGFX_C_API void bgfx_encoder_set_transient_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+BGFX_C_API void bgfx_encoder_set_transient_vertex_buffer_with_layout(bgfx_encoder_t* _this, uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
/**
* Set number of vertices for auto generated vertices use in conjuction
@@ -2993,6 +3013,17 @@ BGFX_C_API void bgfx_set_dynamic_index_buffer(bgfx_dynamic_index_buffer_handle_t
*/
BGFX_C_API void bgfx_set_transient_index_buffer(const bgfx_transient_index_buffer_t* _tib, uint32_t _firstIndex, uint32_t _numIndices);
+/**
+ * Set vertex buffer for draw primitive.
+ *
+ * @param[in] _stream Vertex stream.
+ * @param[in] _handle Vertex buffer.
+ * @param[in] _startVertex First vertex to render.
+ * @param[in] _numVertices Number of vertices to render.
+ *
+ */
+BGFX_C_API void bgfx_set_vertex_buffer(uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices);
+
/**
* Set vertex buffer for draw primitive.
*
@@ -3005,7 +3036,18 @@ BGFX_C_API void bgfx_set_transient_index_buffer(const bgfx_transient_index_buffe
* of vertex buffer will be used.
*
*/
-BGFX_C_API void bgfx_set_vertex_buffer(uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+BGFX_C_API void bgfx_set_vertex_buffer_with_layout(uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+
+/**
+ * Set vertex buffer for draw primitive.
+ *
+ * @param[in] _stream Vertex stream.
+ * @param[in] _handle Dynamic vertex buffer.
+ * @param[in] _startVertex First vertex to render.
+ * @param[in] _numVertices Number of vertices to render.
+ *
+ */
+BGFX_C_API void bgfx_set_dynamic_vertex_buffer(uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices);
/**
* Set vertex buffer for draw primitive.
@@ -3019,7 +3061,7 @@ BGFX_C_API void bgfx_set_vertex_buffer(uint8_t _stream, bgfx_vertex_buffer_handl
* of vertex buffer will be used.
*
*/
-BGFX_C_API void bgfx_set_dynamic_vertex_buffer(uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+BGFX_C_API void bgfx_set_dynamic_vertex_buffer_with_layout(uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
/**
* Set vertex buffer for draw primitive.
@@ -3032,6 +3074,20 @@ BGFX_C_API void bgfx_set_dynamic_vertex_buffer(uint8_t _stream, bgfx_dynamic_ver
*/
BGFX_C_API void bgfx_set_transient_vertex_buffer(uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices);
+/**
+ * Set vertex buffer for draw primitive.
+ *
+ * @param[in] _stream Vertex stream.
+ * @param[in] _tvb Transient vertex buffer.
+ * @param[in] _startVertex First vertex to render.
+ * @param[in] _numVertices Number of vertices to render.
+ * @param[in] _layoutHandle Vertex layout for aliasing vertex buffer. If invalid
+ * handle is used, vertex layout used for creation
+ * of vertex buffer will be used.
+ *
+ */
+BGFX_C_API void bgfx_set_transient_vertex_buffer_with_layout(uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+
/**
* Set number of vertices for auto generated vertices use in conjuction
* with gl_VertexID.
@@ -3396,8 +3452,11 @@ typedef enum bgfx_function_id
BGFX_FUNCTION_ID_ENCODER_SET_DYNAMIC_INDEX_BUFFER,
BGFX_FUNCTION_ID_ENCODER_SET_TRANSIENT_INDEX_BUFFER,
BGFX_FUNCTION_ID_ENCODER_SET_VERTEX_BUFFER,
+ BGFX_FUNCTION_ID_ENCODER_SET_VERTEX_BUFFER_WITH_LAYOUT,
BGFX_FUNCTION_ID_ENCODER_SET_DYNAMIC_VERTEX_BUFFER,
+ BGFX_FUNCTION_ID_ENCODER_SET_DYNAMIC_VERTEX_BUFFER_WITH_LAYOUT,
BGFX_FUNCTION_ID_ENCODER_SET_TRANSIENT_VERTEX_BUFFER,
+ BGFX_FUNCTION_ID_ENCODER_SET_TRANSIENT_VERTEX_BUFFER_WITH_LAYOUT,
BGFX_FUNCTION_ID_ENCODER_SET_VERTEX_COUNT,
BGFX_FUNCTION_ID_ENCODER_SET_INSTANCE_DATA_BUFFER,
BGFX_FUNCTION_ID_ENCODER_SET_INSTANCE_DATA_FROM_VERTEX_BUFFER,
@@ -3438,8 +3497,11 @@ typedef enum bgfx_function_id
BGFX_FUNCTION_ID_SET_DYNAMIC_INDEX_BUFFER,
BGFX_FUNCTION_ID_SET_TRANSIENT_INDEX_BUFFER,
BGFX_FUNCTION_ID_SET_VERTEX_BUFFER,
+ BGFX_FUNCTION_ID_SET_VERTEX_BUFFER_WITH_LAYOUT,
BGFX_FUNCTION_ID_SET_DYNAMIC_VERTEX_BUFFER,
+ BGFX_FUNCTION_ID_SET_DYNAMIC_VERTEX_BUFFER_WITH_LAYOUT,
BGFX_FUNCTION_ID_SET_TRANSIENT_VERTEX_BUFFER,
+ BGFX_FUNCTION_ID_SET_TRANSIENT_VERTEX_BUFFER_WITH_LAYOUT,
BGFX_FUNCTION_ID_SET_VERTEX_COUNT,
BGFX_FUNCTION_ID_SET_INSTANCE_DATA_BUFFER,
BGFX_FUNCTION_ID_SET_INSTANCE_DATA_FROM_VERTEX_BUFFER,
@@ -3588,9 +3650,12 @@ struct bgfx_interface_vtbl
void (*encoder_set_index_buffer)(bgfx_encoder_t* _this, bgfx_index_buffer_handle_t _handle, uint32_t _firstIndex, uint32_t _numIndices);
void (*encoder_set_dynamic_index_buffer)(bgfx_encoder_t* _this, bgfx_dynamic_index_buffer_handle_t _handle, uint32_t _firstIndex, uint32_t _numIndices);
void (*encoder_set_transient_index_buffer)(bgfx_encoder_t* _this, const bgfx_transient_index_buffer_t* _tib, uint32_t _firstIndex, uint32_t _numIndices);
- void (*encoder_set_vertex_buffer)(bgfx_encoder_t* _this, uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
- void (*encoder_set_dynamic_vertex_buffer)(bgfx_encoder_t* _this, uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
- void (*encoder_set_transient_vertex_buffer)(bgfx_encoder_t* _this, uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void (*encoder_set_vertex_buffer)(bgfx_encoder_t* _this, uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices);
+ void (*encoder_set_vertex_buffer_with_layout)(bgfx_encoder_t* _this, uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void (*encoder_set_dynamic_vertex_buffer)(bgfx_encoder_t* _this, uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices);
+ void (*encoder_set_dynamic_vertex_buffer_with_layout)(bgfx_encoder_t* _this, uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void (*encoder_set_transient_vertex_buffer)(bgfx_encoder_t* _this, uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices);
+ void (*encoder_set_transient_vertex_buffer_with_layout)(bgfx_encoder_t* _this, uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
void (*encoder_set_vertex_count)(bgfx_encoder_t* _this, uint32_t _numVertices);
void (*encoder_set_instance_data_buffer)(bgfx_encoder_t* _this, const bgfx_instance_data_buffer_t* _idb, uint32_t _start, uint32_t _num);
void (*encoder_set_instance_data_from_vertex_buffer)(bgfx_encoder_t* _this, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _num);
@@ -3630,9 +3695,12 @@ struct bgfx_interface_vtbl
void (*set_index_buffer)(bgfx_index_buffer_handle_t _handle, uint32_t _firstIndex, uint32_t _numIndices);
void (*set_dynamic_index_buffer)(bgfx_dynamic_index_buffer_handle_t _handle, uint32_t _firstIndex, uint32_t _numIndices);
void (*set_transient_index_buffer)(const bgfx_transient_index_buffer_t* _tib, uint32_t _firstIndex, uint32_t _numIndices);
- void (*set_vertex_buffer)(uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
- void (*set_dynamic_vertex_buffer)(uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void (*set_vertex_buffer)(uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices);
+ void (*set_vertex_buffer_with_layout)(uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
+ void (*set_dynamic_vertex_buffer)(uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices);
+ void (*set_dynamic_vertex_buffer_with_layout)(uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
void (*set_transient_vertex_buffer)(uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices);
+ void (*set_transient_vertex_buffer_with_layout)(uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle);
void (*set_vertex_count)(uint32_t _numVertices);
void (*set_instance_data_buffer)(const bgfx_instance_data_buffer_t* _idb, uint32_t _start, uint32_t _num);
void (*set_instance_data_from_vertex_buffer)(bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _num);
diff --git a/include/bgfx/defines.h b/include/bgfx/defines.h
index 96c48294b..7af964980 100644
--- a/include/bgfx/defines.h
+++ b/include/bgfx/defines.h
@@ -15,7 +15,7 @@
#ifndef BGFX_DEFINES_H_HEADER_GUARD
#define BGFX_DEFINES_H_HEADER_GUARD
-#define BGFX_API_VERSION UINT32_C(108)
+#define BGFX_API_VERSION UINT32_C(109)
/**
* Color RGB/alpha/depth write. When it's not specified write will be disabled.
diff --git a/scripts/bgfx.idl b/scripts/bgfx.idl
index efcb0b04b..6d6694960 100644
--- a/scripts/bgfx.idl
+++ b/scripts/bgfx.idl
@@ -1,7 +1,7 @@
-- vim: syntax=lua
-- bgfx interface
-version(108)
+version(109)
typedef "bool"
typedef "char"
@@ -2240,7 +2240,15 @@ func.Encoder.setVertexBuffer { cpponly }
.handle "VertexBufferHandle" --- Vertex buffer.
--- Set vertex buffer for draw primitive.
-func.Encoder.setVertexBuffer
+func.Encoder.setVertexBuffer { conly }
+ "void"
+ .stream "uint8_t" --- Vertex stream.
+ .handle "VertexBufferHandle" --- Vertex buffer.
+ .startVertex "uint32_t" --- First vertex to render.
+ .numVertices "uint32_t" --- Number of vertices to render.
+
+--- Set vertex buffer for draw primitive.
+func.Encoder.setVertexBuffer { cname = "set_vertex_buffer_with_layout" }
"void"
.stream "uint8_t" --- Vertex stream.
.handle "VertexBufferHandle" --- Vertex buffer.
@@ -2258,7 +2266,14 @@ func.Encoder.setVertexBuffer { cpponly }
.handle "DynamicVertexBufferHandle" --- Dynamic vertex buffer.
--- Set vertex buffer for draw primitive.
-func.Encoder.setVertexBuffer { cname = "set_dynamic_vertex_buffer" }
+func.Encoder.setVertexBuffer { conly, cname = "set_dynamic_vertex_buffer" }
+ "void"
+ .stream "uint8_t" --- Vertex stream.
+ .handle "DynamicVertexBufferHandle" --- Dynamic vertex buffer.
+ .startVertex "uint32_t" --- First vertex to render.
+ .numVertices "uint32_t" --- Number of vertices to render.
+
+func.Encoder.setVertexBuffer { cname = "set_dynamic_vertex_buffer_with_layout" }
"void"
.stream "uint8_t" --- Vertex stream.
.handle "DynamicVertexBufferHandle" --- Dynamic vertex buffer.
@@ -2276,7 +2291,15 @@ func.Encoder.setVertexBuffer { cpponly }
.tvb "const TransientVertexBuffer*" --- Transient vertex buffer.
--- Set vertex buffer for draw primitive.
-func.Encoder.setVertexBuffer { cname = "set_transient_vertex_buffer" }
+func.Encoder.setVertexBuffer { conly, cname = "set_transient_vertex_buffer" }
+ "void"
+ .stream "uint8_t" --- Vertex stream.
+ .tvb "const TransientVertexBuffer*" --- Transient vertex buffer.
+ .startVertex "uint32_t" --- First vertex to render.
+ .numVertices "uint32_t" --- Number of vertices to render.
+
+--- Set vertex buffer for draw primitive.
+func.Encoder.setVertexBuffer { cname = "set_transient_vertex_buffer_with_layout" }
"void"
.stream "uint8_t" --- Vertex stream.
.tvb "const TransientVertexBuffer*" --- Transient vertex buffer.
@@ -2770,7 +2793,15 @@ func.setVertexBuffer { cpponly }
.handle "VertexBufferHandle" --- Vertex buffer.
--- Set vertex buffer for draw primitive.
-func.setVertexBuffer
+func.setVertexBuffer { conly }
+ "void"
+ .stream "uint8_t" --- Vertex stream.
+ .handle "VertexBufferHandle" --- Vertex buffer.
+ .startVertex "uint32_t" --- First vertex to render.
+ .numVertices "uint32_t" --- Number of vertices to render.
+
+--- Set vertex buffer for draw primitive.
+func.setVertexBuffer { cname = "set_vertex_buffer_with_layout" }
"void"
.stream "uint8_t" --- Vertex stream.
.handle "VertexBufferHandle" --- Vertex buffer.
@@ -2788,7 +2819,15 @@ func.setVertexBuffer { cpponly }
.handle "DynamicVertexBufferHandle" --- Dynamic vertex buffer.
--- Set vertex buffer for draw primitive.
-func.setVertexBuffer { cname = "set_dynamic_vertex_buffer" }
+func.setVertexBuffer { conly, cname = "set_dynamic_vertex_buffer" }
+ "void"
+ .stream "uint8_t" --- Vertex stream.
+ .handle "DynamicVertexBufferHandle" --- Dynamic vertex buffer.
+ .startVertex "uint32_t" --- First vertex to render.
+ .numVertices "uint32_t" --- Number of vertices to render.
+
+--- Set vertex buffer for draw primitive.
+func.setVertexBuffer { cname = "set_dynamic_vertex_buffer_with_layout" }
"void"
.stream "uint8_t" --- Vertex stream.
.handle "DynamicVertexBufferHandle" --- Dynamic vertex buffer.
@@ -2807,13 +2846,25 @@ func.setVertexBuffer { cpponly }
.tvb "const TransientVertexBuffer*" --- Transient vertex buffer.
--- Set vertex buffer for draw primitive.
-func.setVertexBuffer { cname = "set_transient_vertex_buffer" }
+func.setVertexBuffer { conly, cname = "set_transient_vertex_buffer" }
"void"
.stream "uint8_t" --- Vertex stream.
.tvb "const TransientVertexBuffer*" --- Transient vertex buffer.
.startVertex "uint32_t" --- First vertex to render.
.numVertices "uint32_t" --- Number of vertices to render.
+--- Set vertex buffer for draw primitive.
+func.setVertexBuffer { cname = "set_transient_vertex_buffer_with_layout" }
+ "void"
+ .stream "uint8_t" --- Vertex stream.
+ .tvb "const TransientVertexBuffer*" --- Transient vertex buffer.
+ .startVertex "uint32_t" --- First vertex to render.
+ .numVertices "uint32_t" --- Number of vertices to render.
+ .layoutHandle "VertexLayoutHandle" --- Vertex layout for aliasing vertex buffer. If invalid
+ --- handle is used, vertex layout used for creation
+ --- of vertex buffer will be used.
+ { default = "BGFX_INVALID_HANDLE" }
+
--- Set number of vertices for auto generated vertices use in conjuction
--- with gl_VertexID.
---
diff --git a/src/bgfx.idl.inl b/src/bgfx.idl.inl
index a9b358801..b2632f51c 100644
--- a/src/bgfx.idl.inl
+++ b/src/bgfx.idl.inl
@@ -768,7 +768,14 @@ BGFX_C_API void bgfx_encoder_set_transient_index_buffer(bgfx_encoder_t* _this, c
This->setIndexBuffer((const bgfx::TransientIndexBuffer*)_tib, _firstIndex, _numIndices);
}
-BGFX_C_API void bgfx_encoder_set_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
+BGFX_C_API void bgfx_encoder_set_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices)
+{
+ bgfx::Encoder* This = (bgfx::Encoder*)_this;
+ union { bgfx_vertex_buffer_handle_t c; bgfx::VertexBufferHandle cpp; } handle = { _handle };
+ This->setVertexBuffer(_stream, handle.cpp, _startVertex, _numVertices);
+}
+
+BGFX_C_API void bgfx_encoder_set_vertex_buffer_with_layout(bgfx_encoder_t* _this, uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
{
bgfx::Encoder* This = (bgfx::Encoder*)_this;
union { bgfx_vertex_buffer_handle_t c; bgfx::VertexBufferHandle cpp; } handle = { _handle };
@@ -776,7 +783,14 @@ BGFX_C_API void bgfx_encoder_set_vertex_buffer(bgfx_encoder_t* _this, uint8_t _s
This->setVertexBuffer(_stream, handle.cpp, _startVertex, _numVertices, layoutHandle.cpp);
}
-BGFX_C_API void bgfx_encoder_set_dynamic_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
+BGFX_C_API void bgfx_encoder_set_dynamic_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices)
+{
+ bgfx::Encoder* This = (bgfx::Encoder*)_this;
+ union { bgfx_dynamic_vertex_buffer_handle_t c; bgfx::DynamicVertexBufferHandle cpp; } handle = { _handle };
+ This->setVertexBuffer(_stream, handle.cpp, _startVertex, _numVertices);
+}
+
+BGFX_C_API void bgfx_encoder_set_dynamic_vertex_buffer_with_layout(bgfx_encoder_t* _this, uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
{
bgfx::Encoder* This = (bgfx::Encoder*)_this;
union { bgfx_dynamic_vertex_buffer_handle_t c; bgfx::DynamicVertexBufferHandle cpp; } handle = { _handle };
@@ -784,7 +798,13 @@ BGFX_C_API void bgfx_encoder_set_dynamic_vertex_buffer(bgfx_encoder_t* _this, ui
This->setVertexBuffer(_stream, handle.cpp, _startVertex, _numVertices, layoutHandle.cpp);
}
-BGFX_C_API void bgfx_encoder_set_transient_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
+BGFX_C_API void bgfx_encoder_set_transient_vertex_buffer(bgfx_encoder_t* _this, uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices)
+{
+ bgfx::Encoder* This = (bgfx::Encoder*)_this;
+ This->setVertexBuffer(_stream, (const bgfx::TransientVertexBuffer*)_tvb, _startVertex, _numVertices);
+}
+
+BGFX_C_API void bgfx_encoder_set_transient_vertex_buffer_with_layout(bgfx_encoder_t* _this, uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
{
bgfx::Encoder* This = (bgfx::Encoder*)_this;
union { bgfx_vertex_layout_handle_t c; bgfx::VertexLayoutHandle cpp; } layoutHandle = { _layoutHandle };
@@ -1034,14 +1054,26 @@ BGFX_C_API void bgfx_set_transient_index_buffer(const bgfx_transient_index_buffe
bgfx::setIndexBuffer((const bgfx::TransientIndexBuffer*)_tib, _firstIndex, _numIndices);
}
-BGFX_C_API void bgfx_set_vertex_buffer(uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
+BGFX_C_API void bgfx_set_vertex_buffer(uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices)
+{
+ union { bgfx_vertex_buffer_handle_t c; bgfx::VertexBufferHandle cpp; } handle = { _handle };
+ bgfx::setVertexBuffer(_stream, handle.cpp, _startVertex, _numVertices);
+}
+
+BGFX_C_API void bgfx_set_vertex_buffer_with_layout(uint8_t _stream, bgfx_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
{
union { bgfx_vertex_buffer_handle_t c; bgfx::VertexBufferHandle cpp; } handle = { _handle };
union { bgfx_vertex_layout_handle_t c; bgfx::VertexLayoutHandle cpp; } layoutHandle = { _layoutHandle };
bgfx::setVertexBuffer(_stream, handle.cpp, _startVertex, _numVertices, layoutHandle.cpp);
}
-BGFX_C_API void bgfx_set_dynamic_vertex_buffer(uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
+BGFX_C_API void bgfx_set_dynamic_vertex_buffer(uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices)
+{
+ union { bgfx_dynamic_vertex_buffer_handle_t c; bgfx::DynamicVertexBufferHandle cpp; } handle = { _handle };
+ bgfx::setVertexBuffer(_stream, handle.cpp, _startVertex, _numVertices);
+}
+
+BGFX_C_API void bgfx_set_dynamic_vertex_buffer_with_layout(uint8_t _stream, bgfx_dynamic_vertex_buffer_handle_t _handle, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
{
union { bgfx_dynamic_vertex_buffer_handle_t c; bgfx::DynamicVertexBufferHandle cpp; } handle = { _handle };
union { bgfx_vertex_layout_handle_t c; bgfx::VertexLayoutHandle cpp; } layoutHandle = { _layoutHandle };
@@ -1053,6 +1085,12 @@ BGFX_C_API void bgfx_set_transient_vertex_buffer(uint8_t _stream, const bgfx_tra
bgfx::setVertexBuffer(_stream, (const bgfx::TransientVertexBuffer*)_tvb, _startVertex, _numVertices);
}
+BGFX_C_API void bgfx_set_transient_vertex_buffer_with_layout(uint8_t _stream, const bgfx_transient_vertex_buffer_t* _tvb, uint32_t _startVertex, uint32_t _numVertices, bgfx_vertex_layout_handle_t _layoutHandle)
+{
+ union { bgfx_vertex_layout_handle_t c; bgfx::VertexLayoutHandle cpp; } layoutHandle = { _layoutHandle };
+ bgfx::setVertexBuffer(_stream, (const bgfx::TransientVertexBuffer*)_tvb, _startVertex, _numVertices, layoutHandle.cpp);
+}
+
BGFX_C_API void bgfx_set_vertex_count(uint32_t _numVertices)
{
bgfx::setVertexCount(_numVertices);
@@ -1334,8 +1372,11 @@ BGFX_C_API bgfx_interface_vtbl_t* bgfx_get_interface(uint32_t _version)
bgfx_encoder_set_dynamic_index_buffer,
bgfx_encoder_set_transient_index_buffer,
bgfx_encoder_set_vertex_buffer,
+ bgfx_encoder_set_vertex_buffer_with_layout,
bgfx_encoder_set_dynamic_vertex_buffer,
+ bgfx_encoder_set_dynamic_vertex_buffer_with_layout,
bgfx_encoder_set_transient_vertex_buffer,
+ bgfx_encoder_set_transient_vertex_buffer_with_layout,
bgfx_encoder_set_vertex_count,
bgfx_encoder_set_instance_data_buffer,
bgfx_encoder_set_instance_data_from_vertex_buffer,
@@ -1376,8 +1417,11 @@ BGFX_C_API bgfx_interface_vtbl_t* bgfx_get_interface(uint32_t _version)
bgfx_set_dynamic_index_buffer,
bgfx_set_transient_index_buffer,
bgfx_set_vertex_buffer,
+ bgfx_set_vertex_buffer_with_layout,
bgfx_set_dynamic_vertex_buffer,
+ bgfx_set_dynamic_vertex_buffer_with_layout,
bgfx_set_transient_vertex_buffer,
+ bgfx_set_transient_vertex_buffer_with_layout,
bgfx_set_vertex_count,
bgfx_set_instance_data_buffer,
bgfx_set_instance_data_from_vertex_buffer,