Răsfoiți Sursa

Sorted caps.

Бранимир Караџић 1 an în urmă
părinte
comite
2529e1abc7
7 a modificat fișierele cu 183 adăugiri și 182 ștergeri
  1. 43 43
      bindings/bf/bgfx.bf
  2. 43 43
      bindings/cs/bgfx.cs
  3. 26 26
      bindings/d/package.d
  4. 36 36
      bindings/zig/bgfx.zig
  5. 25 25
      include/bgfx/defines.h
  6. 8 7
      scripts/bgfx.idl
  7. 2 2
      src/version.h

+ 43 - 43
bindings/bf/bgfx.bf

@@ -1036,136 +1036,136 @@ public static class bgfx
 		/// </summary>
 		DrawIndirect           = 0x0000000000000010,
 	
+		/// <summary>
+		/// Draw indirect with indirect count is supported.
+		/// </summary>
+		DrawIndirectCount      = 0x0000000000000020,
+	
 		/// <summary>
 		/// Fragment depth is available in fragment shader.
 		/// </summary>
-		FragmentDepth          = 0x0000000000000020,
+		FragmentDepth          = 0x0000000000000040,
 	
 		/// <summary>
 		/// Fragment ordering is available in fragment shader.
 		/// </summary>
-		FragmentOrdering       = 0x0000000000000040,
+		FragmentOrdering       = 0x0000000000000080,
 	
 		/// <summary>
 		/// Graphics debugger is present.
 		/// </summary>
-		GraphicsDebugger       = 0x0000000000000080,
+		GraphicsDebugger       = 0x0000000000000100,
 	
 		/// <summary>
 		/// HDR10 rendering is supported.
 		/// </summary>
-		Hdr10                  = 0x0000000000000100,
+		Hdr10                  = 0x0000000000000200,
 	
 		/// <summary>
 		/// HiDPI rendering is supported.
 		/// </summary>
-		Hidpi                  = 0x0000000000000200,
+		Hidpi                  = 0x0000000000000400,
 	
 		/// <summary>
 		/// Image Read/Write is supported.
 		/// </summary>
-		ImageRw                = 0x0000000000000400,
+		ImageRw                = 0x0000000000000800,
 	
 		/// <summary>
 		/// 32-bit indices are supported.
 		/// </summary>
-		Index32                = 0x0000000000000800,
+		Index32                = 0x0000000000001000,
 	
 		/// <summary>
 		/// Instancing is supported.
 		/// </summary>
-		Instancing             = 0x0000000000001000,
+		Instancing             = 0x0000000000002000,
 	
 		/// <summary>
 		/// Occlusion query is supported.
 		/// </summary>
-		OcclusionQuery         = 0x0000000000002000,
+		OcclusionQuery         = 0x0000000000004000,
 	
 		/// <summary>
-		/// Renderer is on separate thread.
-		/// </summary>
-		RendererMultithreaded  = 0x0000000000004000,
-	
-		/// <summary>
-		/// Multiple windows are supported.
+		/// PrimitiveID is available in fragment shader.
 		/// </summary>
-		SwapChain              = 0x0000000000008000,
+		PrimitiveId            = 0x0000000000008000,
 	
 		/// <summary>
-		/// 2D texture array is supported.
+		/// Renderer is on separate thread.
 		/// </summary>
-		Texture2dArray         = 0x0000000000010000,
+		RendererMultithreaded  = 0x0000000000010000,
 	
 		/// <summary>
-		/// 3D textures are supported.
+		/// Multiple windows are supported.
 		/// </summary>
-		Texture3d              = 0x0000000000020000,
+		SwapChain              = 0x0000000000020000,
 	
 		/// <summary>
 		/// Texture blit is supported.
 		/// </summary>
 		TextureBlit            = 0x0000000000040000,
 	
-		/// <summary>
-		/// Transparent back buffer supported.
-		/// </summary>
-		TransparentBackbuffer  = 0x0000000000080000,
-		TextureCompareReserved = 0x0000000000100000,
-	
 		/// <summary>
 		/// Texture compare less equal mode is supported.
 		/// </summary>
-		TextureCompareLequal   = 0x0000000000200000,
+		TextureCompareLequal   = 0x0000000000080000,
+		TextureCompareReserved = 0x0000000000100000,
 	
 		/// <summary>
 		/// Cubemap texture array is supported.
 		/// </summary>
-		TextureCubeArray       = 0x0000000000400000,
+		TextureCubeArray       = 0x0000000000200000,
 	
 		/// <summary>
 		/// CPU direct access to GPU texture memory.
 		/// </summary>
-		TextureDirectAccess    = 0x0000000000800000,
+		TextureDirectAccess    = 0x0000000000400000,
 	
 		/// <summary>
 		/// Read-back texture is supported.
 		/// </summary>
-		TextureReadBack        = 0x0000000001000000,
+		TextureReadBack        = 0x0000000000800000,
 	
 		/// <summary>
-		/// Vertex attribute half-float is supported.
+		/// 2D texture array is supported.
 		/// </summary>
-		VertexAttribHalf       = 0x0000000002000000,
+		Texture2dArray         = 0x0000000001000000,
 	
 		/// <summary>
-		/// Vertex attribute 10_10_10_2 is supported.
+		/// 3D textures are supported.
 		/// </summary>
-		VertexAttribUint10     = 0x0000000004000000,
+		Texture3d              = 0x0000000002000000,
 	
 		/// <summary>
-		/// Rendering with VertexID only is supported.
+		/// Transparent back buffer supported.
 		/// </summary>
-		VertexId               = 0x0000000008000000,
+		TransparentBackbuffer  = 0x0000000004000000,
 	
 		/// <summary>
-		/// PrimitiveID is available in fragment shader.
+		/// Vertex attribute half-float is supported.
 		/// </summary>
-		PrimitiveId            = 0x0000000010000000,
+		VertexAttribHalf       = 0x0000000008000000,
 	
 		/// <summary>
-		/// Viewport layer is available in vertex shader.
+		/// Vertex attribute 10_10_10_2 is supported.
 		/// </summary>
-		ViewportLayerArray     = 0x0000000020000000,
+		VertexAttribUint10     = 0x0000000010000000,
 	
 		/// <summary>
-		/// Draw indirect with indirect count is supported.
+		/// Rendering with VertexID only is supported.
+		/// </summary>
+		VertexId               = 0x0000000020000000,
+	
+		/// <summary>
+		/// Viewport layer is available in vertex shader.
 		/// </summary>
-		DrawIndirectCount      = 0x0000000040000000,
+		ViewportLayerArray     = 0x0000000040000000,
 	
 		/// <summary>
 		/// All texture compare modes are supported.
 		/// </summary>
-		TextureCompareAll      = 0x0000000000300000,
+		TextureCompareAll      = 0x0000000000180000,
 	}
 	
 	[AllowDuplicates]

+ 43 - 43
bindings/cs/bgfx.cs

@@ -1035,136 +1035,136 @@ public static partial class bgfx
 		/// </summary>
 		DrawIndirect           = 0x0000000000000010,
 	
+		/// <summary>
+		/// Draw indirect with indirect count is supported.
+		/// </summary>
+		DrawIndirectCount      = 0x0000000000000020,
+	
 		/// <summary>
 		/// Fragment depth is available in fragment shader.
 		/// </summary>
-		FragmentDepth          = 0x0000000000000020,
+		FragmentDepth          = 0x0000000000000040,
 	
 		/// <summary>
 		/// Fragment ordering is available in fragment shader.
 		/// </summary>
-		FragmentOrdering       = 0x0000000000000040,
+		FragmentOrdering       = 0x0000000000000080,
 	
 		/// <summary>
 		/// Graphics debugger is present.
 		/// </summary>
-		GraphicsDebugger       = 0x0000000000000080,
+		GraphicsDebugger       = 0x0000000000000100,
 	
 		/// <summary>
 		/// HDR10 rendering is supported.
 		/// </summary>
-		Hdr10                  = 0x0000000000000100,
+		Hdr10                  = 0x0000000000000200,
 	
 		/// <summary>
 		/// HiDPI rendering is supported.
 		/// </summary>
-		Hidpi                  = 0x0000000000000200,
+		Hidpi                  = 0x0000000000000400,
 	
 		/// <summary>
 		/// Image Read/Write is supported.
 		/// </summary>
-		ImageRw                = 0x0000000000000400,
+		ImageRw                = 0x0000000000000800,
 	
 		/// <summary>
 		/// 32-bit indices are supported.
 		/// </summary>
-		Index32                = 0x0000000000000800,
+		Index32                = 0x0000000000001000,
 	
 		/// <summary>
 		/// Instancing is supported.
 		/// </summary>
-		Instancing             = 0x0000000000001000,
+		Instancing             = 0x0000000000002000,
 	
 		/// <summary>
 		/// Occlusion query is supported.
 		/// </summary>
-		OcclusionQuery         = 0x0000000000002000,
+		OcclusionQuery         = 0x0000000000004000,
 	
 		/// <summary>
-		/// Renderer is on separate thread.
-		/// </summary>
-		RendererMultithreaded  = 0x0000000000004000,
-	
-		/// <summary>
-		/// Multiple windows are supported.
+		/// PrimitiveID is available in fragment shader.
 		/// </summary>
-		SwapChain              = 0x0000000000008000,
+		PrimitiveId            = 0x0000000000008000,
 	
 		/// <summary>
-		/// 2D texture array is supported.
+		/// Renderer is on separate thread.
 		/// </summary>
-		Texture2dArray         = 0x0000000000010000,
+		RendererMultithreaded  = 0x0000000000010000,
 	
 		/// <summary>
-		/// 3D textures are supported.
+		/// Multiple windows are supported.
 		/// </summary>
-		Texture3d              = 0x0000000000020000,
+		SwapChain              = 0x0000000000020000,
 	
 		/// <summary>
 		/// Texture blit is supported.
 		/// </summary>
 		TextureBlit            = 0x0000000000040000,
 	
-		/// <summary>
-		/// Transparent back buffer supported.
-		/// </summary>
-		TransparentBackbuffer  = 0x0000000000080000,
-		TextureCompareReserved = 0x0000000000100000,
-	
 		/// <summary>
 		/// Texture compare less equal mode is supported.
 		/// </summary>
-		TextureCompareLequal   = 0x0000000000200000,
+		TextureCompareLequal   = 0x0000000000080000,
+		TextureCompareReserved = 0x0000000000100000,
 	
 		/// <summary>
 		/// Cubemap texture array is supported.
 		/// </summary>
-		TextureCubeArray       = 0x0000000000400000,
+		TextureCubeArray       = 0x0000000000200000,
 	
 		/// <summary>
 		/// CPU direct access to GPU texture memory.
 		/// </summary>
-		TextureDirectAccess    = 0x0000000000800000,
+		TextureDirectAccess    = 0x0000000000400000,
 	
 		/// <summary>
 		/// Read-back texture is supported.
 		/// </summary>
-		TextureReadBack        = 0x0000000001000000,
+		TextureReadBack        = 0x0000000000800000,
 	
 		/// <summary>
-		/// Vertex attribute half-float is supported.
+		/// 2D texture array is supported.
 		/// </summary>
-		VertexAttribHalf       = 0x0000000002000000,
+		Texture2dArray         = 0x0000000001000000,
 	
 		/// <summary>
-		/// Vertex attribute 10_10_10_2 is supported.
+		/// 3D textures are supported.
 		/// </summary>
-		VertexAttribUint10     = 0x0000000004000000,
+		Texture3d              = 0x0000000002000000,
 	
 		/// <summary>
-		/// Rendering with VertexID only is supported.
+		/// Transparent back buffer supported.
 		/// </summary>
-		VertexId               = 0x0000000008000000,
+		TransparentBackbuffer  = 0x0000000004000000,
 	
 		/// <summary>
-		/// PrimitiveID is available in fragment shader.
+		/// Vertex attribute half-float is supported.
 		/// </summary>
-		PrimitiveId            = 0x0000000010000000,
+		VertexAttribHalf       = 0x0000000008000000,
 	
 		/// <summary>
-		/// Viewport layer is available in vertex shader.
+		/// Vertex attribute 10_10_10_2 is supported.
 		/// </summary>
-		ViewportLayerArray     = 0x0000000020000000,
+		VertexAttribUint10     = 0x0000000010000000,
 	
 		/// <summary>
-		/// Draw indirect with indirect count is supported.
+		/// Rendering with VertexID only is supported.
+		/// </summary>
+		VertexId               = 0x0000000020000000,
+	
+		/// <summary>
+		/// Viewport layer is available in vertex shader.
 		/// </summary>
-		DrawIndirectCount      = 0x0000000040000000,
+		ViewportLayerArray     = 0x0000000040000000,
 	
 		/// <summary>
 		/// All texture compare modes are supported.
 		/// </summary>
-		TextureCompareAll      = 0x0000000000300000,
+		TextureCompareAll      = 0x0000000000180000,
 	}
 	
 	[Flags]

+ 26 - 26
bindings/d/package.d

@@ -10,7 +10,7 @@ import bindbc.bgfx.config;
 import bindbc.common.types: c_int64, c_uint64, va_list;
 static import bgfx.fakeenum;
 
-enum uint apiVersion = 127;
+enum uint apiVersion = 128;
 
 alias ViewID = ushort;
 
@@ -497,33 +497,33 @@ enum CapFlags: CapFlags_{
 	compute                 = 0x0000_0000_0000_0004, ///Compute shaders are supported.
 	conservativeRaster      = 0x0000_0000_0000_0008, ///Conservative rasterization is supported.
 	drawIndirect            = 0x0000_0000_0000_0010, ///Draw indirect is supported.
-	fragmentDepth           = 0x0000_0000_0000_0020, ///Fragment depth is available in fragment shader.
-	fragmentOrdering        = 0x0000_0000_0000_0040, ///Fragment ordering is available in fragment shader.
-	graphicsDebugger        = 0x0000_0000_0000_0080, ///Graphics debugger is present.
-	hdr10                   = 0x0000_0000_0000_0100, ///HDR10 rendering is supported.
-	hiDPI                   = 0x0000_0000_0000_0200, ///HiDPI rendering is supported.
-	imageRW                 = 0x0000_0000_0000_0400, ///Image Read/Write is supported.
-	index32                 = 0x0000_0000_0000_0800, ///32-bit indices are supported.
-	instancing              = 0x0000_0000_0000_1000, ///Instancing is supported.
-	occlusionQuery          = 0x0000_0000_0000_2000, ///Occlusion query is supported.
-	rendererMultithreaded   = 0x0000_0000_0000_4000, ///Renderer is on separate thread.
-	swapChain               = 0x0000_0000_0000_8000, ///Multiple windows are supported.
-	texture2DArray          = 0x0000_0000_0001_0000, ///2D texture array is supported.
-	texture3D               = 0x0000_0000_0002_0000, ///3D textures are supported.
+	drawIndirectCount       = 0x0000_0000_0000_0020, ///Draw indirect with indirect count is supported.
+	fragmentDepth           = 0x0000_0000_0000_0040, ///Fragment depth is available in fragment shader.
+	fragmentOrdering        = 0x0000_0000_0000_0080, ///Fragment ordering is available in fragment shader.
+	graphicsDebugger        = 0x0000_0000_0000_0100, ///Graphics debugger is present.
+	hdr10                   = 0x0000_0000_0000_0200, ///HDR10 rendering is supported.
+	hiDPI                   = 0x0000_0000_0000_0400, ///HiDPI rendering is supported.
+	imageRW                 = 0x0000_0000_0000_0800, ///Image Read/Write is supported.
+	index32                 = 0x0000_0000_0000_1000, ///32-bit indices are supported.
+	instancing              = 0x0000_0000_0000_2000, ///Instancing is supported.
+	occlusionQuery          = 0x0000_0000_0000_4000, ///Occlusion query is supported.
+	primitiveID             = 0x0000_0000_0000_8000, ///PrimitiveID is available in fragment shader.
+	rendererMultithreaded   = 0x0000_0000_0001_0000, ///Renderer is on separate thread.
+	swapChain               = 0x0000_0000_0002_0000, ///Multiple windows are supported.
 	textureBlit             = 0x0000_0000_0004_0000, ///Texture blit is supported.
-	transparentBackbuffer   = 0x0000_0000_0008_0000, ///Transparent back buffer supported.
+	textureCompareLEqual    = 0x0000_0000_0008_0000, ///Texture compare less equal mode is supported.
 	textureCompareReserved  = 0x0000_0000_0010_0000,
-	textureCompareLEqual    = 0x0000_0000_0020_0000, ///Texture compare less equal mode is supported.
-	textureCubeArray        = 0x0000_0000_0040_0000, ///Cubemap texture array is supported.
-	textureDirectAccess     = 0x0000_0000_0080_0000, ///CPU direct access to GPU texture memory.
-	textureReadBack         = 0x0000_0000_0100_0000, ///Read-back texture is supported.
-	vertexAttribHalf        = 0x0000_0000_0200_0000, ///Vertex attribute half-float is supported.
-	vertexAttribUint10      = 0x0000_0000_0400_0000, ///Vertex attribute 10_10_10_2 is supported.
-	vertexID                = 0x0000_0000_0800_0000, ///Rendering with VertexID only is supported.
-	primitiveID             = 0x0000_0000_1000_0000, ///PrimitiveID is available in fragment shader.
-	viewportLayerArray      = 0x0000_0000_2000_0000, ///Viewport layer is available in vertex shader.
-	drawIndirectCount       = 0x0000_0000_4000_0000, ///Draw indirect with indirect count is supported.
-	textureCompareAll       = 0x0000_0000_0030_0000, ///All texture compare modes are supported.
+	textureCubeArray        = 0x0000_0000_0020_0000, ///Cubemap texture array is supported.
+	textureDirectAccess     = 0x0000_0000_0040_0000, ///CPU direct access to GPU texture memory.
+	textureReadBack         = 0x0000_0000_0080_0000, ///Read-back texture is supported.
+	texture2DArray          = 0x0000_0000_0100_0000, ///2D texture array is supported.
+	texture3D               = 0x0000_0000_0200_0000, ///3D textures are supported.
+	transparentBackbuffer   = 0x0000_0000_0400_0000, ///Transparent back buffer supported.
+	vertexAttribHalf        = 0x0000_0000_0800_0000, ///Vertex attribute half-float is supported.
+	vertexAttribUint10      = 0x0000_0000_1000_0000, ///Vertex attribute 10_10_10_2 is supported.
+	vertexID                = 0x0000_0000_2000_0000, ///Rendering with VertexID only is supported.
+	viewportLayerArray      = 0x0000_0000_4000_0000, ///Viewport layer is available in vertex shader.
+	textureCompareAll       = 0x0000_0000_0018_0000, ///All texture compare modes are supported.
 }
 
 alias CapsFormat_ = uint;

+ 36 - 36
bindings/zig/bgfx.zig

@@ -641,84 +641,84 @@ pub const CapsFlags_ConservativeRaster: CapsFlags     = 0x0000000000000008;
 /// Draw indirect is supported.
 pub const CapsFlags_DrawIndirect: CapsFlags           = 0x0000000000000010;
 
+/// Draw indirect with indirect count is supported.
+pub const CapsFlags_DrawIndirectCount: CapsFlags      = 0x0000000000000020;
+
 /// Fragment depth is available in fragment shader.
-pub const CapsFlags_FragmentDepth: CapsFlags          = 0x0000000000000020;
+pub const CapsFlags_FragmentDepth: CapsFlags          = 0x0000000000000040;
 
 /// Fragment ordering is available in fragment shader.
-pub const CapsFlags_FragmentOrdering: CapsFlags       = 0x0000000000000040;
+pub const CapsFlags_FragmentOrdering: CapsFlags       = 0x0000000000000080;
 
 /// Graphics debugger is present.
-pub const CapsFlags_GraphicsDebugger: CapsFlags       = 0x0000000000000080;
+pub const CapsFlags_GraphicsDebugger: CapsFlags       = 0x0000000000000100;
 
 /// HDR10 rendering is supported.
-pub const CapsFlags_Hdr10: CapsFlags                  = 0x0000000000000100;
+pub const CapsFlags_Hdr10: CapsFlags                  = 0x0000000000000200;
 
 /// HiDPI rendering is supported.
-pub const CapsFlags_Hidpi: CapsFlags                  = 0x0000000000000200;
+pub const CapsFlags_Hidpi: CapsFlags                  = 0x0000000000000400;
 
 /// Image Read/Write is supported.
-pub const CapsFlags_ImageRw: CapsFlags                = 0x0000000000000400;
+pub const CapsFlags_ImageRw: CapsFlags                = 0x0000000000000800;
 
 /// 32-bit indices are supported.
-pub const CapsFlags_Index32: CapsFlags                = 0x0000000000000800;
+pub const CapsFlags_Index32: CapsFlags                = 0x0000000000001000;
 
 /// Instancing is supported.
-pub const CapsFlags_Instancing: CapsFlags             = 0x0000000000001000;
+pub const CapsFlags_Instancing: CapsFlags             = 0x0000000000002000;
 
 /// Occlusion query is supported.
-pub const CapsFlags_OcclusionQuery: CapsFlags         = 0x0000000000002000;
+pub const CapsFlags_OcclusionQuery: CapsFlags         = 0x0000000000004000;
+
+/// PrimitiveID is available in fragment shader.
+pub const CapsFlags_PrimitiveId: CapsFlags            = 0x0000000000008000;
 
 /// Renderer is on separate thread.
-pub const CapsFlags_RendererMultithreaded: CapsFlags  = 0x0000000000004000;
+pub const CapsFlags_RendererMultithreaded: CapsFlags  = 0x0000000000010000;
 
 /// Multiple windows are supported.
-pub const CapsFlags_SwapChain: CapsFlags              = 0x0000000000008000;
-
-/// 2D texture array is supported.
-pub const CapsFlags_Texture2DArray: CapsFlags         = 0x0000000000010000;
-
-/// 3D textures are supported.
-pub const CapsFlags_Texture3D: CapsFlags              = 0x0000000000020000;
+pub const CapsFlags_SwapChain: CapsFlags              = 0x0000000000020000;
 
 /// Texture blit is supported.
 pub const CapsFlags_TextureBlit: CapsFlags            = 0x0000000000040000;
 
-/// Transparent back buffer supported.
-pub const CapsFlags_TransparentBackbuffer: CapsFlags  = 0x0000000000080000;
-pub const CapsFlags_TextureCompareReserved: CapsFlags = 0x0000000000100000;
-
 /// Texture compare less equal mode is supported.
-pub const CapsFlags_TextureCompareLequal: CapsFlags   = 0x0000000000200000;
+pub const CapsFlags_TextureCompareLequal: CapsFlags   = 0x0000000000080000;
+pub const CapsFlags_TextureCompareReserved: CapsFlags = 0x0000000000100000;
 
 /// Cubemap texture array is supported.
-pub const CapsFlags_TextureCubeArray: CapsFlags       = 0x0000000000400000;
+pub const CapsFlags_TextureCubeArray: CapsFlags       = 0x0000000000200000;
 
 /// CPU direct access to GPU texture memory.
-pub const CapsFlags_TextureDirectAccess: CapsFlags    = 0x0000000000800000;
+pub const CapsFlags_TextureDirectAccess: CapsFlags    = 0x0000000000400000;
 
 /// Read-back texture is supported.
-pub const CapsFlags_TextureReadBack: CapsFlags        = 0x0000000001000000;
+pub const CapsFlags_TextureReadBack: CapsFlags        = 0x0000000000800000;
+
+/// 2D texture array is supported.
+pub const CapsFlags_Texture2DArray: CapsFlags         = 0x0000000001000000;
+
+/// 3D textures are supported.
+pub const CapsFlags_Texture3D: CapsFlags              = 0x0000000002000000;
+
+/// Transparent back buffer supported.
+pub const CapsFlags_TransparentBackbuffer: CapsFlags  = 0x0000000004000000;
 
 /// Vertex attribute half-float is supported.
-pub const CapsFlags_VertexAttribHalf: CapsFlags       = 0x0000000002000000;
+pub const CapsFlags_VertexAttribHalf: CapsFlags       = 0x0000000008000000;
 
 /// Vertex attribute 10_10_10_2 is supported.
-pub const CapsFlags_VertexAttribUint10: CapsFlags     = 0x0000000004000000;
+pub const CapsFlags_VertexAttribUint10: CapsFlags     = 0x0000000010000000;
 
 /// Rendering with VertexID only is supported.
-pub const CapsFlags_VertexId: CapsFlags               = 0x0000000008000000;
-
-/// PrimitiveID is available in fragment shader.
-pub const CapsFlags_PrimitiveId: CapsFlags            = 0x0000000010000000;
+pub const CapsFlags_VertexId: CapsFlags               = 0x0000000020000000;
 
 /// Viewport layer is available in vertex shader.
-pub const CapsFlags_ViewportLayerArray: CapsFlags     = 0x0000000020000000;
-
-/// Draw indirect with indirect count is supported.
-pub const CapsFlags_DrawIndirectCount: CapsFlags      = 0x0000000040000000;
+pub const CapsFlags_ViewportLayerArray: CapsFlags     = 0x0000000040000000;
 
 /// All texture compare modes are supported.
-pub const CapsFlags_TextureCompareAll: CapsFlags      = 0x0000000000300000;
+pub const CapsFlags_TextureCompareAll: CapsFlags      = 0x0000000000180000;
 
 pub const CapsFormatFlags = u32;
 /// Texture format is not supported.

+ 25 - 25
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(127)
+#define BGFX_API_VERSION UINT32_C(128)
 
 /**
  * Color RGB/alpha/depth write. When it's not specified write will be disabled.
@@ -467,32 +467,32 @@
 #define BGFX_CAPS_COMPUTE                         UINT64_C(0x0000000000000004) //!< Compute shaders are supported.
 #define BGFX_CAPS_CONSERVATIVE_RASTER             UINT64_C(0x0000000000000008) //!< Conservative rasterization is supported.
 #define BGFX_CAPS_DRAW_INDIRECT                   UINT64_C(0x0000000000000010) //!< Draw indirect is supported.
-#define BGFX_CAPS_FRAGMENT_DEPTH                  UINT64_C(0x0000000000000020) //!< Fragment depth is available in fragment shader.
-#define BGFX_CAPS_FRAGMENT_ORDERING               UINT64_C(0x0000000000000040) //!< Fragment ordering is available in fragment shader.
-#define BGFX_CAPS_GRAPHICS_DEBUGGER               UINT64_C(0x0000000000000080) //!< Graphics debugger is present.
-#define BGFX_CAPS_HDR10                           UINT64_C(0x0000000000000100) //!< HDR10 rendering is supported.
-#define BGFX_CAPS_HIDPI                           UINT64_C(0x0000000000000200) //!< HiDPI rendering is supported.
-#define BGFX_CAPS_IMAGE_RW                        UINT64_C(0x0000000000000400) //!< Image Read/Write is supported.
-#define BGFX_CAPS_INDEX32                         UINT64_C(0x0000000000000800) //!< 32-bit indices are supported.
-#define BGFX_CAPS_INSTANCING                      UINT64_C(0x0000000000001000) //!< Instancing is supported.
-#define BGFX_CAPS_OCCLUSION_QUERY                 UINT64_C(0x0000000000002000) //!< Occlusion query is supported.
-#define BGFX_CAPS_RENDERER_MULTITHREADED          UINT64_C(0x0000000000004000) //!< Renderer is on separate thread.
-#define BGFX_CAPS_SWAP_CHAIN                      UINT64_C(0x0000000000008000) //!< Multiple windows are supported.
-#define BGFX_CAPS_TEXTURE_2D_ARRAY                UINT64_C(0x0000000000010000) //!< 2D texture array is supported.
-#define BGFX_CAPS_TEXTURE_3D                      UINT64_C(0x0000000000020000) //!< 3D textures are supported.
+#define BGFX_CAPS_DRAW_INDIRECT_COUNT             UINT64_C(0x0000000000000020) //!< Draw indirect with indirect count is supported.
+#define BGFX_CAPS_FRAGMENT_DEPTH                  UINT64_C(0x0000000000000040) //!< Fragment depth is available in fragment shader.
+#define BGFX_CAPS_FRAGMENT_ORDERING               UINT64_C(0x0000000000000080) //!< Fragment ordering is available in fragment shader.
+#define BGFX_CAPS_GRAPHICS_DEBUGGER               UINT64_C(0x0000000000000100) //!< Graphics debugger is present.
+#define BGFX_CAPS_HDR10                           UINT64_C(0x0000000000000200) //!< HDR10 rendering is supported.
+#define BGFX_CAPS_HIDPI                           UINT64_C(0x0000000000000400) //!< HiDPI rendering is supported.
+#define BGFX_CAPS_IMAGE_RW                        UINT64_C(0x0000000000000800) //!< Image Read/Write is supported.
+#define BGFX_CAPS_INDEX32                         UINT64_C(0x0000000000001000) //!< 32-bit indices are supported.
+#define BGFX_CAPS_INSTANCING                      UINT64_C(0x0000000000002000) //!< Instancing is supported.
+#define BGFX_CAPS_OCCLUSION_QUERY                 UINT64_C(0x0000000000004000) //!< Occlusion query is supported.
+#define BGFX_CAPS_PRIMITIVE_ID                    UINT64_C(0x0000000000008000) //!< PrimitiveID is available in fragment shader.
+#define BGFX_CAPS_RENDERER_MULTITHREADED          UINT64_C(0x0000000000010000) //!< Renderer is on separate thread.
+#define BGFX_CAPS_SWAP_CHAIN                      UINT64_C(0x0000000000020000) //!< Multiple windows are supported.
 #define BGFX_CAPS_TEXTURE_BLIT                    UINT64_C(0x0000000000040000) //!< Texture blit is supported.
-#define BGFX_CAPS_TRANSPARENT_BACKBUFFER          UINT64_C(0x0000000000080000) //!< Transparent back buffer supported.
+#define BGFX_CAPS_TEXTURE_COMPARE_LEQUAL          UINT64_C(0x0000000000080000) //!< Texture compare less equal mode is supported.
 #define BGFX_CAPS_TEXTURE_COMPARE_RESERVED        UINT64_C(0x0000000000100000)
-#define BGFX_CAPS_TEXTURE_COMPARE_LEQUAL          UINT64_C(0x0000000000200000) //!< Texture compare less equal mode is supported.
-#define BGFX_CAPS_TEXTURE_CUBE_ARRAY              UINT64_C(0x0000000000400000) //!< Cubemap texture array is supported.
-#define BGFX_CAPS_TEXTURE_DIRECT_ACCESS           UINT64_C(0x0000000000800000) //!< CPU direct access to GPU texture memory.
-#define BGFX_CAPS_TEXTURE_READ_BACK               UINT64_C(0x0000000001000000) //!< Read-back texture is supported.
-#define BGFX_CAPS_VERTEX_ATTRIB_HALF              UINT64_C(0x0000000002000000) //!< Vertex attribute half-float is supported.
-#define BGFX_CAPS_VERTEX_ATTRIB_UINT10            UINT64_C(0x0000000004000000) //!< Vertex attribute 10_10_10_2 is supported.
-#define BGFX_CAPS_VERTEX_ID                       UINT64_C(0x0000000008000000) //!< Rendering with VertexID only is supported.
-#define BGFX_CAPS_PRIMITIVE_ID                    UINT64_C(0x0000000010000000) //!< PrimitiveID is available in fragment shader.
-#define BGFX_CAPS_VIEWPORT_LAYER_ARRAY            UINT64_C(0x0000000020000000) //!< Viewport layer is available in vertex shader.
-#define BGFX_CAPS_DRAW_INDIRECT_COUNT             UINT64_C(0x0000000040000000) //!< Draw indirect with indirect count is supported.
+#define BGFX_CAPS_TEXTURE_CUBE_ARRAY              UINT64_C(0x0000000000200000) //!< Cubemap texture array is supported.
+#define BGFX_CAPS_TEXTURE_DIRECT_ACCESS           UINT64_C(0x0000000000400000) //!< CPU direct access to GPU texture memory.
+#define BGFX_CAPS_TEXTURE_READ_BACK               UINT64_C(0x0000000000800000) //!< Read-back texture is supported.
+#define BGFX_CAPS_TEXTURE_2D_ARRAY                UINT64_C(0x0000000001000000) //!< 2D texture array is supported.
+#define BGFX_CAPS_TEXTURE_3D                      UINT64_C(0x0000000002000000) //!< 3D textures are supported.
+#define BGFX_CAPS_TRANSPARENT_BACKBUFFER          UINT64_C(0x0000000004000000) //!< Transparent back buffer supported.
+#define BGFX_CAPS_VERTEX_ATTRIB_HALF              UINT64_C(0x0000000008000000) //!< Vertex attribute half-float is supported.
+#define BGFX_CAPS_VERTEX_ATTRIB_UINT10            UINT64_C(0x0000000010000000) //!< Vertex attribute 10_10_10_2 is supported.
+#define BGFX_CAPS_VERTEX_ID                       UINT64_C(0x0000000020000000) //!< Rendering with VertexID only is supported.
+#define BGFX_CAPS_VIEWPORT_LAYER_ARRAY            UINT64_C(0x0000000040000000) //!< Viewport layer is available in vertex shader.
 /// All texture compare modes are supported.
 #define BGFX_CAPS_TEXTURE_COMPARE_ALL (0 \
 	| BGFX_CAPS_TEXTURE_COMPARE_RESERVED \

+ 8 - 7
scripts/bgfx.idl

@@ -1,7 +1,7 @@
 -- vim: syntax=lua
 -- bgfx interface
 
-version(127)
+version(128)
 
 typedef "bool"
 typedef "char"
@@ -370,6 +370,7 @@ flag.Caps { bits = 64, base = 1, name = "Caps" }
 	.Compute                --- Compute shaders are supported.
 	.ConservativeRaster     --- Conservative rasterization is supported.
 	.DrawIndirect           --- Draw indirect is supported.
+	.DrawIndirectCount      --- Draw indirect with indirect count is supported.
 	.FragmentDepth          --- Fragment depth is available in fragment shader.
 	.FragmentOrdering       --- Fragment ordering is available in fragment shader.
 	.GraphicsDebugger       --- Graphics debugger is present.
@@ -379,23 +380,23 @@ flag.Caps { bits = 64, base = 1, name = "Caps" }
 	.Index32                --- 32-bit indices are supported.
 	.Instancing             --- Instancing is supported.
 	.OcclusionQuery         --- Occlusion query is supported.
+	.PrimitiveId            --- PrimitiveID is available in fragment shader.
 	.RendererMultithreaded  --- Renderer is on separate thread.
 	.SwapChain              --- Multiple windows are supported.
-	.Texture_2dArray        --- 2D texture array is supported.
-	.Texture_3d             --- 3D textures are supported.
 	.TextureBlit            --- Texture blit is supported.
-	.TransparentBackbuffer  --- Transparent back buffer supported.
-	.TextureCompareReserved
 	.TextureCompareLequal   --- Texture compare less equal mode is supported.
+	.TextureCompareReserved
 	.TextureCubeArray       --- Cubemap texture array is supported.
 	.TextureDirectAccess    --- CPU direct access to GPU texture memory.
 	.TextureReadBack        --- Read-back texture is supported.
+	.Texture_2dArray        --- 2D texture array is supported.
+	.Texture_3d             --- 3D textures are supported.
+	.TransparentBackbuffer  --- Transparent back buffer supported.
 	.VertexAttribHalf       --- Vertex attribute half-float is supported.
 	.VertexAttribUint10     --- Vertex attribute 10_10_10_2 is supported.
 	.VertexId               --- Rendering with VertexID only is supported.
-	.PrimitiveId            --- PrimitiveID is available in fragment shader.
 	.ViewportLayerArray     --- Viewport layer is available in vertex shader.
-	.DrawIndirectCount      --- Draw indirect with indirect count is supported.
+
 	.TextureCompareAll      --- All texture compare modes are supported.
 	 { "TextureCompareReserved", "TextureCompareLequal" }
 	()

+ 2 - 2
src/version.h

@@ -9,5 +9,5 @@
  *
  */
 
-#define BGFX_REV_NUMBER 8762
-#define BGFX_REV_SHA1   "f37ffe9750e1e701f3cffecb9eea1c2ce076073e"
+#define BGFX_REV_NUMBER 8775
+#define BGFX_REV_SHA1   "a476c5b9a42d3779af59a0099d4d222fa8898d36"