diff --git a/bindings/bf/bgfx.bf b/bindings/bf/bgfx.bf index e92136a325..f3ff2415ff 100644 --- a/bindings/bf/bgfx.bf +++ b/bindings/bf/bgfx.bf @@ -24,178 +24,178 @@ public static class bgfx /// Enable R write. /// WriteR = 0x0000000000000001, - + /// /// Enable G write. /// WriteG = 0x0000000000000002, - + /// /// Enable B write. /// WriteB = 0x0000000000000004, - + /// /// Enable alpha write. /// WriteA = 0x0000000000000008, - + /// /// Enable depth write. /// WriteZ = 0x0000004000000000, - + /// /// Enable RGB write. /// WriteRgb = 0x0000000000000007, - + /// /// Write all channels mask. /// WriteMask = 0x000000400000000f, - + /// /// Enable depth test, less. /// DepthTestLess = 0x0000000000000010, - + /// /// Enable depth test, less or equal. /// DepthTestLequal = 0x0000000000000020, - + /// /// Enable depth test, equal. /// DepthTestEqual = 0x0000000000000030, - + /// /// Enable depth test, greater or equal. /// DepthTestGequal = 0x0000000000000040, - + /// /// Enable depth test, greater. /// DepthTestGreater = 0x0000000000000050, - + /// /// Enable depth test, not equal. /// DepthTestNotequal = 0x0000000000000060, - + /// /// Enable depth test, never. /// DepthTestNever = 0x0000000000000070, - + /// /// Enable depth test, always. /// DepthTestAlways = 0x0000000000000080, DepthTestShift = 4, DepthTestMask = 0x00000000000000f0, - + /// /// 0, 0, 0, 0 /// BlendZero = 0x0000000000001000, - + /// /// 1, 1, 1, 1 /// BlendOne = 0x0000000000002000, - + /// /// Rs, Gs, Bs, As /// BlendSrcColor = 0x0000000000003000, - + /// /// 1-Rs, 1-Gs, 1-Bs, 1-As /// BlendInvSrcColor = 0x0000000000004000, - + /// /// As, As, As, As /// BlendSrcAlpha = 0x0000000000005000, - + /// /// 1-As, 1-As, 1-As, 1-As /// BlendInvSrcAlpha = 0x0000000000006000, - + /// /// Ad, Ad, Ad, Ad /// BlendDstAlpha = 0x0000000000007000, - + /// /// 1-Ad, 1-Ad, 1-Ad ,1-Ad /// BlendInvDstAlpha = 0x0000000000008000, - + /// /// Rd, Gd, Bd, Ad /// BlendDstColor = 0x0000000000009000, - + /// /// 1-Rd, 1-Gd, 1-Bd, 1-Ad /// BlendInvDstColor = 0x000000000000a000, - + /// /// f, f, f, 1; f = min(As, 1-Ad) /// BlendSrcAlphaSat = 0x000000000000b000, - + /// /// Blend factor /// BlendFactor = 0x000000000000c000, - + /// /// 1-Blend factor /// BlendInvFactor = 0x000000000000d000, BlendShift = 12, BlendMask = 0x000000000ffff000, - + /// /// Blend add: src + dst. /// BlendEquationAdd = 0x0000000000000000, - + /// /// Blend subtract: src - dst. /// BlendEquationSub = 0x0000000010000000, - + /// /// Blend reverse subtract: dst - src. /// BlendEquationRevsub = 0x0000000020000000, - + /// /// Blend min: min(src, dst). /// BlendEquationMin = 0x0000000030000000, - + /// /// Blend max: max(src, dst). /// BlendEquationMax = 0x0000000040000000, BlendEquationShift = 28, BlendEquationMask = 0x00000003f0000000, - + /// /// Cull clockwise triangles. /// CullCw = 0x0000001000000000, - + /// /// Cull counter-clockwise triangles. /// @@ -204,22 +204,22 @@ public static class bgfx CullMask = 0x0000003000000000, AlphaRefShift = 40, AlphaRefMask = 0x0000ff0000000000, - + /// /// Tristrip. /// PtTristrip = 0x0001000000000000, - + /// /// Lines. /// PtLines = 0x0002000000000000, - + /// /// Line strip. /// PtLinestrip = 0x0003000000000000, - + /// /// Points. /// @@ -228,42 +228,42 @@ public static class bgfx PtMask = 0x0007000000000000, PointSizeShift = 52, PointSizeMask = 0x00f0000000000000, - + /// /// Enable MSAA rasterization. /// Msaa = 0x0100000000000000, - + /// /// Enable line AA rasterization. /// Lineaa = 0x0200000000000000, - + /// /// Enable conservative rasterization. /// ConservativeRaster = 0x0400000000000000, - + /// /// No state. /// None = 0x0000000000000000, - + /// /// Front counter-clockwise (default is clockwise). /// FrontCcw = 0x0000008000000000, - + /// /// Enable blend independent. /// BlendIndependent = 0x0000000400000000, - + /// /// Enable alpha to coverage. /// BlendAlphaToCoverage = 0x0000000800000000, - + /// /// Default state is write to RGB, alpha, and depth with depth test less enabled, with clockwise /// culling and MSAA (when writing into MSAA frame buffer, otherwise this flag is ignored). @@ -273,7 +273,7 @@ public static class bgfx ReservedShift = 61, ReservedMask = 0xe000000000000000, } - + [AllowDuplicates] public enum StencilFlags : uint32 { @@ -284,168 +284,168 @@ public static class bgfx None = 0x00000000, Mask = 0xffffffff, Default = 0x00000000, - + /// /// Enable stencil test, less. /// TestLess = 0x00010000, - + /// /// Enable stencil test, less or equal. /// TestLequal = 0x00020000, - + /// /// Enable stencil test, equal. /// TestEqual = 0x00030000, - + /// /// Enable stencil test, greater or equal. /// TestGequal = 0x00040000, - + /// /// Enable stencil test, greater. /// TestGreater = 0x00050000, - + /// /// Enable stencil test, not equal. /// TestNotequal = 0x00060000, - + /// /// Enable stencil test, never. /// TestNever = 0x00070000, - + /// /// Enable stencil test, always. /// TestAlways = 0x00080000, TestShift = 16, TestMask = 0x000f0000, - + /// /// Zero. /// OpFailSZero = 0x00000000, - + /// /// Keep. /// OpFailSKeep = 0x00100000, - + /// /// Replace. /// OpFailSReplace = 0x00200000, - + /// /// Increment and wrap. /// OpFailSIncr = 0x00300000, - + /// /// Increment and clamp. /// OpFailSIncrsat = 0x00400000, - + /// /// Decrement and wrap. /// OpFailSDecr = 0x00500000, - + /// /// Decrement and clamp. /// OpFailSDecrsat = 0x00600000, - + /// /// Invert. /// OpFailSInvert = 0x00700000, OpFailSShift = 20, OpFailSMask = 0x00f00000, - + /// /// Zero. /// OpFailZZero = 0x00000000, - + /// /// Keep. /// OpFailZKeep = 0x01000000, - + /// /// Replace. /// OpFailZReplace = 0x02000000, - + /// /// Increment and wrap. /// OpFailZIncr = 0x03000000, - + /// /// Increment and clamp. /// OpFailZIncrsat = 0x04000000, - + /// /// Decrement and wrap. /// OpFailZDecr = 0x05000000, - + /// /// Decrement and clamp. /// OpFailZDecrsat = 0x06000000, - + /// /// Invert. /// OpFailZInvert = 0x07000000, OpFailZShift = 24, OpFailZMask = 0x0f000000, - + /// /// Zero. /// OpPassZZero = 0x00000000, - + /// /// Keep. /// OpPassZKeep = 0x10000000, - + /// /// Replace. /// OpPassZReplace = 0x20000000, - + /// /// Increment and wrap. /// OpPassZIncr = 0x30000000, - + /// /// Increment and clamp. /// OpPassZIncrsat = 0x40000000, - + /// /// Decrement and wrap. /// OpPassZDecr = 0x50000000, - + /// /// Decrement and clamp. /// OpPassZDecrsat = 0x60000000, - + /// /// Invert. /// @@ -453,7 +453,7 @@ public static class bgfx OpPassZShift = 28, OpPassZMask = 0xf0000000, } - + [AllowDuplicates] public enum ClearFlags : uint16 { @@ -461,67 +461,67 @@ public static class bgfx /// No clear flags. /// None = 0x0000, - + /// /// Clear color. /// Color = 0x0001, - + /// /// Clear depth. /// Depth = 0x0002, - + /// /// Clear stencil. /// Stencil = 0x0004, - + /// /// Discard frame buffer attachment 0. /// DiscardColor0 = 0x0008, - + /// /// Discard frame buffer attachment 1. /// DiscardColor1 = 0x0010, - + /// /// Discard frame buffer attachment 2. /// DiscardColor2 = 0x0020, - + /// /// Discard frame buffer attachment 3. /// DiscardColor3 = 0x0040, - + /// /// Discard frame buffer attachment 4. /// DiscardColor4 = 0x0080, - + /// /// Discard frame buffer attachment 5. /// DiscardColor5 = 0x0100, - + /// /// Discard frame buffer attachment 6. /// DiscardColor6 = 0x0200, - + /// /// Discard frame buffer attachment 7. /// DiscardColor7 = 0x0400, - + /// /// Discard frame buffer depth attachment. /// DiscardDepth = 0x0800, - + /// /// Discard frame buffer stencil attachment. /// @@ -529,7 +529,7 @@ public static class bgfx DiscardColorMask = 0x07f8, DiscardMask = 0x1ff8, } - + [AllowDuplicates] public enum DiscardFlags : uint32 { @@ -537,43 +537,43 @@ public static class bgfx /// Preserve everything. /// None = 0x00000000, - + /// /// Discard texture sampler and buffer bindings. /// Bindings = 0x00000001, - + /// /// Discard index buffer. /// IndexBuffer = 0x00000002, - + /// /// Discard instance data. /// InstanceData = 0x00000004, - + /// /// Discard state and uniform bindings. /// State = 0x00000008, - + /// /// Discard transform. /// Transform = 0x00000010, - + /// /// Discard vertex streams. /// VertexStreams = 0x00000020, - + /// /// Discard all states. /// All = 0x000000ff, } - + [AllowDuplicates] public enum DebugFlags : uint32 { @@ -581,34 +581,34 @@ public static class bgfx /// No debug. /// None = 0x00000000, - + /// /// Enable wireframe for all primitives. /// Wireframe = 0x00000001, - + /// /// Enable infinitely fast hardware test. No draw calls will be submitted to driver. /// It's useful when profiling to quickly assess bottleneck between CPU and GPU. /// Ifh = 0x00000002, - + /// /// Enable statistics display. /// Stats = 0x00000004, - + /// /// Enable debug text display. /// Text = 0x00000008, - + /// /// Enable profiler. This causes per-view statistics to be collected, available through `bgfx::Stats::ViewStats`. This is unrelated to the profiler functions in `bgfx::CallbackI`. /// Profiler = 0x00000010, } - + [AllowDuplicates] public enum BufferFlags : uint16 { @@ -616,59 +616,59 @@ public static class bgfx /// 1 8-bit value /// ComputeFormat8x1 = 0x0001, - + /// /// 2 8-bit values /// ComputeFormat8x2 = 0x0002, - + /// /// 4 8-bit values /// ComputeFormat8x4 = 0x0003, - + /// /// 1 16-bit value /// ComputeFormat16x1 = 0x0004, - + /// /// 2 16-bit values /// ComputeFormat16x2 = 0x0005, - + /// /// 4 16-bit values /// ComputeFormat16x4 = 0x0006, - + /// /// 1 32-bit value /// ComputeFormat32x1 = 0x0007, - + /// /// 2 32-bit values /// ComputeFormat32x2 = 0x0008, - + /// /// 4 32-bit values /// ComputeFormat32x4 = 0x0009, ComputeFormatShift = 0, ComputeFormatMask = 0x000f, - + /// /// Type `int`. /// ComputeTypeInt = 0x0010, - + /// /// Type `uint`. /// ComputeTypeUint = 0x0020, - + /// /// Type `float`. /// @@ -676,91 +676,91 @@ public static class bgfx ComputeTypeShift = 4, ComputeTypeMask = 0x0030, None = 0x0000, - + /// /// Buffer will be read by shader. /// ComputeRead = 0x0100, - + /// /// Buffer will be used for writing. /// ComputeWrite = 0x0200, - + /// /// Buffer will be used for storing draw indirect commands. /// DrawIndirect = 0x0400, - + /// /// Allow dynamic index/vertex buffer resize during update. /// AllowResize = 0x0800, - + /// /// Index buffer contains 32-bit indices. /// Index32 = 0x1000, ComputeReadWrite = 0x0300, } - + [AllowDuplicates] public enum TextureFlags : uint64 { None = 0x0000000000000000, - + /// /// Texture will be used for MSAA sampling. /// MsaaSample = 0x0000000800000000, - + /// /// Render target no MSAA. /// Rt = 0x0000001000000000, - + /// /// Texture will be used for compute write. /// ComputeWrite = 0x0000100000000000, - + /// /// Sample texture as sRGB. /// Srgb = 0x0000200000000000, - + /// /// Texture will be used as blit destination. /// BlitDst = 0x0000400000000000, - + /// /// Texture will be used for read back from GPU. /// ReadBack = 0x0000800000000000, - + /// /// Render target MSAAx2 mode. /// RtMsaaX2 = 0x0000002000000000, - + /// /// Render target MSAAx4 mode. /// RtMsaaX4 = 0x0000003000000000, - + /// /// Render target MSAAx8 mode. /// RtMsaaX8 = 0x0000004000000000, - + /// /// Render target MSAAx16 mode. /// RtMsaaX16 = 0x0000005000000000, RtMsaaShift = 36, RtMsaaMask = 0x0000007000000000, - + /// /// Render target will be used for writing /// @@ -768,7 +768,7 @@ public static class bgfx RtShift = 36, RtMask = 0x000000f000000000, } - + [AllowDuplicates] public enum SamplerFlags : uint32 { @@ -776,119 +776,119 @@ public static class bgfx /// Wrap U mode: Mirror /// UMirror = 0x00000001, - + /// /// Wrap U mode: Clamp /// UClamp = 0x00000002, - + /// /// Wrap U mode: Border /// UBorder = 0x00000003, UShift = 0, UMask = 0x00000003, - + /// /// Wrap V mode: Mirror /// VMirror = 0x00000004, - + /// /// Wrap V mode: Clamp /// VClamp = 0x00000008, - + /// /// Wrap V mode: Border /// VBorder = 0x0000000c, VShift = 2, VMask = 0x0000000c, - + /// /// Wrap W mode: Mirror /// WMirror = 0x00000010, - + /// /// Wrap W mode: Clamp /// WClamp = 0x00000020, - + /// /// Wrap W mode: Border /// WBorder = 0x00000030, WShift = 4, WMask = 0x00000030, - + /// /// Min sampling mode: Point /// MinPoint = 0x00000040, - + /// /// Min sampling mode: Anisotropic /// MinAnisotropic = 0x00000080, MinShift = 6, MinMask = 0x000000c0, - + /// /// Mag sampling mode: Point /// MagPoint = 0x00000100, - + /// /// Mag sampling mode: Anisotropic /// MagAnisotropic = 0x00000200, MagShift = 8, MagMask = 0x00000300, - + /// /// Mip sampling mode: Point /// MipPoint = 0x00000400, MipShift = 10, MipMask = 0x00000400, - + /// /// Compare when sampling depth texture: less. /// CompareLess = 0x00010000, - + /// /// Compare when sampling depth texture: less or equal. /// CompareLequal = 0x00020000, - + /// /// Compare when sampling depth texture: equal. /// CompareEqual = 0x00030000, - + /// /// Compare when sampling depth texture: greater or equal. /// CompareGequal = 0x00040000, - + /// /// Compare when sampling depth texture: greater. /// CompareGreater = 0x00050000, - + /// /// Compare when sampling depth texture: not equal. /// CompareNotequal = 0x00060000, - + /// /// Compare when sampling depth texture: never. /// CompareNever = 0x00070000, - + /// /// Compare when sampling depth texture: always. /// @@ -900,7 +900,7 @@ public static class bgfx ReservedShift = 28, ReservedMask = 0xf0000000, None = 0x00000000, - + /// /// Sample stencil instead of depth. /// @@ -911,7 +911,7 @@ public static class bgfx UvwBorder = 0x0000003f, BitsMask = 0x000f07ff, } - + [AllowDuplicates] public enum ResetFlags : uint32 { @@ -919,85 +919,85 @@ public static class bgfx /// Enable 2x MSAA. /// MsaaX2 = 0x00000010, - + /// /// Enable 4x MSAA. /// MsaaX4 = 0x00000020, - + /// /// Enable 8x MSAA. /// MsaaX8 = 0x00000030, - + /// /// Enable 16x MSAA. /// MsaaX16 = 0x00000040, MsaaShift = 4, MsaaMask = 0x00000070, - + /// /// No reset flags. /// None = 0x00000000, - + /// /// Not supported yet. /// Fullscreen = 0x00000001, - + /// /// Enable V-Sync. /// Vsync = 0x00000080, - + /// /// Turn on/off max anisotropy. /// Maxanisotropy = 0x00000100, - + /// /// Begin screen capture. /// Capture = 0x00000200, - + /// /// Flush rendering after submitting to GPU. /// FlushAfterRender = 0x00002000, - + /// /// This flag specifies where flip occurs. Default behaviour is that flip occurs /// before rendering new frame. This flag only has effect when `BGFX_CONFIG_MULTITHREADED=0`. /// FlipAfterRender = 0x00004000, - + /// /// Enable sRGB backbuffer. /// SrgbBackbuffer = 0x00008000, - + /// /// Enable HDR10 rendering. /// Hdr10 = 0x00010000, - + /// /// Enable HiDPI rendering. /// Hidpi = 0x00020000, - + /// /// Enable depth clamp. /// DepthClamp = 0x00040000, - + /// /// Suspend rendering. /// Suspend = 0x00080000, - + /// /// Transparent backbuffer. Availability depends on: `BGFX_CAPS_TRANSPARENT_BACKBUFFER`. /// @@ -1007,7 +1007,7 @@ public static class bgfx ReservedShift = 31, ReservedMask = 0x80000000, } - + [AllowDuplicates] public enum CapsFlags : uint64 { @@ -1015,159 +1015,159 @@ public static class bgfx /// Alpha to coverage is supported. /// AlphaToCoverage = 0x0000000000000001, - + /// /// Blend independent is supported. /// BlendIndependent = 0x0000000000000002, - + /// /// Compute shaders are supported. /// Compute = 0x0000000000000004, - + /// /// Conservative rasterization is supported. /// ConservativeRaster = 0x0000000000000008, - + /// /// Draw indirect is supported. /// DrawIndirect = 0x0000000000000010, - + /// /// Draw indirect with indirect count is supported. /// DrawIndirectCount = 0x0000000000000020, - + /// /// Fragment depth is available in fragment shader. /// FragmentDepth = 0x0000000000000040, - + /// /// Fragment ordering is available in fragment shader. /// FragmentOrdering = 0x0000000000000080, - + /// /// Graphics debugger is present. /// GraphicsDebugger = 0x0000000000000100, - + /// /// HDR10 rendering is supported. /// Hdr10 = 0x0000000000000200, - + /// /// HiDPI rendering is supported. /// Hidpi = 0x0000000000000400, - + /// /// Image Read/Write is supported. /// ImageRw = 0x0000000000000800, - + /// /// 32-bit indices are supported. /// Index32 = 0x0000000000001000, - + /// /// Instancing is supported. /// Instancing = 0x0000000000002000, - + /// /// Occlusion query is supported. /// OcclusionQuery = 0x0000000000004000, - + /// /// PrimitiveID is available in fragment shader. /// PrimitiveId = 0x0000000000008000, - + /// /// Renderer is on separate thread. /// RendererMultithreaded = 0x0000000000010000, - + /// /// Multiple windows are supported. /// SwapChain = 0x0000000000020000, - + /// /// Texture blit is supported. /// TextureBlit = 0x0000000000040000, - + /// /// Texture compare less equal mode is supported. /// TextureCompareLequal = 0x0000000000080000, TextureCompareReserved = 0x0000000000100000, - + /// /// Cubemap texture array is supported. /// TextureCubeArray = 0x0000000000200000, - + /// /// CPU direct access to GPU texture memory. /// TextureDirectAccess = 0x0000000000400000, - + /// /// Read-back texture is supported. /// TextureReadBack = 0x0000000000800000, - + /// /// 2D texture array is supported. /// Texture2dArray = 0x0000000001000000, - + /// /// 3D textures are supported. /// Texture3d = 0x0000000002000000, - + /// /// Transparent back buffer supported. /// TransparentBackbuffer = 0x0000000004000000, - + /// /// Vertex attribute half-float is supported. /// VertexAttribHalf = 0x0000000008000000, - + /// /// Vertex attribute 10_10_10_2 is supported. /// VertexAttribUint10 = 0x0000000010000000, - + /// /// Rendering with VertexID only is supported. /// VertexId = 0x0000000020000000, - + /// /// Viewport layer is available in vertex shader. /// ViewportLayerArray = 0x0000000040000000, - + /// /// All texture compare modes are supported. /// TextureCompareAll = 0x0000000000180000, } - + [AllowDuplicates] public enum CapsFormatFlags : uint32 { @@ -1175,88 +1175,88 @@ public static class bgfx /// Texture format is not supported. /// TextureNone = 0x00000000, - + /// /// Texture format is supported. /// Texture2d = 0x00000001, - + /// /// Texture as sRGB format is supported. /// Texture2dSrgb = 0x00000002, - + /// /// Texture format is emulated. /// Texture2dEmulated = 0x00000004, - + /// /// Texture format is supported. /// Texture3d = 0x00000008, - + /// /// Texture as sRGB format is supported. /// Texture3dSrgb = 0x00000010, - + /// /// Texture format is emulated. /// Texture3dEmulated = 0x00000020, - + /// /// Texture format is supported. /// TextureCube = 0x00000040, - + /// /// Texture as sRGB format is supported. /// TextureCubeSrgb = 0x00000080, - + /// /// Texture format is emulated. /// TextureCubeEmulated = 0x00000100, - + /// /// Texture format can be used from vertex shader. /// TextureVertex = 0x00000200, - + /// /// Texture format can be used as image and read from. /// TextureImageRead = 0x00000400, - + /// /// Texture format can be used as image and written to. /// TextureImageWrite = 0x00000800, - + /// /// Texture format can be used as frame buffer. /// TextureFramebuffer = 0x00001000, - + /// /// Texture format can be used as MSAA frame buffer. /// TextureFramebufferMsaa = 0x00002000, - + /// /// Texture can be sampled as MSAA. /// TextureMsaa = 0x00004000, - + /// /// Texture format supports auto-generated mips. /// TextureMipAutogen = 0x00008000, } - + [AllowDuplicates] public enum ResolveFlags : uint32 { @@ -1264,13 +1264,13 @@ public static class bgfx /// No resolve flags. /// None = 0x00000000, - + /// /// Auto-generate mip maps on resolve. /// AutoGenMips = 0x00000001, } - + [AllowDuplicates] public enum PciIdFlags : uint16 { @@ -1278,43 +1278,43 @@ public static class bgfx /// Autoselect adapter. /// None = 0x0000, - + /// /// Software rasterizer. /// SoftwareRasterizer = 0x0001, - + /// /// AMD adapter. /// Amd = 0x1002, - + /// /// Apple adapter. /// Apple = 0x106b, - + /// /// Intel adapter. /// Intel = 0x8086, - + /// /// nVidia adapter. /// Nvidia = 0x10de, - + /// /// Microsoft adapter. /// Microsoft = 0x1414, - + /// /// ARM adapter. /// Arm = 0x13b5, } - + [AllowDuplicates] public enum CubeMapFlags : uint32 { @@ -1322,33 +1322,33 @@ public static class bgfx /// Cubemap +x. /// PositiveX = 0x00000000, - + /// /// Cubemap -x. /// NegativeX = 0x00000001, - + /// /// Cubemap +y. /// PositiveY = 0x00000002, - + /// /// Cubemap -y. /// NegativeY = 0x00000003, - + /// /// Cubemap +z. /// PositiveZ = 0x00000004, - + /// /// Cubemap -z. /// NegativeZ = 0x00000005, } - + [AllowDuplicates] public enum Fatal : uint32 { @@ -1357,10 +1357,10 @@ public static class bgfx UnableToInitialize, UnableToCreateTexture, DeviceLost, - + Count } - + [AllowDuplicates] public enum RendererType : uint32 { @@ -1368,55 +1368,55 @@ public static class bgfx /// No rendering. /// Noop, - + /// /// AGC /// Agc, - + /// /// Direct3D 11.0 /// Direct3D11, - + /// /// Direct3D 12.0 /// Direct3D12, - + /// /// GNM /// Gnm, - + /// /// Metal /// Metal, - + /// /// NVN /// Nvn, - + /// /// OpenGL ES 2.0+ /// OpenGLES, - + /// /// OpenGL 2.1+ /// OpenGL, - + /// /// Vulkan /// Vulkan, - + Count } - + [AllowDuplicates] public enum Access : uint32 { @@ -1424,20 +1424,20 @@ public static class bgfx /// Read. /// Read, - + /// /// Write. /// Write, - + /// /// Read and write. /// ReadWrite, - + Count } - + [AllowDuplicates] public enum Attrib : uint32 { @@ -1445,95 +1445,95 @@ public static class bgfx /// a_position /// Position, - + /// /// a_normal /// Normal, - + /// /// a_tangent /// Tangent, - + /// /// a_bitangent /// Bitangent, - + /// /// a_color0 /// Color0, - + /// /// a_color1 /// Color1, - + /// /// a_color2 /// Color2, - + /// /// a_color3 /// Color3, - + /// /// a_indices /// Indices, - + /// /// a_weight /// Weight, - + /// /// a_texcoord0 /// TexCoord0, - + /// /// a_texcoord1 /// TexCoord1, - + /// /// a_texcoord2 /// TexCoord2, - + /// /// a_texcoord3 /// TexCoord3, - + /// /// a_texcoord4 /// TexCoord4, - + /// /// a_texcoord5 /// TexCoord5, - + /// /// a_texcoord6 /// TexCoord6, - + /// /// a_texcoord7 /// TexCoord7, - + Count } - + [AllowDuplicates] public enum AttribType : uint32 { @@ -1541,30 +1541,30 @@ public static class bgfx /// Uint8 /// Uint8, - + /// /// Uint10, availability depends on: `BGFX_CAPS_VERTEX_ATTRIB_UINT10`. /// Uint10, - + /// /// Int16 /// Int16, - + /// /// Half, availability depends on: `BGFX_CAPS_VERTEX_ATTRIB_HALF`. /// Half, - + /// /// Float /// Float, - + Count } - + [AllowDuplicates] public enum TextureFormat : uint32 { @@ -1572,172 +1572,172 @@ public static class bgfx /// DXT1 R5G6B5A1 /// BC1, - + /// /// DXT3 R5G6B5A4 /// BC2, - + /// /// DXT5 R5G6B5A8 /// BC3, - + /// /// LATC1/ATI1 R8 /// BC4, - + /// /// LATC2/ATI2 RG8 /// BC5, - + /// /// BC6H RGB16F /// BC6H, - + /// /// BC7 RGB 4-7 bits per color channel, 0-8 bits alpha /// BC7, - + /// /// ETC1 RGB8 /// ETC1, - + /// /// ETC2 RGB8 /// ETC2, - + /// /// ETC2 RGBA8 /// ETC2A, - + /// /// ETC2 RGB8A1 /// ETC2A1, - + /// /// PVRTC1 RGB 2BPP /// PTC12, - + /// /// PVRTC1 RGB 4BPP /// PTC14, - + /// /// PVRTC1 RGBA 2BPP /// PTC12A, - + /// /// PVRTC1 RGBA 4BPP /// PTC14A, - + /// /// PVRTC2 RGBA 2BPP /// PTC22, - + /// /// PVRTC2 RGBA 4BPP /// PTC24, - + /// /// ATC RGB 4BPP /// ATC, - + /// /// ATCE RGBA 8 BPP explicit alpha /// ATCE, - + /// /// ATCI RGBA 8 BPP interpolated alpha /// ATCI, - + /// /// ASTC 4x4 8.0 BPP /// ASTC4x4, - + /// /// ASTC 5x4 6.40 BPP /// ASTC5x4, - + /// /// ASTC 5x5 5.12 BPP /// ASTC5x5, - + /// /// ASTC 6x5 4.27 BPP /// ASTC6x5, - + /// /// ASTC 6x6 3.56 BPP /// ASTC6x6, - + /// /// ASTC 8x5 3.20 BPP /// ASTC8x5, - + /// /// ASTC 8x6 2.67 BPP /// ASTC8x6, - + /// /// ASTC 8x8 2.00 BPP /// ASTC8x8, - + /// /// ASTC 10x5 2.56 BPP /// ASTC10x5, - + /// /// ASTC 10x6 2.13 BPP /// ASTC10x6, - + /// /// ASTC 10x8 1.60 BPP /// ASTC10x8, - + /// /// ASTC 10x10 1.28 BPP /// ASTC10x10, - + /// /// ASTC 12x10 1.07 BPP /// ASTC12x10, - + /// /// ASTC 12x12 0.89 BPP /// ASTC12x12, - + /// /// Compressed formats above. /// @@ -1794,7 +1794,7 @@ public static class bgfx RGB5A1, RGB10A2, RG11B10F, - + /// /// Depth formats below. /// @@ -1807,10 +1807,10 @@ public static class bgfx D24F, D32F, D0S8, - + Count } - + [AllowDuplicates] public enum UniformType : uint32 { @@ -1818,30 +1818,30 @@ public static class bgfx /// Sampler. /// Sampler, - + /// /// Reserved, do not use. /// End, - + /// /// 4 floats vector. /// Vec4, - + /// /// 3x3 matrix. /// Mat3, - + /// /// 4x4 matrix. /// Mat4, - + Count } - + [AllowDuplicates] public enum BackbufferRatio : uint32 { @@ -1849,35 +1849,35 @@ public static class bgfx /// Equal to backbuffer. /// Equal, - + /// /// One half size of backbuffer. /// Half, - + /// /// One quarter size of backbuffer. /// Quarter, - + /// /// One eighth size of backbuffer. /// Eighth, - + /// /// One sixteenth size of backbuffer. /// Sixteenth, - + /// /// Double size of backbuffer. /// Double, - + Count } - + [AllowDuplicates] public enum OcclusionQueryResult : uint32 { @@ -1885,20 +1885,20 @@ public static class bgfx /// Query failed test. /// Invisible, - + /// /// Query passed test. /// Visible, - + /// /// Query result is not available yet. /// NoResult, - + Count } - + [AllowDuplicates] public enum Topology : uint32 { @@ -1906,30 +1906,30 @@ public static class bgfx /// Triangle list. /// TriList, - + /// /// Triangle strip. /// TriStrip, - + /// /// Line list. /// LineList, - + /// /// Line strip. /// LineStrip, - + /// /// Point list. /// PointList, - + Count } - + [AllowDuplicates] public enum TopologyConvert : uint32 { @@ -1937,30 +1937,30 @@ public static class bgfx /// Flip winding order of triangle list. /// TriListFlipWinding, - + /// /// Flip winding order of triangle strip. /// TriStripFlipWinding, - + /// /// Convert triangle list to line list. /// TriListToLineList, - + /// /// Convert triangle strip to triangle list. /// TriStripToTriList, - + /// /// Convert line strip to line list. /// LineStripToLineList, - + Count } - + [AllowDuplicates] public enum TopologySort : uint32 { @@ -1976,10 +1976,10 @@ public static class bgfx DistanceBackToFrontMin, DistanceBackToFrontAvg, DistanceBackToFrontMax, - + Count } - + [AllowDuplicates] public enum ViewMode : uint32 { @@ -1987,25 +1987,25 @@ public static class bgfx /// Default sort order. /// Default, - + /// /// Sort in the same order in which submit calls were called. /// Sequential, - + /// /// Sort draw call depth in ascending order. /// DepthAscending, - + /// /// Sort draw call depth in descending order. /// DepthDescending, - + Count } - + [AllowDuplicates] public enum NativeWindowHandleType : uint32 { @@ -2013,15 +2013,15 @@ public static class bgfx /// Platform default handle type (X11 on Linux). /// Default, - + /// /// Wayland. /// Wayland, - + Count } - + [AllowDuplicates] public enum RenderFrame : uint32 { @@ -2029,25 +2029,25 @@ public static class bgfx /// Renderer context is not created yet. /// NoContext, - + /// /// Renderer context is created and rendering. /// Render, - + /// /// Renderer context wait for main thread signal timed out without rendering. /// Timeout, - + /// /// Renderer context is getting destroyed. /// Exiting, - + Count } - + [CRepr] public struct Caps { @@ -2057,7 +2057,7 @@ public static class bgfx public uint16 vendorId; public uint16 deviceId; } - + [CRepr] public struct Limits { @@ -2086,7 +2086,7 @@ public static class bgfx public uint32 transientVbSize; public uint32 transientIbSize; } - + public RendererType rendererType; public uint64 supported; public uint16 vendorId; @@ -2098,14 +2098,14 @@ public static class bgfx public Limits limits; public uint16[96] formats; } - + [CRepr] public struct InternalData { public Caps* caps; public void* context; } - + [CRepr] public struct PlatformData { @@ -2116,7 +2116,7 @@ public static class bgfx public void* backBufferDS; public NativeWindowHandleType type; } - + [CRepr] public struct Resolution { @@ -2128,7 +2128,7 @@ public static class bgfx public uint8 maxFrameLatency; public uint8 debugTextScale; } - + [CRepr] public struct Init { @@ -2140,7 +2140,7 @@ public static class bgfx public uint32 transientVbSize; public uint32 transientIbSize; } - + public RendererType type; public uint16 vendorId; public uint16 deviceId; @@ -2153,14 +2153,14 @@ public static class bgfx public void* callback; public void* allocator; } - + [CRepr] public struct Memory { public uint8* data; public uint32 size; } - + [CRepr] public struct TransientIndexBuffer { @@ -2170,7 +2170,7 @@ public static class bgfx public IndexBufferHandle handle; public uint8 isIndex16; } - + [CRepr] public struct TransientVertexBuffer { @@ -2181,7 +2181,7 @@ public static class bgfx public VertexBufferHandle handle; public VertexLayoutHandle layoutHandle; } - + [CRepr] public struct InstanceDataBuffer { @@ -2192,7 +2192,7 @@ public static class bgfx public uint16 stride; public VertexBufferHandle handle; } - + [CRepr] public struct TextureInfo { @@ -2206,7 +2206,7 @@ public static class bgfx public uint8 bitsPerPixel; public uint8 cubeMap; } - + [CRepr] public struct UniformInfo { @@ -2214,7 +2214,7 @@ public static class bgfx public UniformType type; public uint16 num; } - + [CRepr] public struct Attachment { @@ -2225,14 +2225,14 @@ public static class bgfx public uint16 numLayers; public uint8 resolve; } - + [CRepr] public struct Transform { public float* data; public uint16 num; } - + [CRepr] public struct ViewStats { @@ -2244,14 +2244,14 @@ public static class bgfx public int64 gpuTimeEnd; public uint32 gpuFrameNum; } - + [CRepr] public struct EncoderStats { public int64 cpuTimeBegin; public int64 cpuTimeEnd; } - + [CRepr] public struct Stats { @@ -2296,7 +2296,7 @@ public static class bgfx public uint8 numEncoders; public EncoderStats* encoderStats; } - + [CRepr] public struct VertexLayout { @@ -2305,84 +2305,84 @@ public static class bgfx public uint16[18] offset; public uint16[18] attributes; } - + [CRepr] public struct Encoder { } - + [CRepr] public struct DynamicIndexBufferHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct DynamicVertexBufferHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct FrameBufferHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct IndexBufferHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct IndirectBufferHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct OcclusionQueryHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct ProgramHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct ShaderHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct TextureHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct UniformHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct VertexBufferHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + [CRepr] public struct VertexLayoutHandle { public uint16 idx; public bool Valid => idx != uint16.MaxValue; } - + /// /// Init attachment. @@ -2397,7 +2397,7 @@ public static class bgfx /// [LinkName("bgfx_attachment_init")] public static extern void attachment_init(Attachment* _this, TextureHandle _handle, Access _access, uint16 _layer, uint16 _numLayers, uint16 _mip, uint8 _resolve); - + /// /// Start VertexLayout. /// @@ -2406,7 +2406,7 @@ public static class bgfx /// [LinkName("bgfx_vertex_layout_begin")] public static extern VertexLayout* vertex_layout_begin(VertexLayout* _this, RendererType _rendererType); - + /// /// Add attribute to VertexLayout. /// @remarks Must be called between begin/end. @@ -2420,7 +2420,7 @@ public static class bgfx /// [LinkName("bgfx_vertex_layout_add")] public static extern VertexLayout* vertex_layout_add(VertexLayout* _this, Attrib _attrib, uint8 _num, AttribType _type, bool _normalized, bool _asInt); - + /// /// Decode attribute. /// @@ -2433,7 +2433,7 @@ public static class bgfx /// [LinkName("bgfx_vertex_layout_decode")] public static extern void vertex_layout_decode(VertexLayout* _this, Attrib _attrib, uint8 * _num, AttribType* _type, bool* _normalized, bool* _asInt); - + /// /// Skip `_num` bytes in vertex stream. /// @@ -2442,14 +2442,14 @@ public static class bgfx /// [LinkName("bgfx_vertex_layout_skip")] public static extern VertexLayout* vertex_layout_skip(VertexLayout* _this, uint8 _num); - + /// /// End VertexLayout. /// /// [LinkName("bgfx_vertex_layout_end")] public static extern void vertex_layout_end(VertexLayout* _this); - + /// /// Pack vertex attribute into vertex stream format. /// @@ -2463,7 +2463,7 @@ public static class bgfx /// [LinkName("bgfx_vertex_pack")] public static extern void vertex_pack(float _input, bool _inputNormalized, Attrib _attr, VertexLayout* _layout, void* _data, uint32 _index); - + /// /// Unpack vertex attribute from vertex stream format. /// @@ -2476,7 +2476,7 @@ public static class bgfx /// [LinkName("bgfx_vertex_unpack")] public static extern void vertex_unpack(float _output, Attrib _attr, VertexLayout* _layout, void* _data, uint32 _index); - + /// /// Converts vertex stream data from one vertex stream format to another. /// @@ -2489,7 +2489,7 @@ public static class bgfx /// [LinkName("bgfx_vertex_convert")] public static extern void vertex_convert(VertexLayout* _dstLayout, void* _dstData, VertexLayout* _srcLayout, void* _srcData, uint32 _num); - + /// /// Weld vertices. /// @@ -2503,7 +2503,7 @@ public static class bgfx /// [LinkName("bgfx_weld_vertices")] public static extern uint32 weld_vertices(void* _output, VertexLayout* _layout, void* _data, uint32 _num, bool _index32, float _epsilon); - + /// /// Convert index buffer for use with different primitive topologies. /// @@ -2517,7 +2517,7 @@ public static class bgfx /// [LinkName("bgfx_topology_convert")] public static extern uint32 topology_convert(TopologyConvert _conversion, void* _dst, uint32 _dstSize, void* _indices, uint32 _numIndices, bool _index32); - + /// /// Sort indices. /// @@ -2535,7 +2535,7 @@ public static class bgfx /// [LinkName("bgfx_topology_sort_tri_list")] public static extern void topology_sort_tri_list(TopologySort _sort, void* _dst, uint32 _dstSize, float _dir, float _pos, void* _vertices, uint32 _stride, void* _indices, uint32 _numIndices, bool _index32); - + /// /// Returns supported backend API renderers. /// @@ -2545,7 +2545,7 @@ public static class bgfx /// [LinkName("bgfx_get_supported_renderers")] public static extern uint8 get_supported_renderers(uint8 _max, RendererType* _enum); - + /// /// Returns name of renderer. /// @@ -2554,7 +2554,7 @@ public static class bgfx /// [LinkName("bgfx_get_renderer_name")] public static extern char8* get_renderer_name(RendererType _type); - + /// /// Fill bgfx::Init struct with default values, before using it to initialize the library. /// @@ -2563,7 +2563,7 @@ public static class bgfx /// [LinkName("bgfx_init_ctor")] public static extern void init_ctor(Init* _init); - + /// /// Initialize the bgfx library. /// @@ -2572,14 +2572,14 @@ public static class bgfx /// [LinkName("bgfx_init")] public static extern bool init(Init* _init); - + /// /// Shutdown bgfx library. /// /// [LinkName("bgfx_shutdown")] public static extern void shutdown(); - + /// /// Reset graphic settings and back-buffer size. /// @attention This call doesn’t change the window size, it just resizes @@ -2593,7 +2593,7 @@ public static class bgfx /// [LinkName("bgfx_reset")] public static extern void reset(uint32 _width, uint32 _height, uint32 _flags, TextureFormat _format); - + /// /// Advance to next frame. When using multithreaded renderer, this call /// just swaps internal buffers, kicks render thread, and returns. In @@ -2604,7 +2604,7 @@ public static class bgfx /// [LinkName("bgfx_frame")] public static extern uint32 frame(bool _capture); - + /// /// Returns current renderer backend API type. /// @remarks @@ -2613,7 +2613,7 @@ public static class bgfx /// [LinkName("bgfx_get_renderer_type")] public static extern RendererType get_renderer_type(); - + /// /// Returns renderer capabilities. /// @remarks @@ -2622,7 +2622,7 @@ public static class bgfx /// [LinkName("bgfx_get_caps")] public static extern Caps* get_caps(); - + /// /// Returns performance counters. /// @attention Pointer returned is valid until `bgfx::frame` is called. @@ -2630,7 +2630,7 @@ public static class bgfx /// [LinkName("bgfx_get_stats")] public static extern Stats* get_stats(); - + /// /// Allocate buffer to pass to bgfx calls. Data will be freed inside bgfx. /// @@ -2639,7 +2639,7 @@ public static class bgfx /// [LinkName("bgfx_alloc")] public static extern Memory* alloc(uint32 _size); - + /// /// Allocate buffer and copy data into it. Data will be freed inside bgfx. /// @@ -2649,7 +2649,7 @@ public static class bgfx /// [LinkName("bgfx_copy")] public static extern Memory* copy(void* _data, uint32 _size); - + /// /// Make reference to data to pass to bgfx. Unlike `bgfx::alloc`, this call /// doesn't allocate memory for data. It just copies the _data pointer. You @@ -2665,7 +2665,7 @@ public static class bgfx /// [LinkName("bgfx_make_ref")] public static extern Memory* make_ref(void* _data, uint32 _size); - + /// /// Make reference to data to pass to bgfx. Unlike `bgfx::alloc`, this call /// doesn't allocate memory for data. It just copies the _data pointer. You @@ -2683,7 +2683,7 @@ public static class bgfx /// [LinkName("bgfx_make_ref_release")] public static extern Memory* make_ref_release(void* _data, uint32 _size, void* _releaseFn, void* _userData); - + /// /// Set debug flags. /// @@ -2692,7 +2692,7 @@ public static class bgfx /// [LinkName("bgfx_set_debug")] public static extern void set_debug(uint32 _debug); - + /// /// Clear internal debug text buffer. /// @@ -2702,7 +2702,7 @@ public static class bgfx /// [LinkName("bgfx_dbg_text_clear")] public static extern void dbg_text_clear(uint8 _attr, bool _small); - + /// /// Print formatted data to internal debug text character-buffer (VGA-compatible text mode). /// @@ -2714,7 +2714,7 @@ public static class bgfx /// [LinkName("bgfx_dbg_text_printf")] public static extern void dbg_text_printf(uint16 _x, uint16 _y, uint8 _attr, char8* _format, ... ); - + /// /// Print formatted data from variable argument list to internal debug text character-buffer (VGA-compatible text mode). /// @@ -2727,7 +2727,7 @@ public static class bgfx /// [LinkName("bgfx_dbg_text_vprintf")] public static extern void dbg_text_vprintf(uint16 _x, uint16 _y, uint8 _attr, char8* _format, void* _argList); - + /// /// Draw image into internal debug text buffer. /// @@ -2741,7 +2741,7 @@ public static class bgfx /// [LinkName("bgfx_dbg_text_image")] public static extern void dbg_text_image(uint16 _x, uint16 _y, uint16 _width, uint16 _height, void* _data, uint16 _pitch); - + /// /// Create static index buffer. /// @@ -2751,7 +2751,7 @@ public static class bgfx /// [LinkName("bgfx_create_index_buffer")] public static extern IndexBufferHandle create_index_buffer(Memory* _mem, uint16 _flags); - + /// /// Set static index buffer debug name. /// @@ -2762,7 +2762,7 @@ public static class bgfx /// [LinkName("bgfx_set_index_buffer_name")] public static extern void set_index_buffer_name(IndexBufferHandle _handle, char8* _name, int _len); - + /// /// Destroy static index buffer. /// @@ -2771,7 +2771,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_index_buffer")] public static extern void destroy_index_buffer(IndexBufferHandle _handle); - + /// /// Create vertex layout. /// @@ -2780,7 +2780,7 @@ public static class bgfx /// [LinkName("bgfx_create_vertex_layout")] public static extern VertexLayoutHandle create_vertex_layout(VertexLayout* _layout); - + /// /// Destroy vertex layout. /// @@ -2789,7 +2789,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_vertex_layout")] public static extern void destroy_vertex_layout(VertexLayoutHandle _layoutHandle); - + /// /// Create static vertex buffer. /// @@ -2800,7 +2800,7 @@ public static class bgfx /// [LinkName("bgfx_create_vertex_buffer")] public static extern VertexBufferHandle create_vertex_buffer(Memory* _mem, VertexLayout* _layout, uint16 _flags); - + /// /// Set static vertex buffer debug name. /// @@ -2811,7 +2811,7 @@ public static class bgfx /// [LinkName("bgfx_set_vertex_buffer_name")] public static extern void set_vertex_buffer_name(VertexBufferHandle _handle, char8* _name, int _len); - + /// /// Destroy static vertex buffer. /// @@ -2820,7 +2820,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_vertex_buffer")] public static extern void destroy_vertex_buffer(VertexBufferHandle _handle); - + /// /// Create empty dynamic index buffer. /// @@ -2830,7 +2830,7 @@ public static class bgfx /// [LinkName("bgfx_create_dynamic_index_buffer")] public static extern DynamicIndexBufferHandle create_dynamic_index_buffer(uint32 _num, uint16 _flags); - + /// /// Create a dynamic index buffer and initialize it. /// @@ -2840,7 +2840,7 @@ public static class bgfx /// [LinkName("bgfx_create_dynamic_index_buffer_mem")] public static extern DynamicIndexBufferHandle create_dynamic_index_buffer_mem(Memory* _mem, uint16 _flags); - + /// /// Update dynamic index buffer. /// @@ -2851,7 +2851,7 @@ public static class bgfx /// [LinkName("bgfx_update_dynamic_index_buffer")] public static extern void update_dynamic_index_buffer(DynamicIndexBufferHandle _handle, uint32 _startIndex, Memory* _mem); - + /// /// Destroy dynamic index buffer. /// @@ -2860,7 +2860,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_dynamic_index_buffer")] public static extern void destroy_dynamic_index_buffer(DynamicIndexBufferHandle _handle); - + /// /// Create empty dynamic vertex buffer. /// @@ -2871,7 +2871,7 @@ public static class bgfx /// [LinkName("bgfx_create_dynamic_vertex_buffer")] public static extern DynamicVertexBufferHandle create_dynamic_vertex_buffer(uint32 _num, VertexLayout* _layout, uint16 _flags); - + /// /// Create dynamic vertex buffer and initialize it. /// @@ -2882,7 +2882,7 @@ public static class bgfx /// [LinkName("bgfx_create_dynamic_vertex_buffer_mem")] public static extern DynamicVertexBufferHandle create_dynamic_vertex_buffer_mem(Memory* _mem, VertexLayout* _layout, uint16 _flags); - + /// /// Update dynamic vertex buffer. /// @@ -2893,7 +2893,7 @@ public static class bgfx /// [LinkName("bgfx_update_dynamic_vertex_buffer")] public static extern void update_dynamic_vertex_buffer(DynamicVertexBufferHandle _handle, uint32 _startVertex, Memory* _mem); - + /// /// Destroy dynamic vertex buffer. /// @@ -2902,7 +2902,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_dynamic_vertex_buffer")] public static extern void destroy_dynamic_vertex_buffer(DynamicVertexBufferHandle _handle); - + /// /// Returns number of requested or maximum available indices. /// @@ -2912,7 +2912,7 @@ public static class bgfx /// [LinkName("bgfx_get_avail_transient_index_buffer")] public static extern uint32 get_avail_transient_index_buffer(uint32 _num, bool _index32); - + /// /// Returns number of requested or maximum available vertices. /// @@ -2922,7 +2922,7 @@ public static class bgfx /// [LinkName("bgfx_get_avail_transient_vertex_buffer")] public static extern uint32 get_avail_transient_vertex_buffer(uint32 _num, VertexLayout* _layout); - + /// /// Returns number of requested or maximum available instance buffer slots. /// @@ -2932,7 +2932,7 @@ public static class bgfx /// [LinkName("bgfx_get_avail_instance_data_buffer")] public static extern uint32 get_avail_instance_data_buffer(uint32 _num, uint16 _stride); - + /// /// Allocate transient index buffer. /// @@ -2943,7 +2943,7 @@ public static class bgfx /// [LinkName("bgfx_alloc_transient_index_buffer")] public static extern void alloc_transient_index_buffer(TransientIndexBuffer* _tib, uint32 _num, bool _index32); - + /// /// Allocate transient vertex buffer. /// @@ -2954,7 +2954,7 @@ public static class bgfx /// [LinkName("bgfx_alloc_transient_vertex_buffer")] public static extern void alloc_transient_vertex_buffer(TransientVertexBuffer* _tvb, uint32 _num, VertexLayout* _layout); - + /// /// Check for required space and allocate transient vertex and index /// buffers. If both space requirements are satisfied function returns @@ -2970,7 +2970,7 @@ public static class bgfx /// [LinkName("bgfx_alloc_transient_buffers")] public static extern bool alloc_transient_buffers(TransientVertexBuffer* _tvb, VertexLayout* _layout, uint32 _numVertices, TransientIndexBuffer* _tib, uint32 _numIndices, bool _index32); - + /// /// Allocate instance data buffer. /// @@ -2981,7 +2981,7 @@ public static class bgfx /// [LinkName("bgfx_alloc_instance_data_buffer")] public static extern void alloc_instance_data_buffer(InstanceDataBuffer* _idb, uint32 _num, uint16 _stride); - + /// /// Create draw indirect buffer. /// @@ -2990,7 +2990,7 @@ public static class bgfx /// [LinkName("bgfx_create_indirect_buffer")] public static extern IndirectBufferHandle create_indirect_buffer(uint32 _num); - + /// /// Destroy draw indirect buffer. /// @@ -2999,7 +2999,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_indirect_buffer")] public static extern void destroy_indirect_buffer(IndirectBufferHandle _handle); - + /// /// Create shader from memory buffer. /// @remarks @@ -3010,7 +3010,7 @@ public static class bgfx /// [LinkName("bgfx_create_shader")] public static extern ShaderHandle create_shader(Memory* _mem); - + /// /// Returns the number of uniforms and uniform handles used inside a shader. /// @remarks @@ -3023,7 +3023,7 @@ public static class bgfx /// [LinkName("bgfx_get_shader_uniforms")] public static extern uint16 get_shader_uniforms(ShaderHandle _handle, UniformHandle* _uniforms, uint16 _max); - + /// /// Set shader debug name. /// @@ -3034,7 +3034,7 @@ public static class bgfx /// [LinkName("bgfx_set_shader_name")] public static extern void set_shader_name(ShaderHandle _handle, char8* _name, int _len); - + /// /// Destroy shader. /// @remark Once a shader program is created with _handle, @@ -3045,7 +3045,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_shader")] public static extern void destroy_shader(ShaderHandle _handle); - + /// /// Create program with vertex and fragment shaders. /// @@ -3056,7 +3056,7 @@ public static class bgfx /// [LinkName("bgfx_create_program")] public static extern ProgramHandle create_program(ShaderHandle _vsh, ShaderHandle _fsh, bool _destroyShaders); - + /// /// Create program with compute shader. /// @@ -3066,7 +3066,7 @@ public static class bgfx /// [LinkName("bgfx_create_compute_program")] public static extern ProgramHandle create_compute_program(ShaderHandle _csh, bool _destroyShaders); - + /// /// Destroy program. /// @@ -3075,7 +3075,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_program")] public static extern void destroy_program(ProgramHandle _handle); - + /// /// Validate texture parameters. /// @@ -3088,7 +3088,7 @@ public static class bgfx /// [LinkName("bgfx_is_texture_valid")] public static extern bool is_texture_valid(uint16 _depth, bool _cubeMap, uint16 _numLayers, TextureFormat _format, uint64 _flags); - + /// /// Validate frame buffer parameters. /// @@ -3098,7 +3098,7 @@ public static class bgfx /// [LinkName("bgfx_is_frame_buffer_valid")] public static extern bool is_frame_buffer_valid(uint8 _num, Attachment* _attachment); - + /// /// Calculate amount of memory required for texture. /// @@ -3114,7 +3114,7 @@ public static class bgfx /// [LinkName("bgfx_calc_texture_size")] public static extern void calc_texture_size(TextureInfo* _info, uint16 _width, uint16 _height, uint16 _depth, bool _cubeMap, bool _hasMips, uint16 _numLayers, TextureFormat _format); - + /// /// Create texture from memory buffer. /// @@ -3126,7 +3126,7 @@ public static class bgfx /// [LinkName("bgfx_create_texture")] public static extern TextureHandle create_texture(Memory* _mem, uint64 _flags, uint8 _skip, TextureInfo* _info); - + /// /// Create 2D texture. /// @@ -3141,7 +3141,7 @@ public static class bgfx /// [LinkName("bgfx_create_texture_2d")] public static extern TextureHandle create_texture_2d(uint16 _width, uint16 _height, bool _hasMips, uint16 _numLayers, TextureFormat _format, uint64 _flags, Memory* _mem); - + /// /// Create texture with size based on back-buffer ratio. Texture will maintain ratio /// if back buffer resolution changes. @@ -3155,7 +3155,7 @@ public static class bgfx /// [LinkName("bgfx_create_texture_2d_scaled")] public static extern TextureHandle create_texture_2d_scaled(BackbufferRatio _ratio, bool _hasMips, uint16 _numLayers, TextureFormat _format, uint64 _flags); - + /// /// Create 3D texture. /// @@ -3170,7 +3170,7 @@ public static class bgfx /// [LinkName("bgfx_create_texture_3d")] public static extern TextureHandle create_texture_3d(uint16 _width, uint16 _height, uint16 _depth, bool _hasMips, TextureFormat _format, uint64 _flags, Memory* _mem); - + /// /// Create Cube texture. /// @@ -3184,7 +3184,7 @@ public static class bgfx /// [LinkName("bgfx_create_texture_cube")] public static extern TextureHandle create_texture_cube(uint16 _size, bool _hasMips, uint16 _numLayers, TextureFormat _format, uint64 _flags, Memory* _mem); - + /// /// Update 2D texture. /// @attention It's valid to update only mutable texture. See `bgfx::createTexture2D` for more info. @@ -3202,7 +3202,7 @@ public static class bgfx /// [LinkName("bgfx_update_texture_2d")] public static extern void update_texture_2d(TextureHandle _handle, uint16 _layer, uint8 _mip, uint16 _x, uint16 _y, uint16 _width, uint16 _height, Memory* _mem, uint16 _pitch); - + /// /// Update 3D texture. /// @attention It's valid to update only mutable texture. See `bgfx::createTexture3D` for more info. @@ -3220,7 +3220,7 @@ public static class bgfx /// [LinkName("bgfx_update_texture_3d")] public static extern void update_texture_3d(TextureHandle _handle, uint8 _mip, uint16 _x, uint16 _y, uint16 _z, uint16 _width, uint16 _height, uint16 _depth, Memory* _mem); - + /// /// Update Cube texture. /// @attention It's valid to update only mutable texture. See `bgfx::createTextureCube` for more info. @@ -3239,7 +3239,7 @@ public static class bgfx /// [LinkName("bgfx_update_texture_cube")] public static extern void update_texture_cube(TextureHandle _handle, uint16 _layer, uint8 _side, uint8 _mip, uint16 _x, uint16 _y, uint16 _width, uint16 _height, Memory* _mem, uint16 _pitch); - + /// /// Read back texture content. /// @attention Texture must be created with `BGFX_TEXTURE_READ_BACK` flag. @@ -3252,7 +3252,7 @@ public static class bgfx /// [LinkName("bgfx_read_texture")] public static extern uint32 read_texture(TextureHandle _handle, void* _data, uint8 _mip); - + /// /// Set texture debug name. /// @@ -3263,7 +3263,7 @@ public static class bgfx /// [LinkName("bgfx_set_texture_name")] public static extern void set_texture_name(TextureHandle _handle, char8* _name, int _len); - + /// /// Returns texture direct access pointer. /// @attention Availability depends on: `BGFX_CAPS_TEXTURE_DIRECT_ACCESS`. This feature @@ -3274,7 +3274,7 @@ public static class bgfx /// [LinkName("bgfx_get_direct_access_ptr")] public static extern void* get_direct_access_ptr(TextureHandle _handle); - + /// /// Destroy texture. /// @@ -3283,7 +3283,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_texture")] public static extern void destroy_texture(TextureHandle _handle); - + /// /// Create frame buffer (simple). /// @@ -3295,7 +3295,7 @@ public static class bgfx /// [LinkName("bgfx_create_frame_buffer")] public static extern FrameBufferHandle create_frame_buffer(uint16 _width, uint16 _height, TextureFormat _format, uint64 _textureFlags); - + /// /// Create frame buffer with size based on back-buffer ratio. Frame buffer will maintain ratio /// if back buffer resolution changes. @@ -3307,7 +3307,7 @@ public static class bgfx /// [LinkName("bgfx_create_frame_buffer_scaled")] public static extern FrameBufferHandle create_frame_buffer_scaled(BackbufferRatio _ratio, TextureFormat _format, uint64 _textureFlags); - + /// /// Create MRT frame buffer from texture handles (simple). /// @@ -3318,7 +3318,7 @@ public static class bgfx /// [LinkName("bgfx_create_frame_buffer_from_handles")] public static extern FrameBufferHandle create_frame_buffer_from_handles(uint8 _num, TextureHandle* _handles, bool _destroyTexture); - + /// /// Create MRT frame buffer from texture handles with specific layer and /// mip level. @@ -3330,7 +3330,7 @@ public static class bgfx /// [LinkName("bgfx_create_frame_buffer_from_attachment")] public static extern FrameBufferHandle create_frame_buffer_from_attachment(uint8 _num, Attachment* _attachment, bool _destroyTexture); - + /// /// Create frame buffer for multiple window rendering. /// @remarks @@ -3346,7 +3346,7 @@ public static class bgfx /// [LinkName("bgfx_create_frame_buffer_from_nwh")] public static extern FrameBufferHandle create_frame_buffer_from_nwh(void* _nwh, uint16 _width, uint16 _height, TextureFormat _format, TextureFormat _depthFormat); - + /// /// Set frame buffer debug name. /// @@ -3357,7 +3357,7 @@ public static class bgfx /// [LinkName("bgfx_set_frame_buffer_name")] public static extern void set_frame_buffer_name(FrameBufferHandle _handle, char8* _name, int _len); - + /// /// Obtain texture handle of frame buffer attachment. /// @@ -3366,7 +3366,7 @@ public static class bgfx /// [LinkName("bgfx_get_texture")] public static extern TextureHandle get_texture(FrameBufferHandle _handle, uint8 _attachment); - + /// /// Destroy frame buffer. /// @@ -3375,7 +3375,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_frame_buffer")] public static extern void destroy_frame_buffer(FrameBufferHandle _handle); - + /// /// Create shader uniform parameter. /// @remarks @@ -3408,7 +3408,7 @@ public static class bgfx /// [LinkName("bgfx_create_uniform")] public static extern UniformHandle create_uniform(char8* _name, UniformType _type, uint16 _num); - + /// /// Retrieve uniform info. /// @@ -3418,7 +3418,7 @@ public static class bgfx /// [LinkName("bgfx_get_uniform_info")] public static extern void get_uniform_info(UniformHandle _handle, UniformInfo* _info); - + /// /// Destroy shader uniform parameter. /// @@ -3427,14 +3427,14 @@ public static class bgfx /// [LinkName("bgfx_destroy_uniform")] public static extern void destroy_uniform(UniformHandle _handle); - + /// /// Create occlusion query. /// /// [LinkName("bgfx_create_occlusion_query")] public static extern OcclusionQueryHandle create_occlusion_query(); - + /// /// Retrieve occlusion query result from previous frame. /// @@ -3444,7 +3444,7 @@ public static class bgfx /// [LinkName("bgfx_get_result")] public static extern OcclusionQueryResult get_result(OcclusionQueryHandle _handle, int* _result); - + /// /// Destroy occlusion query. /// @@ -3453,7 +3453,7 @@ public static class bgfx /// [LinkName("bgfx_destroy_occlusion_query")] public static extern void destroy_occlusion_query(OcclusionQueryHandle _handle); - + /// /// Set palette color value. /// @@ -3463,7 +3463,7 @@ public static class bgfx /// [LinkName("bgfx_set_palette_color")] public static extern void set_palette_color(uint8 _index, float _rgba); - + /// /// Set palette color value. /// @@ -3476,7 +3476,7 @@ public static class bgfx /// [LinkName("bgfx_set_palette_color_rgba32f")] public static extern void set_palette_color_rgba32f(uint8 _index, float _r, float _g, float _b, float _a); - + /// /// Set palette color value. /// @@ -3486,7 +3486,7 @@ public static class bgfx /// [LinkName("bgfx_set_palette_color_rgba8")] public static extern void set_palette_color_rgba8(uint8 _index, uint32 _rgba); - + /// /// Set view name. /// @remarks @@ -3504,7 +3504,7 @@ public static class bgfx /// [LinkName("bgfx_set_view_name")] public static extern void set_view_name(ViewId _id, char8* _name, int _len); - + /// /// Set view rectangle. Draw primitive outside view will be clipped. /// @@ -3517,7 +3517,7 @@ public static class bgfx /// [LinkName("bgfx_set_view_rect")] public static extern void set_view_rect(ViewId _id, uint16 _x, uint16 _y, uint16 _width, uint16 _height); - + /// /// Set view rectangle. Draw primitive outside view will be clipped. /// @@ -3529,7 +3529,7 @@ public static class bgfx /// [LinkName("bgfx_set_view_rect_ratio")] public static extern void set_view_rect_ratio(ViewId _id, uint16 _x, uint16 _y, BackbufferRatio _ratio); - + /// /// Set view scissor. Draw primitive outside view will be clipped. When /// _x, _y, _width and _height are set to 0, scissor will be disabled. @@ -3543,7 +3543,7 @@ public static class bgfx /// [LinkName("bgfx_set_view_scissor")] public static extern void set_view_scissor(ViewId _id, uint16 _x, uint16 _y, uint16 _width, uint16 _height); - + /// /// Set view clear flags. /// @@ -3556,7 +3556,7 @@ public static class bgfx /// [LinkName("bgfx_set_view_clear")] public static extern void set_view_clear(ViewId _id, uint16 _flags, uint32 _rgba, float _depth, uint8 _stencil); - + /// /// Set view clear flags with different clear color for each /// frame buffer texture. `bgfx::setPaletteColor` must be used to set up a @@ -3578,7 +3578,7 @@ public static class bgfx /// [LinkName("bgfx_set_view_clear_mrt")] public static extern void set_view_clear_mrt(ViewId _id, uint16 _flags, float _depth, uint8 _stencil, uint8 _c0, uint8 _c1, uint8 _c2, uint8 _c3, uint8 _c4, uint8 _c5, uint8 _c6, uint8 _c7); - + /// /// Set view sorting mode. /// @remarks @@ -3590,7 +3590,7 @@ public static class bgfx /// [LinkName("bgfx_set_view_mode")] public static extern void set_view_mode(ViewId _id, ViewMode _mode); - + /// /// Set view frame buffer. /// @remarks @@ -3602,7 +3602,7 @@ public static class bgfx /// [LinkName("bgfx_set_view_frame_buffer")] public static extern void set_view_frame_buffer(ViewId _id, FrameBufferHandle _handle); - + /// /// Set view's view matrix and projection matrix, /// all draw primitives in this view will use these two matrices. @@ -3614,7 +3614,7 @@ public static class bgfx /// [LinkName("bgfx_set_view_transform")] public static extern void set_view_transform(ViewId _id, void* _view, void* _proj); - + /// /// Post submit view reordering. /// @@ -3625,14 +3625,14 @@ public static class bgfx /// [LinkName("bgfx_set_view_order")] public static extern void set_view_order(ViewId _id, uint16 _num, ViewId* _order); - + /// /// Reset all view settings to default. /// /// [LinkName("bgfx_reset_view")] public static extern void reset_view(ViewId _id); - + /// /// Begin submitting draw calls from thread. /// @@ -3641,7 +3641,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_begin")] public static extern Encoder* encoder_begin(bool _forThread); - + /// /// End submitting draw calls from thread. /// @@ -3650,7 +3650,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_end")] public static extern void encoder_end(Encoder* _encoder); - + /// /// Sets a debug marker. This allows you to group graphics calls together for easy browsing in /// graphics debugging tools. @@ -3661,7 +3661,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_marker")] public static extern void encoder_set_marker(Encoder* _this, char8* _name, int _len); - + /// /// Set render states for draw primitive. /// @remarks @@ -3681,7 +3681,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_state")] public static extern void encoder_set_state(Encoder* _this, uint64 _state, uint32 _rgba); - + /// /// Set condition for rendering. /// @@ -3691,7 +3691,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_condition")] public static extern void encoder_set_condition(Encoder* _this, OcclusionQueryHandle _handle, bool _visible); - + /// /// Set stencil test state. /// @@ -3701,7 +3701,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_stencil")] public static extern void encoder_set_stencil(Encoder* _this, uint32 _fstencil, uint32 _bstencil); - + /// /// Set scissor for draw primitive. /// @remark @@ -3715,7 +3715,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_scissor")] public static extern uint16 encoder_set_scissor(Encoder* _this, uint16 _x, uint16 _y, uint16 _width, uint16 _height); - + /// /// Set scissor from cache for draw primitive. /// @remark @@ -3726,7 +3726,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_scissor_cached")] public static extern void encoder_set_scissor_cached(Encoder* _this, uint16 _cache); - + /// /// Set model matrix for draw primitive. If it is not called, /// the model will be rendered with an identity model matrix. @@ -3737,7 +3737,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_transform")] public static extern uint32 encoder_set_transform(Encoder* _this, void* _mtx, uint16 _num); - + /// /// Set model matrix from matrix cache for draw primitive. /// @@ -3747,7 +3747,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_transform_cached")] public static extern void encoder_set_transform_cached(Encoder* _this, uint32 _cache, uint16 _num); - + /// /// Reserve matrices in internal matrix cache. /// @attention Pointer returned can be modified until `bgfx::frame` is called. @@ -3758,7 +3758,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_alloc_transform")] public static extern uint32 encoder_alloc_transform(Encoder* _this, Transform* _transform, uint16 _num); - + /// /// Set shader uniform parameter for draw primitive. /// @@ -3769,7 +3769,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_uniform")] public static extern void encoder_set_uniform(Encoder* _this, UniformHandle _handle, void* _value, uint16 _num); - + /// /// Set index buffer for draw primitive. /// @@ -3780,7 +3780,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_index_buffer")] public static extern void encoder_set_index_buffer(Encoder* _this, IndexBufferHandle _handle, uint32 _firstIndex, uint32 _numIndices); - + /// /// Set index buffer for draw primitive. /// @@ -3791,7 +3791,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_dynamic_index_buffer")] public static extern void encoder_set_dynamic_index_buffer(Encoder* _this, DynamicIndexBufferHandle _handle, uint32 _firstIndex, uint32 _numIndices); - + /// /// Set index buffer for draw primitive. /// @@ -3802,7 +3802,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_transient_index_buffer")] public static extern void encoder_set_transient_index_buffer(Encoder* _this, TransientIndexBuffer* _tib, uint32 _firstIndex, uint32 _numIndices); - + /// /// Set vertex buffer for draw primitive. /// @@ -3814,7 +3814,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_vertex_buffer")] public static extern void encoder_set_vertex_buffer(Encoder* _this, uint8 _stream, VertexBufferHandle _handle, uint32 _startVertex, uint32 _numVertices); - + /// /// Set vertex buffer for draw primitive. /// @@ -3827,7 +3827,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_vertex_buffer_with_layout")] public static extern void encoder_set_vertex_buffer_with_layout(Encoder* _this, uint8 _stream, VertexBufferHandle _handle, uint32 _startVertex, uint32 _numVertices, VertexLayoutHandle _layoutHandle); - + /// /// Set vertex buffer for draw primitive. /// @@ -3839,10 +3839,10 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_dynamic_vertex_buffer")] public static extern void encoder_set_dynamic_vertex_buffer(Encoder* _this, uint8 _stream, DynamicVertexBufferHandle _handle, uint32 _startVertex, uint32 _numVertices); - + [LinkName("bgfx_encoder_set_dynamic_vertex_buffer_with_layout")] public static extern void encoder_set_dynamic_vertex_buffer_with_layout(Encoder* _this, uint8 _stream, DynamicVertexBufferHandle _handle, uint32 _startVertex, uint32 _numVertices, VertexLayoutHandle _layoutHandle); - + /// /// Set vertex buffer for draw primitive. /// @@ -3854,7 +3854,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_transient_vertex_buffer")] public static extern void encoder_set_transient_vertex_buffer(Encoder* _this, uint8 _stream, TransientVertexBuffer* _tvb, uint32 _startVertex, uint32 _numVertices); - + /// /// Set vertex buffer for draw primitive. /// @@ -3867,7 +3867,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_transient_vertex_buffer_with_layout")] public static extern void encoder_set_transient_vertex_buffer_with_layout(Encoder* _this, uint8 _stream, TransientVertexBuffer* _tvb, uint32 _startVertex, uint32 _numVertices, VertexLayoutHandle _layoutHandle); - + /// /// Set number of vertices for auto generated vertices use in conjunction /// with gl_VertexID. @@ -3878,7 +3878,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_vertex_count")] public static extern void encoder_set_vertex_count(Encoder* _this, uint32 _numVertices); - + /// /// Set instance data buffer for draw primitive. /// @@ -3889,7 +3889,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_instance_data_buffer")] public static extern void encoder_set_instance_data_buffer(Encoder* _this, InstanceDataBuffer* _idb, uint32 _start, uint32 _num); - + /// /// Set instance data buffer for draw primitive. /// @@ -3900,7 +3900,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_instance_data_from_vertex_buffer")] public static extern void encoder_set_instance_data_from_vertex_buffer(Encoder* _this, VertexBufferHandle _handle, uint32 _startVertex, uint32 _num); - + /// /// Set instance data buffer for draw primitive. /// @@ -3911,7 +3911,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_instance_data_from_dynamic_vertex_buffer")] public static extern void encoder_set_instance_data_from_dynamic_vertex_buffer(Encoder* _this, DynamicVertexBufferHandle _handle, uint32 _startVertex, uint32 _num); - + /// /// Set number of instances for auto generated instances use in conjunction /// with gl_InstanceID. @@ -3920,7 +3920,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_instance_count")] public static extern void encoder_set_instance_count(Encoder* _this, uint32 _numInstances); - + /// /// Set texture stage for draw primitive. /// @@ -3932,7 +3932,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_texture")] public static extern void encoder_set_texture(Encoder* _this, uint8 _stage, UniformHandle _sampler, TextureHandle _handle, uint32 _flags); - + /// /// Submit an empty primitive for rendering. Uniforms and draw state /// will be applied but no geometry will be submitted. Useful in cases @@ -3946,7 +3946,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_touch")] public static extern void encoder_touch(Encoder* _this, ViewId _id); - + /// /// Submit primitive for rendering. /// @@ -3958,7 +3958,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_submit")] public static extern void encoder_submit(Encoder* _this, ViewId _id, ProgramHandle _program, uint32 _depth, uint8 _flags); - + /// /// Submit primitive with occlusion query for rendering. /// @@ -3971,7 +3971,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_submit_occlusion_query")] public static extern void encoder_submit_occlusion_query(Encoder* _this, ViewId _id, ProgramHandle _program, OcclusionQueryHandle _occlusionQuery, uint32 _depth, uint8 _flags); - + /// /// Submit primitive for rendering with index and instance data info from /// indirect buffer. @@ -3988,7 +3988,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_submit_indirect")] public static extern void encoder_submit_indirect(Encoder* _this, ViewId _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint32 _start, uint32 _num, uint32 _depth, uint8 _flags); - + /// /// Submit primitive for rendering with index and instance data info and /// draw count from indirect buffers. @@ -4007,7 +4007,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_submit_indirect_count")] public static extern void encoder_submit_indirect_count(Encoder* _this, ViewId _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint32 _start, IndexBufferHandle _numHandle, uint32 _numIndex, uint32 _numMax, uint32 _depth, uint8 _flags); - + /// /// Set compute index buffer. /// @@ -4018,7 +4018,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_compute_index_buffer")] public static extern void encoder_set_compute_index_buffer(Encoder* _this, uint8 _stage, IndexBufferHandle _handle, Access _access); - + /// /// Set compute vertex buffer. /// @@ -4029,7 +4029,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_compute_vertex_buffer")] public static extern void encoder_set_compute_vertex_buffer(Encoder* _this, uint8 _stage, VertexBufferHandle _handle, Access _access); - + /// /// Set compute dynamic index buffer. /// @@ -4040,7 +4040,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_compute_dynamic_index_buffer")] public static extern void encoder_set_compute_dynamic_index_buffer(Encoder* _this, uint8 _stage, DynamicIndexBufferHandle _handle, Access _access); - + /// /// Set compute dynamic vertex buffer. /// @@ -4051,7 +4051,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_compute_dynamic_vertex_buffer")] public static extern void encoder_set_compute_dynamic_vertex_buffer(Encoder* _this, uint8 _stage, DynamicVertexBufferHandle _handle, Access _access); - + /// /// Set compute indirect buffer. /// @@ -4062,7 +4062,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_compute_indirect_buffer")] public static extern void encoder_set_compute_indirect_buffer(Encoder* _this, uint8 _stage, IndirectBufferHandle _handle, Access _access); - + /// /// Set compute image from texture. /// @@ -4075,7 +4075,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_set_image")] public static extern void encoder_set_image(Encoder* _this, uint8 _stage, TextureHandle _handle, uint8 _mip, Access _access, TextureFormat _format); - + /// /// Dispatch compute. /// @@ -4089,7 +4089,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_dispatch")] public static extern void encoder_dispatch(Encoder* _this, ViewId _id, ProgramHandle _program, uint32 _numX, uint32 _numY, uint32 _numZ, uint8 _flags); - + /// /// Dispatch compute indirect. /// @@ -4103,7 +4103,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_dispatch_indirect")] public static extern void encoder_dispatch_indirect(Encoder* _this, ViewId _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint32 _start, uint32 _num, uint8 _flags); - + /// /// Discard previously set state for draw or compute call. /// @@ -4112,7 +4112,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_discard")] public static extern void encoder_discard(Encoder* _this, uint8 _flags); - + /// /// Blit 2D texture region between two 2D textures. /// @attention Destination texture must be created with `BGFX_TEXTURE_BLIT_DST` flag. @@ -4136,7 +4136,7 @@ public static class bgfx /// [LinkName("bgfx_encoder_blit")] public static extern void encoder_blit(Encoder* _this, ViewId _id, TextureHandle _dst, uint8 _dstMip, uint16 _dstX, uint16 _dstY, uint16 _dstZ, TextureHandle _src, uint8 _srcMip, uint16 _srcX, uint16 _srcY, uint16 _srcZ, uint16 _width, uint16 _height, uint16 _depth); - + /// /// Request screen shot of window back buffer. /// @remarks @@ -4149,7 +4149,7 @@ public static class bgfx /// [LinkName("bgfx_request_screen_shot")] public static extern void request_screen_shot(FrameBufferHandle _handle, char8* _filePath); - + /// /// Render frame. /// @attention `bgfx::renderFrame` is blocking call. It waits for @@ -4165,7 +4165,7 @@ public static class bgfx /// [LinkName("bgfx_render_frame")] public static extern RenderFrame render_frame(int _msecs); - + /// /// Set platform data. /// @warning Must be called before `bgfx::init`. @@ -4175,7 +4175,7 @@ public static class bgfx /// [LinkName("bgfx_set_platform_data")] public static extern void set_platform_data(PlatformData* _data); - + /// /// Get internal data for interop. /// @attention It's expected you understand some bgfx internals before you @@ -4185,7 +4185,7 @@ public static class bgfx /// [LinkName("bgfx_get_internal_data")] public static extern InternalData* get_internal_data(); - + /// /// Override internal texture with externally created texture. Previously /// created internal texture will released. @@ -4199,7 +4199,7 @@ public static class bgfx /// [LinkName("bgfx_override_internal_texture_ptr")] public static extern void* override_internal_texture_ptr(TextureHandle _handle, void* _ptr); - + /// /// Override internal texture by creating new texture. Previously created /// internal texture will released. @@ -4219,7 +4219,7 @@ public static class bgfx /// [LinkName("bgfx_override_internal_texture")] public static extern void* override_internal_texture(TextureHandle _handle, uint16 _width, uint16 _height, uint8 _numMips, TextureFormat _format, uint64 _flags); - + /// /// Sets a debug marker. This allows you to group graphics calls together for easy browsing in /// graphics debugging tools. @@ -4230,7 +4230,7 @@ public static class bgfx /// [LinkName("bgfx_set_marker")] public static extern void set_marker(char8* _name, int _len); - + /// /// Set render states for draw primitive. /// @remarks @@ -4250,7 +4250,7 @@ public static class bgfx /// [LinkName("bgfx_set_state")] public static extern void set_state(uint64 _state, uint32 _rgba); - + /// /// Set condition for rendering. /// @@ -4260,7 +4260,7 @@ public static class bgfx /// [LinkName("bgfx_set_condition")] public static extern void set_condition(OcclusionQueryHandle _handle, bool _visible); - + /// /// Set stencil test state. /// @@ -4270,7 +4270,7 @@ public static class bgfx /// [LinkName("bgfx_set_stencil")] public static extern void set_stencil(uint32 _fstencil, uint32 _bstencil); - + /// /// Set scissor for draw primitive. /// @remark @@ -4284,7 +4284,7 @@ public static class bgfx /// [LinkName("bgfx_set_scissor")] public static extern uint16 set_scissor(uint16 _x, uint16 _y, uint16 _width, uint16 _height); - + /// /// Set scissor from cache for draw primitive. /// @remark @@ -4295,7 +4295,7 @@ public static class bgfx /// [LinkName("bgfx_set_scissor_cached")] public static extern void set_scissor_cached(uint16 _cache); - + /// /// Set model matrix for draw primitive. If it is not called, /// the model will be rendered with an identity model matrix. @@ -4306,7 +4306,7 @@ public static class bgfx /// [LinkName("bgfx_set_transform")] public static extern uint32 set_transform(void* _mtx, uint16 _num); - + /// /// Set model matrix from matrix cache for draw primitive. /// @@ -4316,7 +4316,7 @@ public static class bgfx /// [LinkName("bgfx_set_transform_cached")] public static extern void set_transform_cached(uint32 _cache, uint16 _num); - + /// /// Reserve matrices in internal matrix cache. /// @attention Pointer returned can be modified until `bgfx::frame` is called. @@ -4327,7 +4327,7 @@ public static class bgfx /// [LinkName("bgfx_alloc_transform")] public static extern uint32 alloc_transform(Transform* _transform, uint16 _num); - + /// /// Set shader uniform parameter for draw primitive. /// @@ -4338,7 +4338,7 @@ public static class bgfx /// [LinkName("bgfx_set_uniform")] public static extern void set_uniform(UniformHandle _handle, void* _value, uint16 _num); - + /// /// Set index buffer for draw primitive. /// @@ -4349,7 +4349,7 @@ public static class bgfx /// [LinkName("bgfx_set_index_buffer")] public static extern void set_index_buffer(IndexBufferHandle _handle, uint32 _firstIndex, uint32 _numIndices); - + /// /// Set index buffer for draw primitive. /// @@ -4360,7 +4360,7 @@ public static class bgfx /// [LinkName("bgfx_set_dynamic_index_buffer")] public static extern void set_dynamic_index_buffer(DynamicIndexBufferHandle _handle, uint32 _firstIndex, uint32 _numIndices); - + /// /// Set index buffer for draw primitive. /// @@ -4371,7 +4371,7 @@ public static class bgfx /// [LinkName("bgfx_set_transient_index_buffer")] public static extern void set_transient_index_buffer(TransientIndexBuffer* _tib, uint32 _firstIndex, uint32 _numIndices); - + /// /// Set vertex buffer for draw primitive. /// @@ -4383,7 +4383,7 @@ public static class bgfx /// [LinkName("bgfx_set_vertex_buffer")] public static extern void set_vertex_buffer(uint8 _stream, VertexBufferHandle _handle, uint32 _startVertex, uint32 _numVertices); - + /// /// Set vertex buffer for draw primitive. /// @@ -4396,7 +4396,7 @@ public static class bgfx /// [LinkName("bgfx_set_vertex_buffer_with_layout")] public static extern void set_vertex_buffer_with_layout(uint8 _stream, VertexBufferHandle _handle, uint32 _startVertex, uint32 _numVertices, VertexLayoutHandle _layoutHandle); - + /// /// Set vertex buffer for draw primitive. /// @@ -4408,7 +4408,7 @@ public static class bgfx /// [LinkName("bgfx_set_dynamic_vertex_buffer")] public static extern void set_dynamic_vertex_buffer(uint8 _stream, DynamicVertexBufferHandle _handle, uint32 _startVertex, uint32 _numVertices); - + /// /// Set vertex buffer for draw primitive. /// @@ -4421,7 +4421,7 @@ public static class bgfx /// [LinkName("bgfx_set_dynamic_vertex_buffer_with_layout")] public static extern void set_dynamic_vertex_buffer_with_layout(uint8 _stream, DynamicVertexBufferHandle _handle, uint32 _startVertex, uint32 _numVertices, VertexLayoutHandle _layoutHandle); - + /// /// Set vertex buffer for draw primitive. /// @@ -4433,7 +4433,7 @@ public static class bgfx /// [LinkName("bgfx_set_transient_vertex_buffer")] public static extern void set_transient_vertex_buffer(uint8 _stream, TransientVertexBuffer* _tvb, uint32 _startVertex, uint32 _numVertices); - + /// /// Set vertex buffer for draw primitive. /// @@ -4446,7 +4446,7 @@ public static class bgfx /// [LinkName("bgfx_set_transient_vertex_buffer_with_layout")] public static extern void set_transient_vertex_buffer_with_layout(uint8 _stream, TransientVertexBuffer* _tvb, uint32 _startVertex, uint32 _numVertices, VertexLayoutHandle _layoutHandle); - + /// /// Set number of vertices for auto generated vertices use in conjunction /// with gl_VertexID. @@ -4457,7 +4457,7 @@ public static class bgfx /// [LinkName("bgfx_set_vertex_count")] public static extern void set_vertex_count(uint32 _numVertices); - + /// /// Set instance data buffer for draw primitive. /// @@ -4468,7 +4468,7 @@ public static class bgfx /// [LinkName("bgfx_set_instance_data_buffer")] public static extern void set_instance_data_buffer(InstanceDataBuffer* _idb, uint32 _start, uint32 _num); - + /// /// Set instance data buffer for draw primitive. /// @@ -4479,7 +4479,7 @@ public static class bgfx /// [LinkName("bgfx_set_instance_data_from_vertex_buffer")] public static extern void set_instance_data_from_vertex_buffer(VertexBufferHandle _handle, uint32 _startVertex, uint32 _num); - + /// /// Set instance data buffer for draw primitive. /// @@ -4490,7 +4490,7 @@ public static class bgfx /// [LinkName("bgfx_set_instance_data_from_dynamic_vertex_buffer")] public static extern void set_instance_data_from_dynamic_vertex_buffer(DynamicVertexBufferHandle _handle, uint32 _startVertex, uint32 _num); - + /// /// Set number of instances for auto generated instances use in conjunction /// with gl_InstanceID. @@ -4499,7 +4499,7 @@ public static class bgfx /// [LinkName("bgfx_set_instance_count")] public static extern void set_instance_count(uint32 _numInstances); - + /// /// Set texture stage for draw primitive. /// @@ -4511,7 +4511,7 @@ public static class bgfx /// [LinkName("bgfx_set_texture")] public static extern void set_texture(uint8 _stage, UniformHandle _sampler, TextureHandle _handle, uint32 _flags); - + /// /// Submit an empty primitive for rendering. Uniforms and draw state /// will be applied but no geometry will be submitted. @@ -4523,7 +4523,7 @@ public static class bgfx /// [LinkName("bgfx_touch")] public static extern void touch(ViewId _id); - + /// /// Submit primitive for rendering. /// @@ -4535,7 +4535,7 @@ public static class bgfx /// [LinkName("bgfx_submit")] public static extern void submit(ViewId _id, ProgramHandle _program, uint32 _depth, uint8 _flags); - + /// /// Submit primitive with occlusion query for rendering. /// @@ -4548,7 +4548,7 @@ public static class bgfx /// [LinkName("bgfx_submit_occlusion_query")] public static extern void submit_occlusion_query(ViewId _id, ProgramHandle _program, OcclusionQueryHandle _occlusionQuery, uint32 _depth, uint8 _flags); - + /// /// Submit primitive for rendering with index and instance data info from /// indirect buffer. @@ -4565,7 +4565,7 @@ public static class bgfx /// [LinkName("bgfx_submit_indirect")] public static extern void submit_indirect(ViewId _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint32 _start, uint32 _num, uint32 _depth, uint8 _flags); - + /// /// Submit primitive for rendering with index and instance data info and /// draw count from indirect buffers. @@ -4584,7 +4584,7 @@ public static class bgfx /// [LinkName("bgfx_submit_indirect_count")] public static extern void submit_indirect_count(ViewId _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint32 _start, IndexBufferHandle _numHandle, uint32 _numIndex, uint32 _numMax, uint32 _depth, uint8 _flags); - + /// /// Set compute index buffer. /// @@ -4595,7 +4595,7 @@ public static class bgfx /// [LinkName("bgfx_set_compute_index_buffer")] public static extern void set_compute_index_buffer(uint8 _stage, IndexBufferHandle _handle, Access _access); - + /// /// Set compute vertex buffer. /// @@ -4606,7 +4606,7 @@ public static class bgfx /// [LinkName("bgfx_set_compute_vertex_buffer")] public static extern void set_compute_vertex_buffer(uint8 _stage, VertexBufferHandle _handle, Access _access); - + /// /// Set compute dynamic index buffer. /// @@ -4617,7 +4617,7 @@ public static class bgfx /// [LinkName("bgfx_set_compute_dynamic_index_buffer")] public static extern void set_compute_dynamic_index_buffer(uint8 _stage, DynamicIndexBufferHandle _handle, Access _access); - + /// /// Set compute dynamic vertex buffer. /// @@ -4628,7 +4628,7 @@ public static class bgfx /// [LinkName("bgfx_set_compute_dynamic_vertex_buffer")] public static extern void set_compute_dynamic_vertex_buffer(uint8 _stage, DynamicVertexBufferHandle _handle, Access _access); - + /// /// Set compute indirect buffer. /// @@ -4639,7 +4639,7 @@ public static class bgfx /// [LinkName("bgfx_set_compute_indirect_buffer")] public static extern void set_compute_indirect_buffer(uint8 _stage, IndirectBufferHandle _handle, Access _access); - + /// /// Set compute image from texture. /// @@ -4652,7 +4652,7 @@ public static class bgfx /// [LinkName("bgfx_set_image")] public static extern void set_image(uint8 _stage, TextureHandle _handle, uint8 _mip, Access _access, TextureFormat _format); - + /// /// Dispatch compute. /// @@ -4666,7 +4666,7 @@ public static class bgfx /// [LinkName("bgfx_dispatch")] public static extern void dispatch(ViewId _id, ProgramHandle _program, uint32 _numX, uint32 _numY, uint32 _numZ, uint8 _flags); - + /// /// Dispatch compute indirect. /// @@ -4680,7 +4680,7 @@ public static class bgfx /// [LinkName("bgfx_dispatch_indirect")] public static extern void dispatch_indirect(ViewId _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint32 _start, uint32 _num, uint8 _flags); - + /// /// Discard previously set state for draw or compute call. /// @@ -4689,7 +4689,7 @@ public static class bgfx /// [LinkName("bgfx_discard")] public static extern void discard(uint8 _flags); - + /// /// Blit 2D texture region between two 2D textures. /// @attention Destination texture must be created with `BGFX_TEXTURE_BLIT_DST` flag. @@ -4713,7 +4713,7 @@ public static class bgfx /// [LinkName("bgfx_blit")] public static extern void blit(ViewId _id, TextureHandle _dst, uint8 _dstMip, uint16 _dstX, uint16 _dstY, uint16 _dstZ, TextureHandle _src, uint8 _srcMip, uint16 _srcX, uint16 _srcY, uint16 _srcZ, uint16 _width, uint16 _height, uint16 _depth); - + public static bgfx.StateFlags blend_function_separate(bgfx.StateFlags _srcRGB, bgfx.StateFlags _dstRGB, bgfx.StateFlags _srcA, bgfx.StateFlags _dstA) { diff --git a/bindings/cs/bgfx.cs b/bindings/cs/bgfx.cs index 0ab6a3f50b..499439e6e1 100644 --- a/bindings/cs/bgfx.cs +++ b/bindings/cs/bgfx.cs @@ -23,178 +23,178 @@ public enum StateFlags : ulong /// Enable R write. /// WriteR = 0x0000000000000001, - + /// /// Enable G write. /// WriteG = 0x0000000000000002, - + /// /// Enable B write. /// WriteB = 0x0000000000000004, - + /// /// Enable alpha write. /// WriteA = 0x0000000000000008, - + /// /// Enable depth write. /// WriteZ = 0x0000004000000000, - + /// /// Enable RGB write. /// WriteRgb = 0x0000000000000007, - + /// /// Write all channels mask. /// WriteMask = 0x000000400000000f, - + /// /// Enable depth test, less. /// DepthTestLess = 0x0000000000000010, - + /// /// Enable depth test, less or equal. /// DepthTestLequal = 0x0000000000000020, - + /// /// Enable depth test, equal. /// DepthTestEqual = 0x0000000000000030, - + /// /// Enable depth test, greater or equal. /// DepthTestGequal = 0x0000000000000040, - + /// /// Enable depth test, greater. /// DepthTestGreater = 0x0000000000000050, - + /// /// Enable depth test, not equal. /// DepthTestNotequal = 0x0000000000000060, - + /// /// Enable depth test, never. /// DepthTestNever = 0x0000000000000070, - + /// /// Enable depth test, always. /// DepthTestAlways = 0x0000000000000080, DepthTestShift = 4, DepthTestMask = 0x00000000000000f0, - + /// /// 0, 0, 0, 0 /// BlendZero = 0x0000000000001000, - + /// /// 1, 1, 1, 1 /// BlendOne = 0x0000000000002000, - + /// /// Rs, Gs, Bs, As /// BlendSrcColor = 0x0000000000003000, - + /// /// 1-Rs, 1-Gs, 1-Bs, 1-As /// BlendInvSrcColor = 0x0000000000004000, - + /// /// As, As, As, As /// BlendSrcAlpha = 0x0000000000005000, - + /// /// 1-As, 1-As, 1-As, 1-As /// BlendInvSrcAlpha = 0x0000000000006000, - + /// /// Ad, Ad, Ad, Ad /// BlendDstAlpha = 0x0000000000007000, - + /// /// 1-Ad, 1-Ad, 1-Ad ,1-Ad /// BlendInvDstAlpha = 0x0000000000008000, - + /// /// Rd, Gd, Bd, Ad /// BlendDstColor = 0x0000000000009000, - + /// /// 1-Rd, 1-Gd, 1-Bd, 1-Ad /// BlendInvDstColor = 0x000000000000a000, - + /// /// f, f, f, 1; f = min(As, 1-Ad) /// BlendSrcAlphaSat = 0x000000000000b000, - + /// /// Blend factor /// BlendFactor = 0x000000000000c000, - + /// /// 1-Blend factor /// BlendInvFactor = 0x000000000000d000, BlendShift = 12, BlendMask = 0x000000000ffff000, - + /// /// Blend add: src + dst. /// BlendEquationAdd = 0x0000000000000000, - + /// /// Blend subtract: src - dst. /// BlendEquationSub = 0x0000000010000000, - + /// /// Blend reverse subtract: dst - src. /// BlendEquationRevsub = 0x0000000020000000, - + /// /// Blend min: min(src, dst). /// BlendEquationMin = 0x0000000030000000, - + /// /// Blend max: max(src, dst). /// BlendEquationMax = 0x0000000040000000, BlendEquationShift = 28, BlendEquationMask = 0x00000003f0000000, - + /// /// Cull clockwise triangles. /// CullCw = 0x0000001000000000, - + /// /// Cull counter-clockwise triangles. /// @@ -203,22 +203,22 @@ public enum StateFlags : ulong CullMask = 0x0000003000000000, AlphaRefShift = 40, AlphaRefMask = 0x0000ff0000000000, - + /// /// Tristrip. /// PtTristrip = 0x0001000000000000, - + /// /// Lines. /// PtLines = 0x0002000000000000, - + /// /// Line strip. /// PtLinestrip = 0x0003000000000000, - + /// /// Points. /// @@ -227,42 +227,42 @@ public enum StateFlags : ulong PtMask = 0x0007000000000000, PointSizeShift = 52, PointSizeMask = 0x00f0000000000000, - + /// /// Enable MSAA rasterization. /// Msaa = 0x0100000000000000, - + /// /// Enable line AA rasterization. /// Lineaa = 0x0200000000000000, - + /// /// Enable conservative rasterization. /// ConservativeRaster = 0x0400000000000000, - + /// /// No state. /// None = 0x0000000000000000, - + /// /// Front counter-clockwise (default is clockwise). /// FrontCcw = 0x0000008000000000, - + /// /// Enable blend independent. /// BlendIndependent = 0x0000000400000000, - + /// /// Enable alpha to coverage. /// BlendAlphaToCoverage = 0x0000000800000000, - + /// /// Default state is write to RGB, alpha, and depth with depth test less enabled, with clockwise /// culling and MSAA (when writing into MSAA frame buffer, otherwise this flag is ignored). @@ -272,7 +272,7 @@ public enum StateFlags : ulong ReservedShift = 61, ReservedMask = 0xe000000000000000, } - + [Flags] public enum StencilFlags : uint { @@ -283,168 +283,168 @@ public enum StencilFlags : uint None = 0x00000000, Mask = 0xffffffff, Default = 0x00000000, - + /// /// Enable stencil test, less. /// TestLess = 0x00010000, - + /// /// Enable stencil test, less or equal. /// TestLequal = 0x00020000, - + /// /// Enable stencil test, equal. /// TestEqual = 0x00030000, - + /// /// Enable stencil test, greater or equal. /// TestGequal = 0x00040000, - + /// /// Enable stencil test, greater. /// TestGreater = 0x00050000, - + /// /// Enable stencil test, not equal. /// TestNotequal = 0x00060000, - + /// /// Enable stencil test, never. /// TestNever = 0x00070000, - + /// /// Enable stencil test, always. /// TestAlways = 0x00080000, TestShift = 16, TestMask = 0x000f0000, - + /// /// Zero. /// OpFailSZero = 0x00000000, - + /// /// Keep. /// OpFailSKeep = 0x00100000, - + /// /// Replace. /// OpFailSReplace = 0x00200000, - + /// /// Increment and wrap. /// OpFailSIncr = 0x00300000, - + /// /// Increment and clamp. /// OpFailSIncrsat = 0x00400000, - + /// /// Decrement and wrap. /// OpFailSDecr = 0x00500000, - + /// /// Decrement and clamp. /// OpFailSDecrsat = 0x00600000, - + /// /// Invert. /// OpFailSInvert = 0x00700000, OpFailSShift = 20, OpFailSMask = 0x00f00000, - + /// /// Zero. /// OpFailZZero = 0x00000000, - + /// /// Keep. /// OpFailZKeep = 0x01000000, - + /// /// Replace. /// OpFailZReplace = 0x02000000, - + /// /// Increment and wrap. /// OpFailZIncr = 0x03000000, - + /// /// Increment and clamp. /// OpFailZIncrsat = 0x04000000, - + /// /// Decrement and wrap. /// OpFailZDecr = 0x05000000, - + /// /// Decrement and clamp. /// OpFailZDecrsat = 0x06000000, - + /// /// Invert. /// OpFailZInvert = 0x07000000, OpFailZShift = 24, OpFailZMask = 0x0f000000, - + /// /// Zero. /// OpPassZZero = 0x00000000, - + /// /// Keep. /// OpPassZKeep = 0x10000000, - + /// /// Replace. /// OpPassZReplace = 0x20000000, - + /// /// Increment and wrap. /// OpPassZIncr = 0x30000000, - + /// /// Increment and clamp. /// OpPassZIncrsat = 0x40000000, - + /// /// Decrement and wrap. /// OpPassZDecr = 0x50000000, - + /// /// Decrement and clamp. /// OpPassZDecrsat = 0x60000000, - + /// /// Invert. /// @@ -452,7 +452,7 @@ public enum StencilFlags : uint OpPassZShift = 28, OpPassZMask = 0xf0000000, } - + [Flags] public enum ClearFlags : ushort { @@ -460,67 +460,67 @@ public enum ClearFlags : ushort /// No clear flags. /// None = 0x0000, - + /// /// Clear color. /// Color = 0x0001, - + /// /// Clear depth. /// Depth = 0x0002, - + /// /// Clear stencil. /// Stencil = 0x0004, - + /// /// Discard frame buffer attachment 0. /// DiscardColor0 = 0x0008, - + /// /// Discard frame buffer attachment 1. /// DiscardColor1 = 0x0010, - + /// /// Discard frame buffer attachment 2. /// DiscardColor2 = 0x0020, - + /// /// Discard frame buffer attachment 3. /// DiscardColor3 = 0x0040, - + /// /// Discard frame buffer attachment 4. /// DiscardColor4 = 0x0080, - + /// /// Discard frame buffer attachment 5. /// DiscardColor5 = 0x0100, - + /// /// Discard frame buffer attachment 6. /// DiscardColor6 = 0x0200, - + /// /// Discard frame buffer attachment 7. /// DiscardColor7 = 0x0400, - + /// /// Discard frame buffer depth attachment. /// DiscardDepth = 0x0800, - + /// /// Discard frame buffer stencil attachment. /// @@ -528,7 +528,7 @@ public enum ClearFlags : ushort DiscardColorMask = 0x07f8, DiscardMask = 0x1ff8, } - + [Flags] public enum DiscardFlags : uint { @@ -536,43 +536,43 @@ public enum DiscardFlags : uint /// Preserve everything. /// None = 0x00000000, - + /// /// Discard texture sampler and buffer bindings. /// Bindings = 0x00000001, - + /// /// Discard index buffer. /// IndexBuffer = 0x00000002, - + /// /// Discard instance data. /// InstanceData = 0x00000004, - + /// /// Discard state and uniform bindings. /// State = 0x00000008, - + /// /// Discard transform. /// Transform = 0x00000010, - + /// /// Discard vertex streams. /// VertexStreams = 0x00000020, - + /// /// Discard all states. /// All = 0x000000ff, } - + [Flags] public enum DebugFlags : uint { @@ -580,34 +580,34 @@ public enum DebugFlags : uint /// No debug. /// None = 0x00000000, - + /// /// Enable wireframe for all primitives. /// Wireframe = 0x00000001, - + /// /// Enable infinitely fast hardware test. No draw calls will be submitted to driver. /// It's useful when profiling to quickly assess bottleneck between CPU and GPU. /// Ifh = 0x00000002, - + /// /// Enable statistics display. /// Stats = 0x00000004, - + /// /// Enable debug text display. /// Text = 0x00000008, - + /// /// Enable profiler. This causes per-view statistics to be collected, available through `bgfx::Stats::ViewStats`. This is unrelated to the profiler functions in `bgfx::CallbackI`. /// Profiler = 0x00000010, } - + [Flags] public enum BufferFlags : ushort { @@ -615,59 +615,59 @@ public enum BufferFlags : ushort /// 1 8-bit value /// ComputeFormat8x1 = 0x0001, - + /// /// 2 8-bit values /// ComputeFormat8x2 = 0x0002, - + /// /// 4 8-bit values /// ComputeFormat8x4 = 0x0003, - + /// /// 1 16-bit value /// ComputeFormat16x1 = 0x0004, - + /// /// 2 16-bit values /// ComputeFormat16x2 = 0x0005, - + /// /// 4 16-bit values /// ComputeFormat16x4 = 0x0006, - + /// /// 1 32-bit value /// ComputeFormat32x1 = 0x0007, - + /// /// 2 32-bit values /// ComputeFormat32x2 = 0x0008, - + /// /// 4 32-bit values /// ComputeFormat32x4 = 0x0009, ComputeFormatShift = 0, ComputeFormatMask = 0x000f, - + /// /// Type `int`. /// ComputeTypeInt = 0x0010, - + /// /// Type `uint`. /// ComputeTypeUint = 0x0020, - + /// /// Type `float`. /// @@ -675,91 +675,91 @@ public enum BufferFlags : ushort ComputeTypeShift = 4, ComputeTypeMask = 0x0030, None = 0x0000, - + /// /// Buffer will be read by shader. /// ComputeRead = 0x0100, - + /// /// Buffer will be used for writing. /// ComputeWrite = 0x0200, - + /// /// Buffer will be used for storing draw indirect commands. /// DrawIndirect = 0x0400, - + /// /// Allow dynamic index/vertex buffer resize during update. /// AllowResize = 0x0800, - + /// /// Index buffer contains 32-bit indices. /// Index32 = 0x1000, ComputeReadWrite = 0x0300, } - + [Flags] public enum TextureFlags : ulong { None = 0x0000000000000000, - + /// /// Texture will be used for MSAA sampling. /// MsaaSample = 0x0000000800000000, - + /// /// Render target no MSAA. /// Rt = 0x0000001000000000, - + /// /// Texture will be used for compute write. /// ComputeWrite = 0x0000100000000000, - + /// /// Sample texture as sRGB. /// Srgb = 0x0000200000000000, - + /// /// Texture will be used as blit destination. /// BlitDst = 0x0000400000000000, - + /// /// Texture will be used for read back from GPU. /// ReadBack = 0x0000800000000000, - + /// /// Render target MSAAx2 mode. /// RtMsaaX2 = 0x0000002000000000, - + /// /// Render target MSAAx4 mode. /// RtMsaaX4 = 0x0000003000000000, - + /// /// Render target MSAAx8 mode. /// RtMsaaX8 = 0x0000004000000000, - + /// /// Render target MSAAx16 mode. /// RtMsaaX16 = 0x0000005000000000, RtMsaaShift = 36, RtMsaaMask = 0x0000007000000000, - + /// /// Render target will be used for writing /// @@ -767,7 +767,7 @@ public enum TextureFlags : ulong RtShift = 36, RtMask = 0x000000f000000000, } - + [Flags] public enum SamplerFlags : uint { @@ -775,119 +775,119 @@ public enum SamplerFlags : uint /// Wrap U mode: Mirror /// UMirror = 0x00000001, - + /// /// Wrap U mode: Clamp /// UClamp = 0x00000002, - + /// /// Wrap U mode: Border /// UBorder = 0x00000003, UShift = 0, UMask = 0x00000003, - + /// /// Wrap V mode: Mirror /// VMirror = 0x00000004, - + /// /// Wrap V mode: Clamp /// VClamp = 0x00000008, - + /// /// Wrap V mode: Border /// VBorder = 0x0000000c, VShift = 2, VMask = 0x0000000c, - + /// /// Wrap W mode: Mirror /// WMirror = 0x00000010, - + /// /// Wrap W mode: Clamp /// WClamp = 0x00000020, - + /// /// Wrap W mode: Border /// WBorder = 0x00000030, WShift = 4, WMask = 0x00000030, - + /// /// Min sampling mode: Point /// MinPoint = 0x00000040, - + /// /// Min sampling mode: Anisotropic /// MinAnisotropic = 0x00000080, MinShift = 6, MinMask = 0x000000c0, - + /// /// Mag sampling mode: Point /// MagPoint = 0x00000100, - + /// /// Mag sampling mode: Anisotropic /// MagAnisotropic = 0x00000200, MagShift = 8, MagMask = 0x00000300, - + /// /// Mip sampling mode: Point /// MipPoint = 0x00000400, MipShift = 10, MipMask = 0x00000400, - + /// /// Compare when sampling depth texture: less. /// CompareLess = 0x00010000, - + /// /// Compare when sampling depth texture: less or equal. /// CompareLequal = 0x00020000, - + /// /// Compare when sampling depth texture: equal. /// CompareEqual = 0x00030000, - + /// /// Compare when sampling depth texture: greater or equal. /// CompareGequal = 0x00040000, - + /// /// Compare when sampling depth texture: greater. /// CompareGreater = 0x00050000, - + /// /// Compare when sampling depth texture: not equal. /// CompareNotequal = 0x00060000, - + /// /// Compare when sampling depth texture: never. /// CompareNever = 0x00070000, - + /// /// Compare when sampling depth texture: always. /// @@ -899,7 +899,7 @@ public enum SamplerFlags : uint ReservedShift = 28, ReservedMask = 0xf0000000, None = 0x00000000, - + /// /// Sample stencil instead of depth. /// @@ -910,7 +910,7 @@ public enum SamplerFlags : uint UvwBorder = 0x0000003f, BitsMask = 0x000f07ff, } - + [Flags] public enum ResetFlags : uint { @@ -918,85 +918,85 @@ public enum ResetFlags : uint /// Enable 2x MSAA. /// MsaaX2 = 0x00000010, - + /// /// Enable 4x MSAA. /// MsaaX4 = 0x00000020, - + /// /// Enable 8x MSAA. /// MsaaX8 = 0x00000030, - + /// /// Enable 16x MSAA. /// MsaaX16 = 0x00000040, MsaaShift = 4, MsaaMask = 0x00000070, - + /// /// No reset flags. /// None = 0x00000000, - + /// /// Not supported yet. /// Fullscreen = 0x00000001, - + /// /// Enable V-Sync. /// Vsync = 0x00000080, - + /// /// Turn on/off max anisotropy. /// Maxanisotropy = 0x00000100, - + /// /// Begin screen capture. /// Capture = 0x00000200, - + /// /// Flush rendering after submitting to GPU. /// FlushAfterRender = 0x00002000, - + /// /// This flag specifies where flip occurs. Default behaviour is that flip occurs /// before rendering new frame. This flag only has effect when `BGFX_CONFIG_MULTITHREADED=0`. /// FlipAfterRender = 0x00004000, - + /// /// Enable sRGB backbuffer. /// SrgbBackbuffer = 0x00008000, - + /// /// Enable HDR10 rendering. /// Hdr10 = 0x00010000, - + /// /// Enable HiDPI rendering. /// Hidpi = 0x00020000, - + /// /// Enable depth clamp. /// DepthClamp = 0x00040000, - + /// /// Suspend rendering. /// Suspend = 0x00080000, - + /// /// Transparent backbuffer. Availability depends on: `BGFX_CAPS_TRANSPARENT_BACKBUFFER`. /// @@ -1006,7 +1006,7 @@ public enum ResetFlags : uint ReservedShift = 31, ReservedMask = 0x80000000, } - + [Flags] public enum CapsFlags : ulong { @@ -1014,159 +1014,159 @@ public enum CapsFlags : ulong /// Alpha to coverage is supported. /// AlphaToCoverage = 0x0000000000000001, - + /// /// Blend independent is supported. /// BlendIndependent = 0x0000000000000002, - + /// /// Compute shaders are supported. /// Compute = 0x0000000000000004, - + /// /// Conservative rasterization is supported. /// ConservativeRaster = 0x0000000000000008, - + /// /// Draw indirect is supported. /// DrawIndirect = 0x0000000000000010, - + /// /// Draw indirect with indirect count is supported. /// DrawIndirectCount = 0x0000000000000020, - + /// /// Fragment depth is available in fragment shader. /// FragmentDepth = 0x0000000000000040, - + /// /// Fragment ordering is available in fragment shader. /// FragmentOrdering = 0x0000000000000080, - + /// /// Graphics debugger is present. /// GraphicsDebugger = 0x0000000000000100, - + /// /// HDR10 rendering is supported. /// Hdr10 = 0x0000000000000200, - + /// /// HiDPI rendering is supported. /// Hidpi = 0x0000000000000400, - + /// /// Image Read/Write is supported. /// ImageRw = 0x0000000000000800, - + /// /// 32-bit indices are supported. /// Index32 = 0x0000000000001000, - + /// /// Instancing is supported. /// Instancing = 0x0000000000002000, - + /// /// Occlusion query is supported. /// OcclusionQuery = 0x0000000000004000, - + /// /// PrimitiveID is available in fragment shader. /// PrimitiveId = 0x0000000000008000, - + /// /// Renderer is on separate thread. /// RendererMultithreaded = 0x0000000000010000, - + /// /// Multiple windows are supported. /// SwapChain = 0x0000000000020000, - + /// /// Texture blit is supported. /// TextureBlit = 0x0000000000040000, - + /// /// Texture compare less equal mode is supported. /// TextureCompareLequal = 0x0000000000080000, TextureCompareReserved = 0x0000000000100000, - + /// /// Cubemap texture array is supported. /// TextureCubeArray = 0x0000000000200000, - + /// /// CPU direct access to GPU texture memory. /// TextureDirectAccess = 0x0000000000400000, - + /// /// Read-back texture is supported. /// TextureReadBack = 0x0000000000800000, - + /// /// 2D texture array is supported. /// Texture2dArray = 0x0000000001000000, - + /// /// 3D textures are supported. /// Texture3d = 0x0000000002000000, - + /// /// Transparent back buffer supported. /// TransparentBackbuffer = 0x0000000004000000, - + /// /// Vertex attribute half-float is supported. /// VertexAttribHalf = 0x0000000008000000, - + /// /// Vertex attribute 10_10_10_2 is supported. /// VertexAttribUint10 = 0x0000000010000000, - + /// /// Rendering with VertexID only is supported. /// VertexId = 0x0000000020000000, - + /// /// Viewport layer is available in vertex shader. /// ViewportLayerArray = 0x0000000040000000, - + /// /// All texture compare modes are supported. /// TextureCompareAll = 0x0000000000180000, } - + [Flags] public enum CapsFormatFlags : uint { @@ -1174,88 +1174,88 @@ public enum CapsFormatFlags : uint /// Texture format is not supported. /// TextureNone = 0x00000000, - + /// /// Texture format is supported. /// Texture2d = 0x00000001, - + /// /// Texture as sRGB format is supported. /// Texture2dSrgb = 0x00000002, - + /// /// Texture format is emulated. /// Texture2dEmulated = 0x00000004, - + /// /// Texture format is supported. /// Texture3d = 0x00000008, - + /// /// Texture as sRGB format is supported. /// Texture3dSrgb = 0x00000010, - + /// /// Texture format is emulated. /// Texture3dEmulated = 0x00000020, - + /// /// Texture format is supported. /// TextureCube = 0x00000040, - + /// /// Texture as sRGB format is supported. /// TextureCubeSrgb = 0x00000080, - + /// /// Texture format is emulated. /// TextureCubeEmulated = 0x00000100, - + /// /// Texture format can be used from vertex shader. /// TextureVertex = 0x00000200, - + /// /// Texture format can be used as image and read from. /// TextureImageRead = 0x00000400, - + /// /// Texture format can be used as image and written to. /// TextureImageWrite = 0x00000800, - + /// /// Texture format can be used as frame buffer. /// TextureFramebuffer = 0x00001000, - + /// /// Texture format can be used as MSAA frame buffer. /// TextureFramebufferMsaa = 0x00002000, - + /// /// Texture can be sampled as MSAA. /// TextureMsaa = 0x00004000, - + /// /// Texture format supports auto-generated mips. /// TextureMipAutogen = 0x00008000, } - + [Flags] public enum ResolveFlags : uint { @@ -1263,13 +1263,13 @@ public enum ResolveFlags : uint /// No resolve flags. /// None = 0x00000000, - + /// /// Auto-generate mip maps on resolve. /// AutoGenMips = 0x00000001, } - + [Flags] public enum PciIdFlags : ushort { @@ -1277,43 +1277,43 @@ public enum PciIdFlags : ushort /// Autoselect adapter. /// None = 0x0000, - + /// /// Software rasterizer. /// SoftwareRasterizer = 0x0001, - + /// /// AMD adapter. /// Amd = 0x1002, - + /// /// Apple adapter. /// Apple = 0x106b, - + /// /// Intel adapter. /// Intel = 0x8086, - + /// /// nVidia adapter. /// Nvidia = 0x10de, - + /// /// Microsoft adapter. /// Microsoft = 0x1414, - + /// /// ARM adapter. /// Arm = 0x13b5, } - + [Flags] public enum CubeMapFlags : uint { @@ -1321,33 +1321,33 @@ public enum CubeMapFlags : uint /// Cubemap +x. /// PositiveX = 0x00000000, - + /// /// Cubemap -x. /// NegativeX = 0x00000001, - + /// /// Cubemap +y. /// PositiveY = 0x00000002, - + /// /// Cubemap -y. /// NegativeY = 0x00000003, - + /// /// Cubemap +z. /// PositiveZ = 0x00000004, - + /// /// Cubemap -z. /// NegativeZ = 0x00000005, } - + public enum Fatal { DebugCheck, @@ -1355,382 +1355,382 @@ public enum Fatal UnableToInitialize, UnableToCreateTexture, DeviceLost, - + Count } - + public enum RendererType { /// /// No rendering. /// Noop, - + /// /// AGC /// Agc, - + /// /// Direct3D 11.0 /// Direct3D11, - + /// /// Direct3D 12.0 /// Direct3D12, - + /// /// GNM /// Gnm, - + /// /// Metal /// Metal, - + /// /// NVN /// Nvn, - + /// /// OpenGL ES 2.0+ /// OpenGLES, - + /// /// OpenGL 2.1+ /// OpenGL, - + /// /// Vulkan /// Vulkan, - + Count } - + public enum Access { /// /// Read. /// Read, - + /// /// Write. /// Write, - + /// /// Read and write. /// ReadWrite, - + Count } - + public enum Attrib { /// /// a_position /// Position, - + /// /// a_normal /// Normal, - + /// /// a_tangent /// Tangent, - + /// /// a_bitangent /// Bitangent, - + /// /// a_color0 /// Color0, - + /// /// a_color1 /// Color1, - + /// /// a_color2 /// Color2, - + /// /// a_color3 /// Color3, - + /// /// a_indices /// Indices, - + /// /// a_weight /// Weight, - + /// /// a_texcoord0 /// TexCoord0, - + /// /// a_texcoord1 /// TexCoord1, - + /// /// a_texcoord2 /// TexCoord2, - + /// /// a_texcoord3 /// TexCoord3, - + /// /// a_texcoord4 /// TexCoord4, - + /// /// a_texcoord5 /// TexCoord5, - + /// /// a_texcoord6 /// TexCoord6, - + /// /// a_texcoord7 /// TexCoord7, - + Count } - + public enum AttribType { /// /// Uint8 /// Uint8, - + /// /// Uint10, availability depends on: `BGFX_CAPS_VERTEX_ATTRIB_UINT10`. /// Uint10, - + /// /// Int16 /// Int16, - + /// /// Half, availability depends on: `BGFX_CAPS_VERTEX_ATTRIB_HALF`. /// Half, - + /// /// Float /// Float, - + Count } - + public enum TextureFormat { /// /// DXT1 R5G6B5A1 /// BC1, - + /// /// DXT3 R5G6B5A4 /// BC2, - + /// /// DXT5 R5G6B5A8 /// BC3, - + /// /// LATC1/ATI1 R8 /// BC4, - + /// /// LATC2/ATI2 RG8 /// BC5, - + /// /// BC6H RGB16F /// BC6H, - + /// /// BC7 RGB 4-7 bits per color channel, 0-8 bits alpha /// BC7, - + /// /// ETC1 RGB8 /// ETC1, - + /// /// ETC2 RGB8 /// ETC2, - + /// /// ETC2 RGBA8 /// ETC2A, - + /// /// ETC2 RGB8A1 /// ETC2A1, - + /// /// PVRTC1 RGB 2BPP /// PTC12, - + /// /// PVRTC1 RGB 4BPP /// PTC14, - + /// /// PVRTC1 RGBA 2BPP /// PTC12A, - + /// /// PVRTC1 RGBA 4BPP /// PTC14A, - + /// /// PVRTC2 RGBA 2BPP /// PTC22, - + /// /// PVRTC2 RGBA 4BPP /// PTC24, - + /// /// ATC RGB 4BPP /// ATC, - + /// /// ATCE RGBA 8 BPP explicit alpha /// ATCE, - + /// /// ATCI RGBA 8 BPP interpolated alpha /// ATCI, - + /// /// ASTC 4x4 8.0 BPP /// ASTC4x4, - + /// /// ASTC 5x4 6.40 BPP /// ASTC5x4, - + /// /// ASTC 5x5 5.12 BPP /// ASTC5x5, - + /// /// ASTC 6x5 4.27 BPP /// ASTC6x5, - + /// /// ASTC 6x6 3.56 BPP /// ASTC6x6, - + /// /// ASTC 8x5 3.20 BPP /// ASTC8x5, - + /// /// ASTC 8x6 2.67 BPP /// ASTC8x6, - + /// /// ASTC 8x8 2.00 BPP /// ASTC8x8, - + /// /// ASTC 10x5 2.56 BPP /// ASTC10x5, - + /// /// ASTC 10x6 2.13 BPP /// ASTC10x6, - + /// /// ASTC 10x8 1.60 BPP /// ASTC10x8, - + /// /// ASTC 10x10 1.28 BPP /// ASTC10x10, - + /// /// ASTC 12x10 1.07 BPP /// ASTC12x10, - + /// /// ASTC 12x12 0.89 BPP /// ASTC12x12, - + /// /// Compressed formats above. /// @@ -1787,7 +1787,7 @@ public enum TextureFormat RGB5A1, RGB10A2, RG11B10F, - + /// /// Depth formats below. /// @@ -1800,155 +1800,155 @@ public enum TextureFormat D24F, D32F, D0S8, - + Count } - + public enum UniformType { /// /// Sampler. /// Sampler, - + /// /// Reserved, do not use. /// End, - + /// /// 4 floats vector. /// Vec4, - + /// /// 3x3 matrix. /// Mat3, - + /// /// 4x4 matrix. /// Mat4, - + Count } - + public enum BackbufferRatio { /// /// Equal to backbuffer. /// Equal, - + /// /// One half size of backbuffer. /// Half, - + /// /// One quarter size of backbuffer. /// Quarter, - + /// /// One eighth size of backbuffer. /// Eighth, - + /// /// One sixteenth size of backbuffer. /// Sixteenth, - + /// /// Double size of backbuffer. /// Double, - + Count } - + public enum OcclusionQueryResult { /// /// Query failed test. /// Invisible, - + /// /// Query passed test. /// Visible, - + /// /// Query result is not available yet. /// NoResult, - + Count } - + public enum Topology { /// /// Triangle list. /// TriList, - + /// /// Triangle strip. /// TriStrip, - + /// /// Line list. /// LineList, - + /// /// Line strip. /// LineStrip, - + /// /// Point list. /// PointList, - + Count } - + public enum TopologyConvert { /// /// Flip winding order of triangle list. /// TriListFlipWinding, - + /// /// Flip winding order of triangle strip. /// TriStripFlipWinding, - + /// /// Convert triangle list to line list. /// TriListToLineList, - + /// /// Convert triangle strip to triangle list. /// TriStripToTriList, - + /// /// Convert line strip to line list. /// LineStripToLineList, - + Count } - + public enum TopologySort { DirectionFrontToBackMin, @@ -1963,75 +1963,75 @@ public enum TopologySort DistanceBackToFrontMin, DistanceBackToFrontAvg, DistanceBackToFrontMax, - + Count } - + public enum ViewMode { /// /// Default sort order. /// Default, - + /// /// Sort in the same order in which submit calls were called. /// Sequential, - + /// /// Sort draw call depth in ascending order. /// DepthAscending, - + /// /// Sort draw call depth in descending order. /// DepthDescending, - + Count } - + public enum NativeWindowHandleType { /// /// Platform default handle type (X11 on Linux). /// Default, - + /// /// Wayland. /// Wayland, - + Count } - + public enum RenderFrame { /// /// Renderer context is not created yet. /// NoContext, - + /// /// Renderer context is created and rendering. /// Render, - + /// /// Renderer context wait for main thread signal timed out without rendering. /// Timeout, - + /// /// Renderer context is getting destroyed. /// Exiting, - + Count } - + public unsafe struct Caps { public unsafe struct GPU @@ -2039,7 +2039,7 @@ public unsafe struct GPU public ushort vendorId; public ushort deviceId; } - + public unsafe struct Limits { public uint maxDrawCalls; @@ -2067,7 +2067,7 @@ public unsafe struct Limits public uint transientVbSize; public uint transientIbSize; } - + public RendererType rendererType; public ulong supported; public ushort vendorId; @@ -2079,13 +2079,13 @@ public unsafe struct Limits public Limits limits; public fixed ushort formats[96]; } - + public unsafe struct InternalData { public Caps* caps; public void* context; } - + public unsafe struct PlatformData { public void* ndt; @@ -2095,7 +2095,7 @@ public unsafe struct PlatformData public void* backBufferDS; public NativeWindowHandleType type; } - + public unsafe struct Resolution { public TextureFormat format; @@ -2106,7 +2106,7 @@ public unsafe struct Resolution public byte maxFrameLatency; public byte debugTextScale; } - + public unsafe struct Init { public unsafe struct Limits @@ -2116,7 +2116,7 @@ public unsafe struct Limits public uint transientVbSize; public uint transientIbSize; } - + public RendererType type; public ushort vendorId; public ushort deviceId; @@ -2129,13 +2129,13 @@ public unsafe struct Limits public IntPtr callback; public IntPtr allocator; } - + public unsafe struct Memory { public byte* data; public uint size; } - + public unsafe struct TransientIndexBuffer { public byte* data; @@ -2144,7 +2144,7 @@ public unsafe struct TransientIndexBuffer public IndexBufferHandle handle; public byte isIndex16; } - + public unsafe struct TransientVertexBuffer { public byte* data; @@ -2154,7 +2154,7 @@ public unsafe struct TransientVertexBuffer public VertexBufferHandle handle; public VertexLayoutHandle layoutHandle; } - + public unsafe struct InstanceDataBuffer { public byte* data; @@ -2164,7 +2164,7 @@ public unsafe struct InstanceDataBuffer public ushort stride; public VertexBufferHandle handle; } - + public unsafe struct TextureInfo { public TextureFormat format; @@ -2177,14 +2177,14 @@ public unsafe struct TextureInfo public byte bitsPerPixel; public byte cubeMap; } - + public unsafe struct UniformInfo { public fixed byte name[256]; public UniformType type; public ushort num; } - + public unsafe struct Attachment { public Access access; @@ -2194,13 +2194,13 @@ public unsafe struct Attachment public ushort numLayers; public byte resolve; } - + public unsafe struct Transform { public float* data; public ushort num; } - + public unsafe struct ViewStats { public fixed byte name[256]; @@ -2211,13 +2211,13 @@ public unsafe struct ViewStats public long gpuTimeEnd; public uint gpuFrameNum; } - + public unsafe struct EncoderStats { public long cpuTimeBegin; public long cpuTimeEnd; } - + public unsafe struct Stats { public long cpuTimeFrame; @@ -2261,7 +2261,7 @@ public unsafe struct Stats public byte numEncoders; public EncoderStats* encoderStats; } - + public unsafe struct VertexLayout { public uint hash; @@ -2269,71 +2269,71 @@ public unsafe struct VertexLayout public fixed ushort offset[18]; public fixed ushort attributes[18]; } - + public unsafe struct Encoder { } - + public struct DynamicIndexBufferHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct DynamicVertexBufferHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct FrameBufferHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct IndexBufferHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct IndirectBufferHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct OcclusionQueryHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct ProgramHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct ShaderHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct TextureHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct UniformHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct VertexBufferHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + public struct VertexLayoutHandle { public ushort idx; public bool Valid => idx != UInt16.MaxValue; } - + /// /// Init attachment. @@ -2348,7 +2348,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_attachment_init", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void attachment_init(Attachment* _this, TextureHandle _handle, Access _access, ushort _layer, ushort _numLayers, ushort _mip, byte _resolve); - + /// /// Start VertexLayout. /// @@ -2357,7 +2357,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_vertex_layout_begin", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe VertexLayout* vertex_layout_begin(VertexLayout* _this, RendererType _rendererType); - + /// /// Add attribute to VertexLayout. /// @remarks Must be called between begin/end. @@ -2371,7 +2371,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_vertex_layout_add", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe VertexLayout* vertex_layout_add(VertexLayout* _this, Attrib _attrib, byte _num, AttribType _type, bool _normalized, bool _asInt); - + /// /// Decode attribute. /// @@ -2384,7 +2384,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_vertex_layout_decode", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void vertex_layout_decode(VertexLayout* _this, Attrib _attrib, byte * _num, AttribType* _type, bool* _normalized, bool* _asInt); - + /// /// Skip `_num` bytes in vertex stream. /// @@ -2393,14 +2393,14 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_vertex_layout_skip", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe VertexLayout* vertex_layout_skip(VertexLayout* _this, byte _num); - + /// /// End VertexLayout. /// /// [DllImport(DllName, EntryPoint="bgfx_vertex_layout_end", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void vertex_layout_end(VertexLayout* _this); - + /// /// Pack vertex attribute into vertex stream format. /// @@ -2414,7 +2414,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_vertex_pack", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void vertex_pack(float _input, bool _inputNormalized, Attrib _attr, VertexLayout* _layout, void* _data, uint _index); - + /// /// Unpack vertex attribute from vertex stream format. /// @@ -2427,7 +2427,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_vertex_unpack", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void vertex_unpack(float _output, Attrib _attr, VertexLayout* _layout, void* _data, uint _index); - + /// /// Converts vertex stream data from one vertex stream format to another. /// @@ -2440,7 +2440,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_vertex_convert", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void vertex_convert(VertexLayout* _dstLayout, void* _dstData, VertexLayout* _srcLayout, void* _srcData, uint _num); - + /// /// Weld vertices. /// @@ -2454,7 +2454,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_weld_vertices", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint weld_vertices(void* _output, VertexLayout* _layout, void* _data, uint _num, bool _index32, float _epsilon); - + /// /// Convert index buffer for use with different primitive topologies. /// @@ -2468,7 +2468,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_topology_convert", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint topology_convert(TopologyConvert _conversion, void* _dst, uint _dstSize, void* _indices, uint _numIndices, bool _index32); - + /// /// Sort indices. /// @@ -2486,7 +2486,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_topology_sort_tri_list", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void topology_sort_tri_list(TopologySort _sort, void* _dst, uint _dstSize, float _dir, float _pos, void* _vertices, uint _stride, void* _indices, uint _numIndices, bool _index32); - + /// /// Returns supported backend API renderers. /// @@ -2496,7 +2496,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_supported_renderers", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe byte get_supported_renderers(byte _max, RendererType* _enum); - + /// /// Returns name of renderer. /// @@ -2505,7 +2505,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_renderer_name", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe IntPtr get_renderer_name(RendererType _type); - + /// /// Fill bgfx::Init struct with default values, before using it to initialize the library. /// @@ -2514,7 +2514,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_init_ctor", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void init_ctor(Init* _init); - + /// /// Initialize the bgfx library. /// @@ -2524,14 +2524,14 @@ public struct VertexLayoutHandle { [DllImport(DllName, EntryPoint="bgfx_init", CallingConvention = CallingConvention.Cdecl)] [return: MarshalAs(UnmanagedType.I1)] public static extern unsafe bool init(Init* _init); - + /// /// Shutdown bgfx library. /// /// [DllImport(DllName, EntryPoint="bgfx_shutdown", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void shutdown(); - + /// /// Reset graphic settings and back-buffer size. /// @attention This call doesn’t change the window size, it just resizes @@ -2545,7 +2545,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_reset", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void reset(uint _width, uint _height, uint _flags, TextureFormat _format); - + /// /// Advance to next frame. When using multithreaded renderer, this call /// just swaps internal buffers, kicks render thread, and returns. In @@ -2556,7 +2556,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_frame", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint frame(bool _capture); - + /// /// Returns current renderer backend API type. /// @remarks @@ -2565,7 +2565,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_renderer_type", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe RendererType get_renderer_type(); - + /// /// Returns renderer capabilities. /// @remarks @@ -2574,7 +2574,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_caps", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe Caps* get_caps(); - + /// /// Returns performance counters. /// @attention Pointer returned is valid until `bgfx::frame` is called. @@ -2582,7 +2582,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_stats", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe Stats* get_stats(); - + /// /// Allocate buffer to pass to bgfx calls. Data will be freed inside bgfx. /// @@ -2591,7 +2591,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_alloc", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe Memory* alloc(uint _size); - + /// /// Allocate buffer and copy data into it. Data will be freed inside bgfx. /// @@ -2601,7 +2601,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_copy", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe Memory* copy(void* _data, uint _size); - + /// /// Make reference to data to pass to bgfx. Unlike `bgfx::alloc`, this call /// doesn't allocate memory for data. It just copies the _data pointer. You @@ -2617,7 +2617,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_make_ref", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe Memory* make_ref(void* _data, uint _size); - + /// /// Make reference to data to pass to bgfx. Unlike `bgfx::alloc`, this call /// doesn't allocate memory for data. It just copies the _data pointer. You @@ -2635,7 +2635,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_make_ref_release", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe Memory* make_ref_release(void* _data, uint _size, IntPtr _releaseFn, void* _userData); - + /// /// Set debug flags. /// @@ -2644,7 +2644,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_debug", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_debug(uint _debug); - + /// /// Clear internal debug text buffer. /// @@ -2654,7 +2654,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_dbg_text_clear", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void dbg_text_clear(byte _attr, bool _small); - + /// /// Print formatted data to internal debug text character-buffer (VGA-compatible text mode). /// @@ -2666,7 +2666,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_dbg_text_printf", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void dbg_text_printf(ushort _x, ushort _y, byte _attr, [MarshalAs(UnmanagedType.LPStr)] string _format, [MarshalAs(UnmanagedType.LPStr)] string args ); - + /// /// Print formatted data from variable argument list to internal debug text character-buffer (VGA-compatible text mode). /// @@ -2679,7 +2679,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_dbg_text_vprintf", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void dbg_text_vprintf(ushort _x, ushort _y, byte _attr, [MarshalAs(UnmanagedType.LPStr)] string _format, IntPtr _argList); - + /// /// Draw image into internal debug text buffer. /// @@ -2693,7 +2693,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_dbg_text_image", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void dbg_text_image(ushort _x, ushort _y, ushort _width, ushort _height, void* _data, ushort _pitch); - + /// /// Create static index buffer. /// @@ -2703,7 +2703,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe IndexBufferHandle create_index_buffer(Memory* _mem, ushort _flags); - + /// /// Set static index buffer debug name. /// @@ -2714,7 +2714,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_index_buffer_name", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_index_buffer_name(IndexBufferHandle _handle, [MarshalAs(UnmanagedType.LPStr)] string _name, int _len); - + /// /// Destroy static index buffer. /// @@ -2723,7 +2723,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_index_buffer(IndexBufferHandle _handle); - + /// /// Create vertex layout. /// @@ -2732,7 +2732,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_vertex_layout", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe VertexLayoutHandle create_vertex_layout(VertexLayout* _layout); - + /// /// Destroy vertex layout. /// @@ -2741,7 +2741,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_vertex_layout", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_vertex_layout(VertexLayoutHandle _layoutHandle); - + /// /// Create static vertex buffer. /// @@ -2752,7 +2752,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe VertexBufferHandle create_vertex_buffer(Memory* _mem, VertexLayout* _layout, ushort _flags); - + /// /// Set static vertex buffer debug name. /// @@ -2763,7 +2763,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_vertex_buffer_name", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_vertex_buffer_name(VertexBufferHandle _handle, [MarshalAs(UnmanagedType.LPStr)] string _name, int _len); - + /// /// Destroy static vertex buffer. /// @@ -2772,7 +2772,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_vertex_buffer(VertexBufferHandle _handle); - + /// /// Create empty dynamic index buffer. /// @@ -2782,7 +2782,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_dynamic_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe DynamicIndexBufferHandle create_dynamic_index_buffer(uint _num, ushort _flags); - + /// /// Create a dynamic index buffer and initialize it. /// @@ -2792,7 +2792,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_dynamic_index_buffer_mem", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe DynamicIndexBufferHandle create_dynamic_index_buffer_mem(Memory* _mem, ushort _flags); - + /// /// Update dynamic index buffer. /// @@ -2803,7 +2803,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_update_dynamic_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void update_dynamic_index_buffer(DynamicIndexBufferHandle _handle, uint _startIndex, Memory* _mem); - + /// /// Destroy dynamic index buffer. /// @@ -2812,7 +2812,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_dynamic_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_dynamic_index_buffer(DynamicIndexBufferHandle _handle); - + /// /// Create empty dynamic vertex buffer. /// @@ -2823,7 +2823,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe DynamicVertexBufferHandle create_dynamic_vertex_buffer(uint _num, VertexLayout* _layout, ushort _flags); - + /// /// Create dynamic vertex buffer and initialize it. /// @@ -2834,7 +2834,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_dynamic_vertex_buffer_mem", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe DynamicVertexBufferHandle create_dynamic_vertex_buffer_mem(Memory* _mem, VertexLayout* _layout, ushort _flags); - + /// /// Update dynamic vertex buffer. /// @@ -2845,7 +2845,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_update_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void update_dynamic_vertex_buffer(DynamicVertexBufferHandle _handle, uint _startVertex, Memory* _mem); - + /// /// Destroy dynamic vertex buffer. /// @@ -2854,7 +2854,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_dynamic_vertex_buffer(DynamicVertexBufferHandle _handle); - + /// /// Returns number of requested or maximum available indices. /// @@ -2864,7 +2864,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_avail_transient_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint get_avail_transient_index_buffer(uint _num, bool _index32); - + /// /// Returns number of requested or maximum available vertices. /// @@ -2874,7 +2874,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_avail_transient_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint get_avail_transient_vertex_buffer(uint _num, VertexLayout* _layout); - + /// /// Returns number of requested or maximum available instance buffer slots. /// @@ -2884,7 +2884,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_avail_instance_data_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint get_avail_instance_data_buffer(uint _num, ushort _stride); - + /// /// Allocate transient index buffer. /// @@ -2895,7 +2895,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_alloc_transient_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void alloc_transient_index_buffer(TransientIndexBuffer* _tib, uint _num, bool _index32); - + /// /// Allocate transient vertex buffer. /// @@ -2906,7 +2906,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_alloc_transient_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void alloc_transient_vertex_buffer(TransientVertexBuffer* _tvb, uint _num, VertexLayout* _layout); - + /// /// Check for required space and allocate transient vertex and index /// buffers. If both space requirements are satisfied function returns @@ -2923,7 +2923,7 @@ public struct VertexLayoutHandle { [DllImport(DllName, EntryPoint="bgfx_alloc_transient_buffers", CallingConvention = CallingConvention.Cdecl)] [return: MarshalAs(UnmanagedType.I1)] public static extern unsafe bool alloc_transient_buffers(TransientVertexBuffer* _tvb, VertexLayout* _layout, uint _numVertices, TransientIndexBuffer* _tib, uint _numIndices, bool _index32); - + /// /// Allocate instance data buffer. /// @@ -2934,7 +2934,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_alloc_instance_data_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void alloc_instance_data_buffer(InstanceDataBuffer* _idb, uint _num, ushort _stride); - + /// /// Create draw indirect buffer. /// @@ -2943,7 +2943,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_indirect_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe IndirectBufferHandle create_indirect_buffer(uint _num); - + /// /// Destroy draw indirect buffer. /// @@ -2952,7 +2952,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_indirect_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_indirect_buffer(IndirectBufferHandle _handle); - + /// /// Create shader from memory buffer. /// @remarks @@ -2963,7 +2963,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_shader", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe ShaderHandle create_shader(Memory* _mem); - + /// /// Returns the number of uniforms and uniform handles used inside a shader. /// @remarks @@ -2976,7 +2976,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_shader_uniforms", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe ushort get_shader_uniforms(ShaderHandle _handle, UniformHandle* _uniforms, ushort _max); - + /// /// Set shader debug name. /// @@ -2987,7 +2987,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_shader_name", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_shader_name(ShaderHandle _handle, [MarshalAs(UnmanagedType.LPStr)] string _name, int _len); - + /// /// Destroy shader. /// @remark Once a shader program is created with _handle, @@ -2998,7 +2998,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_shader", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_shader(ShaderHandle _handle); - + /// /// Create program with vertex and fragment shaders. /// @@ -3009,7 +3009,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_program", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe ProgramHandle create_program(ShaderHandle _vsh, ShaderHandle _fsh, bool _destroyShaders); - + /// /// Create program with compute shader. /// @@ -3019,7 +3019,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_compute_program", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe ProgramHandle create_compute_program(ShaderHandle _csh, bool _destroyShaders); - + /// /// Destroy program. /// @@ -3028,7 +3028,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_program", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_program(ProgramHandle _handle); - + /// /// Validate texture parameters. /// @@ -3042,7 +3042,7 @@ public struct VertexLayoutHandle { [DllImport(DllName, EntryPoint="bgfx_is_texture_valid", CallingConvention = CallingConvention.Cdecl)] [return: MarshalAs(UnmanagedType.I1)] public static extern unsafe bool is_texture_valid(ushort _depth, bool _cubeMap, ushort _numLayers, TextureFormat _format, ulong _flags); - + /// /// Validate frame buffer parameters. /// @@ -3053,7 +3053,7 @@ public struct VertexLayoutHandle { [DllImport(DllName, EntryPoint="bgfx_is_frame_buffer_valid", CallingConvention = CallingConvention.Cdecl)] [return: MarshalAs(UnmanagedType.I1)] public static extern unsafe bool is_frame_buffer_valid(byte _num, Attachment* _attachment); - + /// /// Calculate amount of memory required for texture. /// @@ -3069,7 +3069,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_calc_texture_size", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void calc_texture_size(TextureInfo* _info, ushort _width, ushort _height, ushort _depth, bool _cubeMap, bool _hasMips, ushort _numLayers, TextureFormat _format); - + /// /// Create texture from memory buffer. /// @@ -3081,7 +3081,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_texture", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe TextureHandle create_texture(Memory* _mem, ulong _flags, byte _skip, TextureInfo* _info); - + /// /// Create 2D texture. /// @@ -3096,7 +3096,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_texture_2d", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe TextureHandle create_texture_2d(ushort _width, ushort _height, bool _hasMips, ushort _numLayers, TextureFormat _format, ulong _flags, Memory* _mem); - + /// /// Create texture with size based on back-buffer ratio. Texture will maintain ratio /// if back buffer resolution changes. @@ -3110,7 +3110,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_texture_2d_scaled", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe TextureHandle create_texture_2d_scaled(BackbufferRatio _ratio, bool _hasMips, ushort _numLayers, TextureFormat _format, ulong _flags); - + /// /// Create 3D texture. /// @@ -3125,7 +3125,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_texture_3d", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe TextureHandle create_texture_3d(ushort _width, ushort _height, ushort _depth, bool _hasMips, TextureFormat _format, ulong _flags, Memory* _mem); - + /// /// Create Cube texture. /// @@ -3139,7 +3139,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_texture_cube", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe TextureHandle create_texture_cube(ushort _size, bool _hasMips, ushort _numLayers, TextureFormat _format, ulong _flags, Memory* _mem); - + /// /// Update 2D texture. /// @attention It's valid to update only mutable texture. See `bgfx::createTexture2D` for more info. @@ -3157,7 +3157,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_update_texture_2d", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void update_texture_2d(TextureHandle _handle, ushort _layer, byte _mip, ushort _x, ushort _y, ushort _width, ushort _height, Memory* _mem, ushort _pitch); - + /// /// Update 3D texture. /// @attention It's valid to update only mutable texture. See `bgfx::createTexture3D` for more info. @@ -3175,7 +3175,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_update_texture_3d", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void update_texture_3d(TextureHandle _handle, byte _mip, ushort _x, ushort _y, ushort _z, ushort _width, ushort _height, ushort _depth, Memory* _mem); - + /// /// Update Cube texture. /// @attention It's valid to update only mutable texture. See `bgfx::createTextureCube` for more info. @@ -3194,7 +3194,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_update_texture_cube", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void update_texture_cube(TextureHandle _handle, ushort _layer, byte _side, byte _mip, ushort _x, ushort _y, ushort _width, ushort _height, Memory* _mem, ushort _pitch); - + /// /// Read back texture content. /// @attention Texture must be created with `BGFX_TEXTURE_READ_BACK` flag. @@ -3207,7 +3207,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_read_texture", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint read_texture(TextureHandle _handle, void* _data, byte _mip); - + /// /// Set texture debug name. /// @@ -3218,7 +3218,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_texture_name", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_texture_name(TextureHandle _handle, [MarshalAs(UnmanagedType.LPStr)] string _name, int _len); - + /// /// Returns texture direct access pointer. /// @attention Availability depends on: `BGFX_CAPS_TEXTURE_DIRECT_ACCESS`. This feature @@ -3229,7 +3229,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_direct_access_ptr", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void* get_direct_access_ptr(TextureHandle _handle); - + /// /// Destroy texture. /// @@ -3238,7 +3238,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_texture", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_texture(TextureHandle _handle); - + /// /// Create frame buffer (simple). /// @@ -3250,7 +3250,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_frame_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe FrameBufferHandle create_frame_buffer(ushort _width, ushort _height, TextureFormat _format, ulong _textureFlags); - + /// /// Create frame buffer with size based on back-buffer ratio. Frame buffer will maintain ratio /// if back buffer resolution changes. @@ -3262,7 +3262,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_frame_buffer_scaled", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe FrameBufferHandle create_frame_buffer_scaled(BackbufferRatio _ratio, TextureFormat _format, ulong _textureFlags); - + /// /// Create MRT frame buffer from texture handles (simple). /// @@ -3273,7 +3273,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_frame_buffer_from_handles", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe FrameBufferHandle create_frame_buffer_from_handles(byte _num, TextureHandle* _handles, bool _destroyTexture); - + /// /// Create MRT frame buffer from texture handles with specific layer and /// mip level. @@ -3285,7 +3285,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_frame_buffer_from_attachment", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe FrameBufferHandle create_frame_buffer_from_attachment(byte _num, Attachment* _attachment, bool _destroyTexture); - + /// /// Create frame buffer for multiple window rendering. /// @remarks @@ -3301,7 +3301,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_frame_buffer_from_nwh", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe FrameBufferHandle create_frame_buffer_from_nwh(void* _nwh, ushort _width, ushort _height, TextureFormat _format, TextureFormat _depthFormat); - + /// /// Set frame buffer debug name. /// @@ -3312,7 +3312,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_frame_buffer_name", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_frame_buffer_name(FrameBufferHandle _handle, [MarshalAs(UnmanagedType.LPStr)] string _name, int _len); - + /// /// Obtain texture handle of frame buffer attachment. /// @@ -3321,7 +3321,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_texture", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe TextureHandle get_texture(FrameBufferHandle _handle, byte _attachment); - + /// /// Destroy frame buffer. /// @@ -3330,7 +3330,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_frame_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_frame_buffer(FrameBufferHandle _handle); - + /// /// Create shader uniform parameter. /// @remarks @@ -3363,7 +3363,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_create_uniform", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe UniformHandle create_uniform([MarshalAs(UnmanagedType.LPStr)] string _name, UniformType _type, ushort _num); - + /// /// Retrieve uniform info. /// @@ -3373,7 +3373,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_uniform_info", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void get_uniform_info(UniformHandle _handle, UniformInfo* _info); - + /// /// Destroy shader uniform parameter. /// @@ -3382,14 +3382,14 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_uniform", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_uniform(UniformHandle _handle); - + /// /// Create occlusion query. /// /// [DllImport(DllName, EntryPoint="bgfx_create_occlusion_query", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe OcclusionQueryHandle create_occlusion_query(); - + /// /// Retrieve occlusion query result from previous frame. /// @@ -3399,7 +3399,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_result", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe OcclusionQueryResult get_result(OcclusionQueryHandle _handle, int* _result); - + /// /// Destroy occlusion query. /// @@ -3408,7 +3408,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_destroy_occlusion_query", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void destroy_occlusion_query(OcclusionQueryHandle _handle); - + /// /// Set palette color value. /// @@ -3418,7 +3418,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_palette_color", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_palette_color(byte _index, float _rgba); - + /// /// Set palette color value. /// @@ -3431,7 +3431,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_palette_color_rgba32f", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_palette_color_rgba32f(byte _index, float _r, float _g, float _b, float _a); - + /// /// Set palette color value. /// @@ -3441,7 +3441,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_palette_color_rgba8", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_palette_color_rgba8(byte _index, uint _rgba); - + /// /// Set view name. /// @remarks @@ -3459,7 +3459,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_name", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_name(ushort _id, [MarshalAs(UnmanagedType.LPStr)] string _name, int _len); - + /// /// Set view rectangle. Draw primitive outside view will be clipped. /// @@ -3472,7 +3472,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_rect", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_rect(ushort _id, ushort _x, ushort _y, ushort _width, ushort _height); - + /// /// Set view rectangle. Draw primitive outside view will be clipped. /// @@ -3484,7 +3484,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_rect_ratio", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_rect_ratio(ushort _id, ushort _x, ushort _y, BackbufferRatio _ratio); - + /// /// Set view scissor. Draw primitive outside view will be clipped. When /// _x, _y, _width and _height are set to 0, scissor will be disabled. @@ -3498,7 +3498,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_scissor", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_scissor(ushort _id, ushort _x, ushort _y, ushort _width, ushort _height); - + /// /// Set view clear flags. /// @@ -3511,7 +3511,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_clear", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_clear(ushort _id, ushort _flags, uint _rgba, float _depth, byte _stencil); - + /// /// Set view clear flags with different clear color for each /// frame buffer texture. `bgfx::setPaletteColor` must be used to set up a @@ -3533,7 +3533,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_clear_mrt", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_clear_mrt(ushort _id, ushort _flags, float _depth, byte _stencil, byte _c0, byte _c1, byte _c2, byte _c3, byte _c4, byte _c5, byte _c6, byte _c7); - + /// /// Set view sorting mode. /// @remarks @@ -3545,7 +3545,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_mode", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_mode(ushort _id, ViewMode _mode); - + /// /// Set view frame buffer. /// @remarks @@ -3557,7 +3557,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_frame_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_frame_buffer(ushort _id, FrameBufferHandle _handle); - + /// /// Set view's view matrix and projection matrix, /// all draw primitives in this view will use these two matrices. @@ -3569,7 +3569,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_transform", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_transform(ushort _id, void* _view, void* _proj); - + /// /// Post submit view reordering. /// @@ -3580,14 +3580,14 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_view_order", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_view_order(ushort _id, ushort _num, ushort* _order); - + /// /// Reset all view settings to default. /// /// [DllImport(DllName, EntryPoint="bgfx_reset_view", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void reset_view(ushort _id); - + /// /// Begin submitting draw calls from thread. /// @@ -3596,7 +3596,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_begin", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe Encoder* encoder_begin(bool _forThread); - + /// /// End submitting draw calls from thread. /// @@ -3605,7 +3605,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_end", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_end(Encoder* _encoder); - + /// /// Sets a debug marker. This allows you to group graphics calls together for easy browsing in /// graphics debugging tools. @@ -3616,7 +3616,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_marker", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_marker(Encoder* _this, [MarshalAs(UnmanagedType.LPStr)] string _name, int _len); - + /// /// Set render states for draw primitive. /// @remarks @@ -3636,7 +3636,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_state", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_state(Encoder* _this, ulong _state, uint _rgba); - + /// /// Set condition for rendering. /// @@ -3646,7 +3646,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_condition", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_condition(Encoder* _this, OcclusionQueryHandle _handle, bool _visible); - + /// /// Set stencil test state. /// @@ -3656,7 +3656,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_stencil", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_stencil(Encoder* _this, uint _fstencil, uint _bstencil); - + /// /// Set scissor for draw primitive. /// @remark @@ -3670,7 +3670,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_scissor", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe ushort encoder_set_scissor(Encoder* _this, ushort _x, ushort _y, ushort _width, ushort _height); - + /// /// Set scissor from cache for draw primitive. /// @remark @@ -3681,7 +3681,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_scissor_cached", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_scissor_cached(Encoder* _this, ushort _cache); - + /// /// Set model matrix for draw primitive. If it is not called, /// the model will be rendered with an identity model matrix. @@ -3692,7 +3692,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_transform", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint encoder_set_transform(Encoder* _this, void* _mtx, ushort _num); - + /// /// Set model matrix from matrix cache for draw primitive. /// @@ -3702,7 +3702,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_transform_cached", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_transform_cached(Encoder* _this, uint _cache, ushort _num); - + /// /// Reserve matrices in internal matrix cache. /// @attention Pointer returned can be modified until `bgfx::frame` is called. @@ -3713,7 +3713,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_alloc_transform", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint encoder_alloc_transform(Encoder* _this, Transform* _transform, ushort _num); - + /// /// Set shader uniform parameter for draw primitive. /// @@ -3724,7 +3724,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_uniform", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_uniform(Encoder* _this, UniformHandle _handle, void* _value, ushort _num); - + /// /// Set index buffer for draw primitive. /// @@ -3735,7 +3735,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_index_buffer(Encoder* _this, IndexBufferHandle _handle, uint _firstIndex, uint _numIndices); - + /// /// Set index buffer for draw primitive. /// @@ -3746,7 +3746,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_dynamic_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_dynamic_index_buffer(Encoder* _this, DynamicIndexBufferHandle _handle, uint _firstIndex, uint _numIndices); - + /// /// Set index buffer for draw primitive. /// @@ -3757,7 +3757,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_transient_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_transient_index_buffer(Encoder* _this, TransientIndexBuffer* _tib, uint _firstIndex, uint _numIndices); - + /// /// Set vertex buffer for draw primitive. /// @@ -3769,7 +3769,7 @@ public struct VertexLayoutHandle { /// [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); - + /// /// Set vertex buffer for draw primitive. /// @@ -3782,7 +3782,7 @@ public struct VertexLayoutHandle { /// [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. /// @@ -3794,10 +3794,10 @@ public struct VertexLayoutHandle { /// [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); - + [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. /// @@ -3809,7 +3809,7 @@ public struct VertexLayoutHandle { /// [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. /// @@ -3822,7 +3822,7 @@ public struct VertexLayoutHandle { /// [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 conjunction /// with gl_VertexID. @@ -3833,7 +3833,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_vertex_count", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_vertex_count(Encoder* _this, uint _numVertices); - + /// /// Set instance data buffer for draw primitive. /// @@ -3844,7 +3844,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_instance_data_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_instance_data_buffer(Encoder* _this, InstanceDataBuffer* _idb, uint _start, uint _num); - + /// /// Set instance data buffer for draw primitive. /// @@ -3855,7 +3855,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_instance_data_from_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_instance_data_from_vertex_buffer(Encoder* _this, VertexBufferHandle _handle, uint _startVertex, uint _num); - + /// /// Set instance data buffer for draw primitive. /// @@ -3866,7 +3866,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_instance_data_from_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_instance_data_from_dynamic_vertex_buffer(Encoder* _this, DynamicVertexBufferHandle _handle, uint _startVertex, uint _num); - + /// /// Set number of instances for auto generated instances use in conjunction /// with gl_InstanceID. @@ -3875,7 +3875,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_instance_count", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_instance_count(Encoder* _this, uint _numInstances); - + /// /// Set texture stage for draw primitive. /// @@ -3887,7 +3887,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_texture", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_texture(Encoder* _this, byte _stage, UniformHandle _sampler, TextureHandle _handle, uint _flags); - + /// /// Submit an empty primitive for rendering. Uniforms and draw state /// will be applied but no geometry will be submitted. Useful in cases @@ -3901,7 +3901,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_touch", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_touch(Encoder* _this, ushort _id); - + /// /// Submit primitive for rendering. /// @@ -3913,7 +3913,7 @@ public struct VertexLayoutHandle { /// [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); - + /// /// Submit primitive with occlusion query for rendering. /// @@ -3926,7 +3926,7 @@ public struct VertexLayoutHandle { /// [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); - + /// /// Submit primitive for rendering with index and instance data info from /// indirect buffer. @@ -3943,7 +3943,7 @@ public struct VertexLayoutHandle { /// [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, uint _start, uint _num, uint _depth, byte _flags); - + /// /// Submit primitive for rendering with index and instance data info and /// draw count from indirect buffers. @@ -3962,7 +3962,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_submit_indirect_count", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_submit_indirect_count(Encoder* _this, ushort _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint _start, IndexBufferHandle _numHandle, uint _numIndex, uint _numMax, uint _depth, byte _flags); - + /// /// Set compute index buffer. /// @@ -3973,7 +3973,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_compute_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_compute_index_buffer(Encoder* _this, byte _stage, IndexBufferHandle _handle, Access _access); - + /// /// Set compute vertex buffer. /// @@ -3984,7 +3984,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_compute_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_compute_vertex_buffer(Encoder* _this, byte _stage, VertexBufferHandle _handle, Access _access); - + /// /// Set compute dynamic index buffer. /// @@ -3995,7 +3995,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_compute_dynamic_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_compute_dynamic_index_buffer(Encoder* _this, byte _stage, DynamicIndexBufferHandle _handle, Access _access); - + /// /// Set compute dynamic vertex buffer. /// @@ -4006,7 +4006,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_compute_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_compute_dynamic_vertex_buffer(Encoder* _this, byte _stage, DynamicVertexBufferHandle _handle, Access _access); - + /// /// Set compute indirect buffer. /// @@ -4017,7 +4017,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_compute_indirect_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_compute_indirect_buffer(Encoder* _this, byte _stage, IndirectBufferHandle _handle, Access _access); - + /// /// Set compute image from texture. /// @@ -4030,7 +4030,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_set_image", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_set_image(Encoder* _this, byte _stage, TextureHandle _handle, byte _mip, Access _access, TextureFormat _format); - + /// /// Dispatch compute. /// @@ -4044,7 +4044,7 @@ public struct VertexLayoutHandle { /// [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, byte _flags); - + /// /// Dispatch compute indirect. /// @@ -4058,7 +4058,7 @@ public struct VertexLayoutHandle { /// [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, uint _start, uint _num, byte _flags); - + /// /// Discard previously set state for draw or compute call. /// @@ -4067,7 +4067,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_discard", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_discard(Encoder* _this, byte _flags); - + /// /// Blit 2D texture region between two 2D textures. /// @attention Destination texture must be created with `BGFX_TEXTURE_BLIT_DST` flag. @@ -4091,7 +4091,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_encoder_blit", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void encoder_blit(Encoder* _this, ushort _id, TextureHandle _dst, byte _dstMip, ushort _dstX, ushort _dstY, ushort _dstZ, TextureHandle _src, byte _srcMip, ushort _srcX, ushort _srcY, ushort _srcZ, ushort _width, ushort _height, ushort _depth); - + /// /// Request screen shot of window back buffer. /// @remarks @@ -4104,7 +4104,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_request_screen_shot", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void request_screen_shot(FrameBufferHandle _handle, [MarshalAs(UnmanagedType.LPStr)] string _filePath); - + /// /// Render frame. /// @attention `bgfx::renderFrame` is blocking call. It waits for @@ -4120,7 +4120,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_render_frame", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe RenderFrame render_frame(int _msecs); - + /// /// Set platform data. /// @warning Must be called before `bgfx::init`. @@ -4130,7 +4130,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_platform_data", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_platform_data(PlatformData* _data); - + /// /// Get internal data for interop. /// @attention It's expected you understand some bgfx internals before you @@ -4140,7 +4140,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_get_internal_data", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe InternalData* get_internal_data(); - + /// /// Override internal texture with externally created texture. Previously /// created internal texture will released. @@ -4154,7 +4154,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_override_internal_texture_ptr", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe UIntPtr override_internal_texture_ptr(TextureHandle _handle, UIntPtr _ptr); - + /// /// Override internal texture by creating new texture. Previously created /// internal texture will released. @@ -4174,7 +4174,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_override_internal_texture", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe UIntPtr override_internal_texture(TextureHandle _handle, ushort _width, ushort _height, byte _numMips, TextureFormat _format, ulong _flags); - + /// /// Sets a debug marker. This allows you to group graphics calls together for easy browsing in /// graphics debugging tools. @@ -4185,7 +4185,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_marker", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_marker([MarshalAs(UnmanagedType.LPStr)] string _name, int _len); - + /// /// Set render states for draw primitive. /// @remarks @@ -4205,7 +4205,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_state", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_state(ulong _state, uint _rgba); - + /// /// Set condition for rendering. /// @@ -4215,7 +4215,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_condition", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_condition(OcclusionQueryHandle _handle, bool _visible); - + /// /// Set stencil test state. /// @@ -4225,7 +4225,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_stencil", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_stencil(uint _fstencil, uint _bstencil); - + /// /// Set scissor for draw primitive. /// @remark @@ -4239,7 +4239,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_scissor", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe ushort set_scissor(ushort _x, ushort _y, ushort _width, ushort _height); - + /// /// Set scissor from cache for draw primitive. /// @remark @@ -4250,7 +4250,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_scissor_cached", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_scissor_cached(ushort _cache); - + /// /// Set model matrix for draw primitive. If it is not called, /// the model will be rendered with an identity model matrix. @@ -4261,7 +4261,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_transform", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint set_transform(void* _mtx, ushort _num); - + /// /// Set model matrix from matrix cache for draw primitive. /// @@ -4271,7 +4271,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_transform_cached", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_transform_cached(uint _cache, ushort _num); - + /// /// Reserve matrices in internal matrix cache. /// @attention Pointer returned can be modified until `bgfx::frame` is called. @@ -4282,7 +4282,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_alloc_transform", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe uint alloc_transform(Transform* _transform, ushort _num); - + /// /// Set shader uniform parameter for draw primitive. /// @@ -4293,7 +4293,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_uniform", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_uniform(UniformHandle _handle, void* _value, ushort _num); - + /// /// Set index buffer for draw primitive. /// @@ -4304,7 +4304,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_index_buffer(IndexBufferHandle _handle, uint _firstIndex, uint _numIndices); - + /// /// Set index buffer for draw primitive. /// @@ -4315,7 +4315,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_dynamic_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_dynamic_index_buffer(DynamicIndexBufferHandle _handle, uint _firstIndex, uint _numIndices); - + /// /// Set index buffer for draw primitive. /// @@ -4326,7 +4326,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_transient_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_transient_index_buffer(TransientIndexBuffer* _tib, uint _firstIndex, uint _numIndices); - + /// /// Set vertex buffer for draw primitive. /// @@ -4338,7 +4338,7 @@ public struct VertexLayoutHandle { /// [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); - + /// /// Set vertex buffer for draw primitive. /// @@ -4351,7 +4351,7 @@ public struct VertexLayoutHandle { /// [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. /// @@ -4363,7 +4363,7 @@ public struct VertexLayoutHandle { /// [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. /// @@ -4376,7 +4376,7 @@ public struct VertexLayoutHandle { /// [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. /// @@ -4388,7 +4388,7 @@ public struct VertexLayoutHandle { /// [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. /// @@ -4401,7 +4401,7 @@ public struct VertexLayoutHandle { /// [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 conjunction /// with gl_VertexID. @@ -4412,7 +4412,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_vertex_count", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_vertex_count(uint _numVertices); - + /// /// Set instance data buffer for draw primitive. /// @@ -4423,7 +4423,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_instance_data_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_instance_data_buffer(InstanceDataBuffer* _idb, uint _start, uint _num); - + /// /// Set instance data buffer for draw primitive. /// @@ -4434,7 +4434,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_instance_data_from_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_instance_data_from_vertex_buffer(VertexBufferHandle _handle, uint _startVertex, uint _num); - + /// /// Set instance data buffer for draw primitive. /// @@ -4445,7 +4445,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_instance_data_from_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_instance_data_from_dynamic_vertex_buffer(DynamicVertexBufferHandle _handle, uint _startVertex, uint _num); - + /// /// Set number of instances for auto generated instances use in conjunction /// with gl_InstanceID. @@ -4454,7 +4454,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_instance_count", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_instance_count(uint _numInstances); - + /// /// Set texture stage for draw primitive. /// @@ -4466,7 +4466,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_texture", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_texture(byte _stage, UniformHandle _sampler, TextureHandle _handle, uint _flags); - + /// /// Submit an empty primitive for rendering. Uniforms and draw state /// will be applied but no geometry will be submitted. @@ -4478,7 +4478,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_touch", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void touch(ushort _id); - + /// /// Submit primitive for rendering. /// @@ -4490,7 +4490,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_submit", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void submit(ushort _id, ProgramHandle _program, uint _depth, byte _flags); - + /// /// Submit primitive with occlusion query for rendering. /// @@ -4503,7 +4503,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_submit_occlusion_query", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void submit_occlusion_query(ushort _id, ProgramHandle _program, OcclusionQueryHandle _occlusionQuery, uint _depth, byte _flags); - + /// /// Submit primitive for rendering with index and instance data info from /// indirect buffer. @@ -4520,7 +4520,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_submit_indirect", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void submit_indirect(ushort _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint _start, uint _num, uint _depth, byte _flags); - + /// /// Submit primitive for rendering with index and instance data info and /// draw count from indirect buffers. @@ -4539,7 +4539,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_submit_indirect_count", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void submit_indirect_count(ushort _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint _start, IndexBufferHandle _numHandle, uint _numIndex, uint _numMax, uint _depth, byte _flags); - + /// /// Set compute index buffer. /// @@ -4550,7 +4550,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_compute_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_compute_index_buffer(byte _stage, IndexBufferHandle _handle, Access _access); - + /// /// Set compute vertex buffer. /// @@ -4561,7 +4561,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_compute_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_compute_vertex_buffer(byte _stage, VertexBufferHandle _handle, Access _access); - + /// /// Set compute dynamic index buffer. /// @@ -4572,7 +4572,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_compute_dynamic_index_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_compute_dynamic_index_buffer(byte _stage, DynamicIndexBufferHandle _handle, Access _access); - + /// /// Set compute dynamic vertex buffer. /// @@ -4583,7 +4583,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_compute_dynamic_vertex_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_compute_dynamic_vertex_buffer(byte _stage, DynamicVertexBufferHandle _handle, Access _access); - + /// /// Set compute indirect buffer. /// @@ -4594,7 +4594,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_compute_indirect_buffer", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_compute_indirect_buffer(byte _stage, IndirectBufferHandle _handle, Access _access); - + /// /// Set compute image from texture. /// @@ -4607,7 +4607,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_set_image", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void set_image(byte _stage, TextureHandle _handle, byte _mip, Access _access, TextureFormat _format); - + /// /// Dispatch compute. /// @@ -4621,7 +4621,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_dispatch", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void dispatch(ushort _id, ProgramHandle _program, uint _numX, uint _numY, uint _numZ, byte _flags); - + /// /// Dispatch compute indirect. /// @@ -4635,7 +4635,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_dispatch_indirect", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void dispatch_indirect(ushort _id, ProgramHandle _program, IndirectBufferHandle _indirectHandle, uint _start, uint _num, byte _flags); - + /// /// Discard previously set state for draw or compute call. /// @@ -4644,7 +4644,7 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_discard", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void discard(byte _flags); - + /// /// Blit 2D texture region between two 2D textures. /// @attention Destination texture must be created with `BGFX_TEXTURE_BLIT_DST` flag. @@ -4668,6 +4668,6 @@ public struct VertexLayoutHandle { /// [DllImport(DllName, EntryPoint="bgfx_blit", CallingConvention = CallingConvention.Cdecl)] public static extern unsafe void blit(ushort _id, TextureHandle _dst, byte _dstMip, ushort _dstX, ushort _dstY, ushort _dstZ, TextureHandle _src, byte _srcMip, ushort _srcX, ushort _srcY, ushort _srcZ, ushort _width, ushort _height, ushort _depth); - + } } diff --git a/bindings/d/package.d b/bindings/d/package.d index 47e5f5292a..d696b590a2 100644 --- a/bindings/d/package.d +++ b/bindings/d/package.d @@ -1000,9 +1000,9 @@ extern(C++, "bgfx") struct Caps{ uint transientVBSize; ///Maximum transient vertex buffer size. uint transientIBSize; ///Maximum transient index buffer size. } - + RendererType rendererType; ///Renderer backend type. See: `bgfx::RendererType` - + /** Supported functionality. @attention See `BGFX_CAPS_*` flags at https://bkaradzic.github.io/bgfx/bgfx.html#available-caps @@ -1015,7 +1015,7 @@ extern(C++, "bgfx") struct Caps{ ubyte numGPUs; ///Number of enumerated GPUs. GPU[4] gpu; ///Enumerated GPUs. Limits limits; ///Renderer runtime limits. - + /** Supported texture format capabilities flags: - `BGFX_CAPS_FORMAT_TEXTURE_NONE` - Texture format is not supported. @@ -1053,25 +1053,25 @@ extern(C++, "bgfx") struct InternalData{ ///Platform data. extern(C++, "bgfx") struct PlatformData{ void* ndt; ///Native display type (*nix specific). - + /** Native window handle. If `NULL`, bgfx will create a headless context/device, provided the rendering API supports it. */ void* nwh; - + /** GL context, D3D device, or Vulkan device. If `NULL`, bgfx will create context/device. */ void* context; - + /** GL back-buffer, or D3D render target view. If `NULL` bgfx will create back-buffer color surface. */ void* backBuffer; - + /** Backbuffer depth/stencil. If `NULL`, bgfx will create a back-buffer depth/stencil surface. @@ -1112,14 +1112,14 @@ extern(C++, "bgfx") struct Init{ return ret; }())); } - + /** Select rendering backend. When set to RendererType::Count a default rendering backend will be selected appropriate to the platform. See: `bgfx::RendererType` */ RendererType type; - + /** Vendor PCI ID. If set to `BGFX_PCI_ID_NONE`, discrete and integrated GPUs will be prioritised. @@ -1132,7 +1132,7 @@ extern(C++, "bgfx") struct Init{ - `BGFX_PCI_ID_MICROSOFT` - Microsoft adapter. */ ushort vendorID; - + /** Device ID. If set to 0 it will select first device, or device with matching ID. @@ -1144,13 +1144,13 @@ extern(C++, "bgfx") struct Init{ PlatformData platformData; ///Platform data. Resolution resolution; ///Backbuffer resolution and reset parameters. See: `bgfx::Resolution`. Limits limits; ///Configurable runtime limits parameters. - + /** Provide application specific callback interface. See: `bgfx::CallbackI` */ void* callback; - + /** Custom allocator. When a custom allocator is not specified, bgfx uses the CRT allocator. Bgfx assumes @@ -1329,14 +1329,14 @@ extern(C++, "bgfx") struct VertexLayout{ extern(D) mixin(joinFnBinds((){ FnBind[] ret = [ {q{void}, q{this}, q{}, ext: `C++`}, - + /** Start VertexLayout. Params: rendererType = Renderer backend type. See: `bgfx::RendererType` */ {q{VertexLayout*}, q{begin}, q{bgfx.fakeenum.RendererType.Enum rendererType=RendererType.noop}, ext: `C++`}, - + /** Add attribute to VertexLayout. Remarks: Must be called between begin/end. @@ -1353,7 +1353,7 @@ extern(C++, "bgfx") struct VertexLayout{ Unpacking code must be implemented inside vertex shader. */ {q{VertexLayout*}, q{add}, q{bgfx.fakeenum.Attrib.Enum attrib, ubyte num, bgfx.fakeenum.AttribType.Enum type, bool normalised=false, bool asInt=false}, ext: `C++`}, - + /** Decode attribute. Params: @@ -1364,14 +1364,14 @@ extern(C++, "bgfx") struct VertexLayout{ asInt = Attribute is packed as int. */ {q{void}, q{decode}, q{bgfx.fakeenum.Attrib.Enum attrib, ref ubyte num, ref bgfx.fakeenum.AttribType.Enum type, ref bool normalised, ref bool asInt}, ext: `C++`, memAttr: q{const}}, - + /** Skip `_num` bytes in vertex stream. Params: num = Number of bytes to skip. */ {q{VertexLayout*}, q{skip}, q{ubyte num}, ext: `C++`}, - + /** End VertexLayout. */ @@ -1397,7 +1397,7 @@ extern(C++, "bgfx") struct Encoder{ that _name is zero terminated string. */ {q{void}, q{setMarker}, q{const(char)* name, int len=int.max}, ext: `C++`}, - + /** Set render states for draw primitive. Remarks: @@ -1424,7 +1424,7 @@ extern(C++, "bgfx") struct Encoder{ `BGFX_STATE_BLEND_INV_FACTOR` blend modes. */ {q{void}, q{setState}, q{c_uint64 state, uint rgba=0}, ext: `C++`}, - + /** Set condition for rendering. Params: @@ -1432,7 +1432,7 @@ extern(C++, "bgfx") struct Encoder{ visible = Render if occlusion query is visible. */ {q{void}, q{setCondition}, q{OcclusionQueryHandle handle, bool visible}, ext: `C++`}, - + /** Set stencil test state. Params: @@ -1441,7 +1441,7 @@ extern(C++, "bgfx") struct Encoder{ _fstencil is applied to both front and back facing primitives. */ {q{void}, q{setStencil}, q{uint fStencil, uint bStencil=Stencil.none}, ext: `C++`}, - + /** Set scissor for draw primitive. Remarks: @@ -1453,7 +1453,7 @@ extern(C++, "bgfx") struct Encoder{ height = Height of view scissor region. */ {q{ushort}, q{setScissor}, q{ushort x, ushort y, ushort width, ushort height}, ext: `C++`}, - + /** Set scissor from cache for draw primitive. Remarks: @@ -1462,7 +1462,7 @@ extern(C++, "bgfx") struct Encoder{ cache = Index in scissor cache. */ {q{void}, q{setScissor}, q{ushort cache=ushort.max}, ext: `C++`}, - + /** Set model matrix for draw primitive. If it is not called, the model will be rendered with an identity model matrix. @@ -1471,7 +1471,7 @@ extern(C++, "bgfx") struct Encoder{ num = Number of matrices in array. */ {q{uint}, q{setTransform}, q{const(void)* mtx, ushort num=1}, ext: `C++`}, - + /** Set model matrix from matrix cache for draw primitive. Params: @@ -1479,7 +1479,7 @@ extern(C++, "bgfx") struct Encoder{ num = Number of matrices from cache. */ {q{void}, q{setTransform}, q{uint cache, ushort num=1}, ext: `C++`}, - + /** Reserve matrices in internal matrix cache. Attention: Pointer returned can be modified until `bgfx::frame` is called. @@ -1488,7 +1488,7 @@ extern(C++, "bgfx") struct Encoder{ num = Number of matrices. */ {q{uint}, q{allocTransform}, q{Transform* transform, ushort num}, ext: `C++`}, - + /** Set shader uniform parameter for draw primitive. Params: @@ -1498,14 +1498,14 @@ extern(C++, "bgfx") struct Encoder{ use the _num passed on uniform creation. */ {q{void}, q{setUniform}, q{UniformHandle handle, const(void)* value, ushort num=1}, ext: `C++`}, - + /** Set index buffer for draw primitive. Params: handle = Index buffer. */ {q{void}, q{setIndexBuffer}, q{IndexBufferHandle handle}, ext: `C++`}, - + /** Set index buffer for draw primitive. Params: @@ -1514,14 +1514,14 @@ extern(C++, "bgfx") struct Encoder{ numIndices = Number of indices to render. */ {q{void}, q{setIndexBuffer}, q{IndexBufferHandle handle, uint firstIndex, uint numIndices}, ext: `C++`}, - + /** Set index buffer for draw primitive. Params: handle = Dynamic index buffer. */ {q{void}, q{setIndexBuffer}, q{DynamicIndexBufferHandle handle}, ext: `C++`}, - + /** Set index buffer for draw primitive. Params: @@ -1530,14 +1530,14 @@ extern(C++, "bgfx") struct Encoder{ numIndices = Number of indices to render. */ {q{void}, q{setIndexBuffer}, q{DynamicIndexBufferHandle handle, uint firstIndex, uint numIndices}, ext: `C++`}, - + /** Set index buffer for draw primitive. Params: tib = Transient index buffer. */ {q{void}, q{setIndexBuffer}, q{const(TransientIndexBuffer)* tib}, ext: `C++`}, - + /** Set index buffer for draw primitive. Params: @@ -1546,7 +1546,7 @@ extern(C++, "bgfx") struct Encoder{ numIndices = Number of indices to render. */ {q{void}, q{setIndexBuffer}, q{const(TransientIndexBuffer)* tib, uint firstIndex, uint numIndices}, ext: `C++`}, - + /** Set vertex buffer for draw primitive. Params: @@ -1554,7 +1554,7 @@ extern(C++, "bgfx") struct Encoder{ handle = Vertex buffer. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, VertexBufferHandle handle}, ext: `C++`}, - + /** Set vertex buffer for draw primitive. Params: @@ -1567,7 +1567,7 @@ extern(C++, "bgfx") struct Encoder{ of vertex buffer will be used. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, VertexBufferHandle handle, uint startVertex, uint numVertices, VertexLayoutHandle layoutHandle=invalidHandle!VertexLayoutHandle}, ext: `C++`}, - + /** Set vertex buffer for draw primitive. Params: @@ -1576,7 +1576,7 @@ extern(C++, "bgfx") struct Encoder{ */ {q{void}, q{setVertexBuffer}, q{ubyte stream, DynamicVertexBufferHandle handle}, ext: `C++`}, {q{void}, q{setVertexBuffer}, q{ubyte stream, DynamicVertexBufferHandle handle, uint startVertex, uint numVertices, VertexLayoutHandle layoutHandle=invalidHandle!VertexLayoutHandle}, ext: `C++`}, - + /** Set vertex buffer for draw primitive. Params: @@ -1584,7 +1584,7 @@ extern(C++, "bgfx") struct Encoder{ tvb = Transient vertex buffer. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, const(TransientVertexBuffer)* tvb}, ext: `C++`}, - + /** Set vertex buffer for draw primitive. Params: @@ -1597,7 +1597,7 @@ extern(C++, "bgfx") struct Encoder{ of vertex buffer will be used. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, const(TransientVertexBuffer)* tvb, uint startVertex, uint numVertices, VertexLayoutHandle layoutHandle=invalidHandle!VertexLayoutHandle}, ext: `C++`}, - + /** Set number of vertices for auto generated vertices use in conjunction with gl_VertexID. @@ -1606,14 +1606,14 @@ extern(C++, "bgfx") struct Encoder{ numVertices = Number of vertices. */ {q{void}, q{setVertexCount}, q{uint numVertices}, ext: `C++`}, - + /** Set instance data buffer for draw primitive. Params: idb = Transient instance data buffer. */ {q{void}, q{setInstanceDataBuffer}, q{const(InstanceDataBuffer)* idb}, ext: `C++`}, - + /** Set instance data buffer for draw primitive. Params: @@ -1622,7 +1622,7 @@ extern(C++, "bgfx") struct Encoder{ num = Number of data instances. */ {q{void}, q{setInstanceDataBuffer}, q{const(InstanceDataBuffer)* idb, uint start, uint num}, ext: `C++`}, - + /** Set instance data buffer for draw primitive. Params: @@ -1631,7 +1631,7 @@ extern(C++, "bgfx") struct Encoder{ num = Number of data instances. */ {q{void}, q{setInstanceDataBuffer}, q{VertexBufferHandle handle, uint startVertex, uint num}, ext: `C++`}, - + /** Set instance data buffer for draw primitive. Params: @@ -1640,14 +1640,14 @@ extern(C++, "bgfx") struct Encoder{ num = Number of data instances. */ {q{void}, q{setInstanceDataBuffer}, q{DynamicVertexBufferHandle handle, uint startVertex, uint num}, ext: `C++`}, - + /** Set number of instances for auto generated instances use in conjunction with gl_InstanceID. Attention: Availability depends on: `BGFX_CAPS_VERTEX_ID`. */ {q{void}, q{setInstanceCount}, q{uint numInstances}, ext: `C++`}, - + /** Set texture stage for draw primitive. Params: @@ -1662,7 +1662,7 @@ extern(C++, "bgfx") struct Encoder{ sampling. */ {q{void}, q{setTexture}, q{ubyte stage, UniformHandle sampler, TextureHandle handle, uint flags=uint.max}, ext: `C++`}, - + /** Submit an empty primitive for rendering. Uniforms and draw state will be applied but no geometry will be submitted. Useful in cases @@ -1674,7 +1674,7 @@ extern(C++, "bgfx") struct Encoder{ id = View id. */ {q{void}, q{touch}, q{ViewID id}, ext: `C++`}, - + /** Submit primitive for rendering. Params: @@ -1684,7 +1684,7 @@ extern(C++, "bgfx") struct Encoder{ flags = Discard or preserve states. See `BGFX_DISCARD_*`. */ {q{void}, q{submit}, q{ViewID id, ProgramHandle program, uint depth=0, ubyte flags=Discard.all}, ext: `C++`}, - + /** Submit primitive with occlusion query for rendering. Params: @@ -1695,7 +1695,7 @@ extern(C++, "bgfx") struct Encoder{ flags = Discard or preserve states. See `BGFX_DISCARD_*`. */ {q{void}, q{submit}, q{ViewID id, ProgramHandle program, OcclusionQueryHandle occlusionQuery, uint depth=0, ubyte flags=Discard.all}, ext: `C++`}, - + /** Submit primitive for rendering with index and instance data info from indirect buffer. @@ -1710,7 +1710,7 @@ extern(C++, "bgfx") struct Encoder{ flags = Discard or preserve states. See `BGFX_DISCARD_*`. */ {q{void}, q{submit}, q{ViewID id, ProgramHandle program, IndirectBufferHandle indirectHandle, uint start=0, uint num=1, uint depth=0, ubyte flags=Discard.all}, ext: `C++`}, - + /** Submit primitive for rendering with index and instance data info and draw count from indirect buffers. @@ -1728,7 +1728,7 @@ extern(C++, "bgfx") struct Encoder{ flags = Discard or preserve states. See `BGFX_DISCARD_*`. */ {q{void}, q{submit}, q{ViewID id, ProgramHandle program, IndirectBufferHandle indirectHandle, uint start, IndexBufferHandle numHandle, uint numIndex=0, uint numMax=uint.max, uint depth=0, ubyte flags=Discard.all}, ext: `C++`}, - + /** Set compute index buffer. Params: @@ -1737,7 +1737,7 @@ extern(C++, "bgfx") struct Encoder{ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, IndexBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++`}, - + /** Set compute vertex buffer. Params: @@ -1746,7 +1746,7 @@ extern(C++, "bgfx") struct Encoder{ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, VertexBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++`}, - + /** Set compute dynamic index buffer. Params: @@ -1755,7 +1755,7 @@ extern(C++, "bgfx") struct Encoder{ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, DynamicIndexBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++`}, - + /** Set compute dynamic vertex buffer. Params: @@ -1764,7 +1764,7 @@ extern(C++, "bgfx") struct Encoder{ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, DynamicVertexBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++`}, - + /** Set compute indirect buffer. Params: @@ -1773,7 +1773,7 @@ extern(C++, "bgfx") struct Encoder{ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, IndirectBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++`}, - + /** Set compute image from texture. Params: @@ -1784,7 +1784,7 @@ extern(C++, "bgfx") struct Encoder{ format = Texture format. See: `TextureFormat::Enum`. */ {q{void}, q{setImage}, q{ubyte stage, TextureHandle handle, ubyte mip, bgfx.fakeenum.Access.Enum access, bgfx.fakeenum.TextureFormat.Enum format=TextureFormat.count}, ext: `C++`}, - + /** Dispatch compute. Params: @@ -1796,7 +1796,7 @@ extern(C++, "bgfx") struct Encoder{ flags = Discard or preserve states. See `BGFX_DISCARD_*`. */ {q{void}, q{dispatch}, q{ViewID id, ProgramHandle program, uint numX=1, uint numY=1, uint numZ=1, ubyte flags=Discard.all}, ext: `C++`}, - + /** Dispatch compute indirect. Params: @@ -1808,14 +1808,14 @@ extern(C++, "bgfx") struct Encoder{ flags = Discard or preserve states. See `BGFX_DISCARD_*`. */ {q{void}, q{dispatch}, q{ViewID id, ProgramHandle program, IndirectBufferHandle indirectHandle, uint start=0, uint num=1, ubyte flags=Discard.all}, ext: `C++`}, - + /** Discard previously set state for draw or compute call. Params: flags = Discard or preserve states. See `BGFX_DISCARD_*`. */ {q{void}, q{discard}, q{ubyte flags=Discard.all}, ext: `C++`}, - + /** Blit 2D texture region between two 2D textures. Attention: Destination texture must be created with `BGFX_TEXTURE_BLIT_DST` flag. @@ -1832,7 +1832,7 @@ extern(C++, "bgfx") struct Encoder{ height = Height of region. */ {q{void}, q{blit}, q{ViewID id, TextureHandle dst, ushort dstX, ushort dstY, TextureHandle src, ushort srcX=0, ushort srcY=0, ushort width=ushort.max, ushort height=ushort.max}, ext: `C++`}, - + /** Blit 2D texture region between two 2D textures. Attention: Destination texture must be created with `BGFX_TEXTURE_BLIT_DST` flag. @@ -1877,7 +1877,7 @@ mixin(joinFnBinds((){ index = Vertex index that will be modified. */ {q{void}, q{vertexPack}, q{const(float)* input, bool inputNormalised, bgfx.fakeenum.Attrib.Enum attr, ref const VertexLayout layout, void* data, uint index=0}, ext: `C++, "bgfx"`}, - + /** * Unpack vertex attribute from vertex stream format. Params: @@ -1888,7 +1888,7 @@ mixin(joinFnBinds((){ index = Vertex index that will be unpacked. */ {q{void}, q{vertexUnpack}, q{float* output, bgfx.fakeenum.Attrib.Enum attr, ref const VertexLayout layout, const(void)* data, uint index=0}, ext: `C++, "bgfx"`}, - + /** * Converts vertex stream data from one vertex stream format to another. Params: @@ -1899,7 +1899,7 @@ mixin(joinFnBinds((){ num = Number of vertices to convert from source to destination. */ {q{void}, q{vertexConvert}, q{ref const VertexLayout dstLayout, void* dstData, ref const VertexLayout srcLayout, const(void)* srcData, uint num=1}, ext: `C++, "bgfx"`}, - + /** * Weld vertices. Params: @@ -1912,7 +1912,7 @@ mixin(joinFnBinds((){ epsilon = Error tolerance for vertex position comparison. */ {q{uint}, q{weldVertices}, q{void* output, ref const VertexLayout layout, const(void)* data, uint num, bool index32, float epsilon=0.001f}, ext: `C++, "bgfx"`}, - + /** * Convert index buffer for use with different primitive topologies. Params: @@ -1927,7 +1927,7 @@ mixin(joinFnBinds((){ index32 = Set to `true` if input indices are 32-bit. */ {q{uint}, q{topologyConvert}, q{bgfx.fakeenum.TopologyConvert.Enum conversion, void* dst, uint dstSize, const(void)* indices, uint numIndices, bool index32}, ext: `C++, "bgfx"`}, - + /** * Sort indices. Params: @@ -1947,7 +1947,7 @@ mixin(joinFnBinds((){ index32 = Set to `true` if input indices are 32-bit. */ {q{void}, q{topologySortTriList}, q{bgfx.fakeenum.TopologySort.Enum sort, void* dst, uint dstSize, const(float)* dir, const(float)* pos, const(void)* vertices, uint stride, const(void)* indices, uint numIndices, bool index32}, ext: `C++, "bgfx"`}, - + /** * Returns supported backend API renderers. Params: @@ -1955,26 +1955,26 @@ mixin(joinFnBinds((){ enum_ = Array where supported renderers will be written. */ {q{ubyte}, q{getSupportedRenderers}, q{ubyte max=0, bgfx.fakeenum.RendererType.Enum* enum_=null}, ext: `C++, "bgfx"`}, - + /** * Returns name of renderer. Params: type = Renderer backend type. See: `bgfx::RendererType` */ {q{const(char)*}, q{getRendererName}, q{bgfx.fakeenum.RendererType.Enum type}, ext: `C++, "bgfx"`}, - + /** * Initialize the bgfx library. Params: init = Initialization parameters. See: `bgfx::Init` for more info. */ {q{bool}, q{init}, q{ref const Init init}, ext: `C++, "bgfx"`}, - + /** * Shutdown bgfx library. */ {q{void}, q{shutdown}, q{}, ext: `C++, "bgfx"`}, - + /** * Reset graphic settings and back-buffer size. * Attention: This call doesn’t change the window size, it just resizes @@ -1997,7 +1997,7 @@ mixin(joinFnBinds((){ format = Texture format. See: `TextureFormat::Enum`. */ {q{void}, q{reset}, q{uint width, uint height, uint flags=Reset.none, bgfx.fakeenum.TextureFormat.Enum format=TextureFormat.count}, ext: `C++, "bgfx"`}, - + /** * Advance to next frame. When using multithreaded renderer, this call * just swaps internal buffers, kicks render thread, and returns. In @@ -2006,34 +2006,34 @@ mixin(joinFnBinds((){ capture = Capture frame with graphics debugger. */ {q{uint}, q{frame}, q{bool capture=false}, ext: `C++, "bgfx"`}, - + /** * Returns current renderer backend API type. * Remarks: * Library must be initialized. */ {q{RendererType}, q{getRendererType}, q{}, ext: `C++, "bgfx"`}, - + /** * Returns renderer capabilities. * Remarks: * Library must be initialized. */ {q{const(Caps)*}, q{getCaps}, q{}, ext: `C++, "bgfx"`}, - + /** * Returns performance counters. * Attention: Pointer returned is valid until `bgfx::frame` is called. */ {q{const(Stats)*}, q{getStats}, q{}, ext: `C++, "bgfx"`}, - + /** * Allocate buffer to pass to bgfx calls. Data will be freed inside bgfx. Params: size = Size to allocate. */ {q{const(Memory)*}, q{alloc}, q{uint size}, ext: `C++, "bgfx"`}, - + /** * Allocate buffer and copy data into it. Data will be freed inside bgfx. Params: @@ -2041,7 +2041,7 @@ mixin(joinFnBinds((){ size = Size of data to be copied. */ {q{const(Memory)*}, q{copy}, q{const(void)* data, uint size}, ext: `C++, "bgfx"`}, - + /** * Make reference to data to pass to bgfx. Unlike `bgfx::alloc`, this call * doesn't allocate memory for data. It just copies the _data pointer. You @@ -2057,7 +2057,7 @@ mixin(joinFnBinds((){ userData = User data to be passed to callback function. */ {q{const(Memory)*}, q{makeRef}, q{const(void)* data, uint size, ReleaseFn releaseFn=null, void* userData=null}, ext: `C++, "bgfx"`}, - + /** * Set debug flags. Params: @@ -2072,7 +2072,7 @@ mixin(joinFnBinds((){ primitives will be rendered as lines. */ {q{void}, q{setDebug}, q{uint debug_}, ext: `C++, "bgfx"`}, - + /** * Clear internal debug text buffer. Params: @@ -2080,7 +2080,7 @@ mixin(joinFnBinds((){ small = Default 8x16 or 8x8 font. */ {q{void}, q{dbgTextClear}, q{ubyte attr=0, bool small=false}, ext: `C++, "bgfx"`}, - + /** * Print formatted data to internal debug text character-buffer (VGA-compatible text mode). Params: @@ -2091,7 +2091,7 @@ mixin(joinFnBinds((){ format = `printf` style format. */ {q{void}, q{dbgTextPrintf}, q{ushort x, ushort y, ubyte attr, const(char)* format, ...}, ext: `C++, "bgfx"`}, - + /** * Print formatted data from variable argument list to internal debug text character-buffer (VGA-compatible text mode). Params: @@ -2103,7 +2103,7 @@ mixin(joinFnBinds((){ argList = Variable arguments list for format string. */ {q{void}, q{dbgTextPrintfVargs}, q{ushort x, ushort y, ubyte attr, const(char)* format, va_list argList}, ext: `C++, "bgfx"`}, - + /** * Draw image into internal debug text buffer. Params: @@ -2115,7 +2115,7 @@ mixin(joinFnBinds((){ pitch = Image pitch in bytes. */ {q{void}, q{dbgTextImage}, q{ushort x, ushort y, ushort width, ushort height, const(void)* data, ushort pitch}, ext: `C++, "bgfx"`}, - + /** * Create static index buffer. Params: @@ -2134,7 +2134,7 @@ mixin(joinFnBinds((){ index buffers. */ {q{IndexBufferHandle}, q{createIndexBuffer}, q{const(Memory)* mem, ushort flags=Buffer.none}, ext: `C++, "bgfx"`}, - + /** * Set static index buffer debug name. Params: @@ -2144,28 +2144,28 @@ mixin(joinFnBinds((){ that _name is zero terminated string. */ {q{void}, q{setName}, q{IndexBufferHandle handle, const(char)* name, int len=int.max}, ext: `C++, "bgfx"`}, - + /** * Destroy static index buffer. Params: handle = Static index buffer handle. */ {q{void}, q{destroy}, q{IndexBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Create vertex layout. Params: layout = Vertex layout. */ {q{VertexLayoutHandle}, q{createVertexLayout}, q{ref const VertexLayout layout}, ext: `C++, "bgfx"`}, - + /** * Destroy vertex layout. Params: layoutHandle = Vertex layout handle. */ {q{void}, q{destroy}, q{VertexLayoutHandle layoutHandle}, ext: `C++, "bgfx"`}, - + /** * Create static vertex buffer. Params: @@ -2183,7 +2183,7 @@ mixin(joinFnBinds((){ - `BGFX_BUFFER_INDEX32` - Buffer is using 32-bit indices. This flag has effect only on index buffers. */ {q{VertexBufferHandle}, q{createVertexBuffer}, q{const(Memory)* mem, ref const VertexLayout layout, ushort flags=Buffer.none}, ext: `C++, "bgfx"`}, - + /** * Set static vertex buffer debug name. Params: @@ -2193,14 +2193,14 @@ mixin(joinFnBinds((){ that _name is zero terminated string. */ {q{void}, q{setName}, q{VertexBufferHandle handle, const(char)* name, int len=int.max}, ext: `C++, "bgfx"`}, - + /** * Destroy static vertex buffer. Params: handle = Static vertex buffer handle. */ {q{void}, q{destroy}, q{VertexBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Create empty dynamic index buffer. Params: @@ -2219,7 +2219,7 @@ mixin(joinFnBinds((){ index buffers. */ {q{DynamicIndexBufferHandle}, q{createDynamicIndexBuffer}, q{uint num, ushort flags=Buffer.none}, ext: `C++, "bgfx"`}, - + /** * Create a dynamic index buffer and initialize it. Params: @@ -2238,7 +2238,7 @@ mixin(joinFnBinds((){ index buffers. */ {q{DynamicIndexBufferHandle}, q{createDynamicIndexBuffer}, q{const(Memory)* mem, ushort flags=Buffer.none}, ext: `C++, "bgfx"`}, - + /** * Update dynamic index buffer. Params: @@ -2247,14 +2247,14 @@ mixin(joinFnBinds((){ mem = Index buffer data. */ {q{void}, q{update}, q{DynamicIndexBufferHandle handle, uint startIndex, const(Memory)* mem}, ext: `C++, "bgfx"`}, - + /** * Destroy dynamic index buffer. Params: handle = Dynamic index buffer handle. */ {q{void}, q{destroy}, q{DynamicIndexBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Create empty dynamic vertex buffer. Params: @@ -2274,7 +2274,7 @@ mixin(joinFnBinds((){ index buffers. */ {q{DynamicVertexBufferHandle}, q{createDynamicVertexBuffer}, q{uint num, ref const VertexLayout layout, ushort flags=Buffer.none}, ext: `C++, "bgfx"`}, - + /** * Create dynamic vertex buffer and initialize it. Params: @@ -2294,7 +2294,7 @@ mixin(joinFnBinds((){ index buffers. */ {q{DynamicVertexBufferHandle}, q{createDynamicVertexBuffer}, q{const(Memory)* mem, ref const VertexLayout layout, ushort flags=Buffer.none}, ext: `C++, "bgfx"`}, - + /** * Update dynamic vertex buffer. Params: @@ -2303,14 +2303,14 @@ mixin(joinFnBinds((){ mem = Vertex buffer data. */ {q{void}, q{update}, q{DynamicVertexBufferHandle handle, uint startVertex, const(Memory)* mem}, ext: `C++, "bgfx"`}, - + /** * Destroy dynamic vertex buffer. Params: handle = Dynamic vertex buffer handle. */ {q{void}, q{destroy}, q{DynamicVertexBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Returns number of requested or maximum available indices. Params: @@ -2318,7 +2318,7 @@ mixin(joinFnBinds((){ index32 = Set to `true` if input indices will be 32-bit. */ {q{uint}, q{getAvailTransientIndexBuffer}, q{uint num, bool index32=false}, ext: `C++, "bgfx"`}, - + /** * Returns number of requested or maximum available vertices. Params: @@ -2326,7 +2326,7 @@ mixin(joinFnBinds((){ layout = Vertex layout. */ {q{uint}, q{getAvailTransientVertexBuffer}, q{uint num, ref const VertexLayout layout}, ext: `C++, "bgfx"`}, - + /** * Returns number of requested or maximum available instance buffer slots. Params: @@ -2334,7 +2334,7 @@ mixin(joinFnBinds((){ stride = Stride per instance. */ {q{uint}, q{getAvailInstanceDataBuffer}, q{uint num, ushort stride}, ext: `C++, "bgfx"`}, - + /** * Allocate transient index buffer. Params: @@ -2345,7 +2345,7 @@ mixin(joinFnBinds((){ index32 = Set to `true` if input indices will be 32-bit. */ {q{void}, q{allocTransientIndexBuffer}, q{TransientIndexBuffer* tib, uint num, bool index32=false}, ext: `C++, "bgfx"`}, - + /** * Allocate transient vertex buffer. Params: @@ -2356,7 +2356,7 @@ mixin(joinFnBinds((){ layout = Vertex layout. */ {q{void}, q{allocTransientVertexBuffer}, q{TransientVertexBuffer* tvb, uint num, ref const VertexLayout layout}, ext: `C++, "bgfx"`}, - + /** * Check for required space and allocate transient vertex and index * buffers. If both space requirements are satisfied function returns @@ -2374,7 +2374,7 @@ mixin(joinFnBinds((){ index32 = Set to `true` if input indices will be 32-bit. */ {q{bool}, q{allocTransientBuffers}, q{TransientVertexBuffer* tvb, ref const VertexLayout layout, uint numVertices, TransientIndexBuffer* tib, uint numIndices, bool index32=false}, ext: `C++, "bgfx"`}, - + /** * Allocate instance data buffer. Params: @@ -2385,21 +2385,21 @@ mixin(joinFnBinds((){ stride = Instance stride. Must be multiple of 16. */ {q{void}, q{allocInstanceDataBuffer}, q{InstanceDataBuffer* idb, uint num, ushort stride}, ext: `C++, "bgfx"`}, - + /** * Create draw indirect buffer. Params: num = Number of indirect calls. */ {q{IndirectBufferHandle}, q{createIndirectBuffer}, q{uint num}, ext: `C++, "bgfx"`}, - + /** * Destroy draw indirect buffer. Params: handle = Indirect buffer handle. */ {q{void}, q{destroy}, q{IndirectBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Create shader from memory buffer. * Remarks: @@ -2408,7 +2408,7 @@ mixin(joinFnBinds((){ mem = Shader binary. */ {q{ShaderHandle}, q{createShader}, q{const(Memory)* mem}, ext: `C++, "bgfx"`}, - + /** * Returns the number of uniforms and uniform handles used inside a shader. * Remarks: @@ -2419,7 +2419,7 @@ mixin(joinFnBinds((){ max = Maximum capacity of array. */ {q{ushort}, q{getShaderUniforms}, q{ShaderHandle handle, UniformHandle* uniforms=null, ushort max=0}, ext: `C++, "bgfx"`}, - + /** * Set shader debug name. Params: @@ -2429,7 +2429,7 @@ mixin(joinFnBinds((){ that _name is zero terminated string). */ {q{void}, q{setName}, q{ShaderHandle handle, const(char)* name, int len=int.max}, ext: `C++, "bgfx"`}, - + /** * Destroy shader. * Remarks: Once a shader program is created with _handle, @@ -2438,7 +2438,7 @@ mixin(joinFnBinds((){ handle = Shader handle. */ {q{void}, q{destroy}, q{ShaderHandle handle}, ext: `C++, "bgfx"`}, - + /** * Create program with vertex and fragment shaders. Params: @@ -2447,7 +2447,7 @@ mixin(joinFnBinds((){ destroyShaders = If true, shaders will be destroyed when program is destroyed. */ {q{ProgramHandle}, q{createProgram}, q{ShaderHandle vsh, ShaderHandle fsh, bool destroyShaders=false}, ext: `C++, "bgfx"`}, - + /** * Create program with compute shader. Params: @@ -2455,14 +2455,14 @@ mixin(joinFnBinds((){ destroyShaders = If true, shaders will be destroyed when program is destroyed. */ {q{ProgramHandle}, q{createProgram}, q{ShaderHandle csh, bool destroyShaders=false}, ext: `C++, "bgfx"`}, - + /** * Destroy program. Params: handle = Program handle. */ {q{void}, q{destroy}, q{ProgramHandle handle}, ext: `C++, "bgfx"`}, - + /** * Validate texture parameters. Params: @@ -2473,7 +2473,7 @@ mixin(joinFnBinds((){ flags = Texture flags. See `BGFX_TEXTURE_*`. */ {q{bool}, q{isTextureValid}, q{ushort depth, bool cubeMap, ushort numLayers, bgfx.fakeenum.TextureFormat.Enum format, c_uint64 flags}, ext: `C++, "bgfx"`}, - + /** * Validate frame buffer parameters. Params: @@ -2481,7 +2481,7 @@ mixin(joinFnBinds((){ attachment = Attachment texture info. See: `bgfx::Attachment`. */ {q{bool}, q{isFrameBufferValid}, q{ubyte num, const(Attachment)* attachment}, ext: `C++, "bgfx"`}, - + /** * Calculate amount of memory required for texture. Params: @@ -2495,7 +2495,7 @@ mixin(joinFnBinds((){ format = Texture format. See: `TextureFormat::Enum`. */ {q{void}, q{calcTextureSize}, q{ref TextureInfo info, ushort width, ushort height, ushort depth, bool cubeMap, bool hasMIPs, ushort numLayers, bgfx.fakeenum.TextureFormat.Enum format}, ext: `C++, "bgfx"`}, - + /** * Create texture from memory buffer. Params: @@ -2510,7 +2510,7 @@ mixin(joinFnBinds((){ info = When non-`NULL` is specified it returns parsed texture information. */ {q{TextureHandle}, q{createTexture}, q{const(Memory)* mem, c_uint64 flags=Texture.none|Sampler.none, ubyte skip=0, TextureInfo* info=null}, ext: `C++, "bgfx"`}, - + /** * Create 2D texture. Params: @@ -2531,7 +2531,7 @@ mixin(joinFnBinds((){ 1, expected memory layout is texture and all mips together for each array element. */ {q{TextureHandle}, q{createTexture2D}, q{ushort width, ushort height, bool hasMIPs, ushort numLayers, bgfx.fakeenum.TextureFormat.Enum format, c_uint64 flags=Texture.none|Sampler.none, const(Memory)* mem=null}, ext: `C++, "bgfx"`}, - + /** * Create texture with size based on back-buffer ratio. Texture will maintain ratio * if back buffer resolution changes. @@ -2549,7 +2549,7 @@ mixin(joinFnBinds((){ sampling. */ {q{TextureHandle}, q{createTexture2D}, q{bgfx.fakeenum.BackbufferRatio.Enum ratio, bool hasMIPs, ushort numLayers, bgfx.fakeenum.TextureFormat.Enum format, c_uint64 flags=Texture.none|Sampler.none}, ext: `C++, "bgfx"`}, - + /** * Create 3D texture. Params: @@ -2569,7 +2569,7 @@ mixin(joinFnBinds((){ 1, expected memory layout is texture and all mips together for each array element. */ {q{TextureHandle}, q{createTexture3D}, q{ushort width, ushort height, ushort depth, bool hasMIPs, bgfx.fakeenum.TextureFormat.Enum format, c_uint64 flags=Texture.none|Sampler.none, const(Memory)* mem=null}, ext: `C++, "bgfx"`}, - + /** * Create Cube texture. Params: @@ -2589,7 +2589,7 @@ mixin(joinFnBinds((){ 1, expected memory layout is texture and all mips together for each array element. */ {q{TextureHandle}, q{createTextureCube}, q{ushort size, bool hasMIPs, ushort numLayers, bgfx.fakeenum.TextureFormat.Enum format, c_uint64 flags=Texture.none|Sampler.none, const(Memory)* mem=null}, ext: `C++, "bgfx"`}, - + /** * Update 2D texture. * Attention: It's valid to update only mutable texture. See `bgfx::createTexture2D` for more info. @@ -2606,7 +2606,7 @@ mixin(joinFnBinds((){ UINT16_MAX, it will be calculated internally based on _width. */ {q{void}, q{updateTexture2D}, q{TextureHandle handle, ushort layer, ubyte mip, ushort x, ushort y, ushort width, ushort height, const(Memory)* mem, ushort pitch=ushort.max}, ext: `C++, "bgfx"`}, - + /** * Update 3D texture. * Attention: It's valid to update only mutable texture. See `bgfx::createTexture3D` for more info. @@ -2622,7 +2622,7 @@ mixin(joinFnBinds((){ mem = Texture update data. */ {q{void}, q{updateTexture3D}, q{TextureHandle handle, ubyte mip, ushort x, ushort y, ushort z, ushort width, ushort height, ushort depth, const(Memory)* mem}, ext: `C++, "bgfx"`}, - + /** * Update Cube texture. * Attention: It's valid to update only mutable texture. See `bgfx::createTextureCube` for more info. @@ -2657,7 +2657,7 @@ mixin(joinFnBinds((){ UINT16_MAX, it will be calculated internally based on _width. */ {q{void}, q{updateTextureCube}, q{TextureHandle handle, ushort layer, ubyte side, ubyte mip, ushort x, ushort y, ushort width, ushort height, const(Memory)* mem, ushort pitch=ushort.max}, ext: `C++, "bgfx"`}, - + /** * Read back texture content. * Attention: Texture must be created with `BGFX_TEXTURE_READ_BACK` flag. @@ -2668,7 +2668,7 @@ mixin(joinFnBinds((){ mip = Mip level. */ {q{uint}, q{readTexture}, q{TextureHandle handle, void* data, ubyte mip=0}, ext: `C++, "bgfx"`}, - + /** * Set texture debug name. Params: @@ -2678,7 +2678,7 @@ mixin(joinFnBinds((){ that _name is zero terminated string. */ {q{void}, q{setName}, q{TextureHandle handle, const(char)* name, int len=int.max}, ext: `C++, "bgfx"`}, - + /** * Returns texture direct access pointer. * Attention: Availability depends on: `BGFX_CAPS_TEXTURE_DIRECT_ACCESS`. This feature @@ -2687,14 +2687,14 @@ mixin(joinFnBinds((){ handle = Texture handle. */ {q{void*}, q{getDirectAccessPtr}, q{TextureHandle handle}, ext: `C++, "bgfx"`}, - + /** * Destroy texture. Params: handle = Texture handle. */ {q{void}, q{destroy}, q{TextureHandle handle}, ext: `C++, "bgfx"`}, - + /** * Create frame buffer (simple). Params: @@ -2709,7 +2709,7 @@ mixin(joinFnBinds((){ sampling. */ {q{FrameBufferHandle}, q{createFrameBuffer}, q{ushort width, ushort height, bgfx.fakeenum.TextureFormat.Enum format, c_uint64 textureFlags=SamplerU.clamp|SamplerV.clamp}, ext: `C++, "bgfx"`}, - + /** * Create frame buffer with size based on back-buffer ratio. Frame buffer will maintain ratio * if back buffer resolution changes. @@ -2725,7 +2725,7 @@ mixin(joinFnBinds((){ sampling. */ {q{FrameBufferHandle}, q{createFrameBuffer}, q{bgfx.fakeenum.BackbufferRatio.Enum ratio, bgfx.fakeenum.TextureFormat.Enum format, c_uint64 textureFlags=SamplerU.clamp|SamplerV.clamp}, ext: `C++, "bgfx"`}, - + /** * Create MRT frame buffer from texture handles (simple). Params: @@ -2735,7 +2735,7 @@ mixin(joinFnBinds((){ frame buffer is destroyed. */ {q{FrameBufferHandle}, q{createFrameBuffer}, q{ubyte num, const(TextureHandle)* handles, bool destroyTexture=false}, ext: `C++, "bgfx"`}, - + /** * Create MRT frame buffer from texture handles with specific layer and * mip level. @@ -2746,7 +2746,7 @@ mixin(joinFnBinds((){ frame buffer is destroyed. */ {q{FrameBufferHandle}, q{createFrameBuffer}, q{ubyte num, const(Attachment)* attachment, bool destroyTexture=false}, ext: `C++, "bgfx"`}, - + /** * Create frame buffer for multiple window rendering. * Remarks: @@ -2760,7 +2760,7 @@ mixin(joinFnBinds((){ depthFormat = Window back buffer depth format. */ {q{FrameBufferHandle}, q{createFrameBuffer}, q{void* nwh, ushort width, ushort height, bgfx.fakeenum.TextureFormat.Enum format=TextureFormat.count, bgfx.fakeenum.TextureFormat.Enum depthFormat=TextureFormat.count}, ext: `C++, "bgfx"`}, - + /** * Set frame buffer debug name. Params: @@ -2770,21 +2770,21 @@ mixin(joinFnBinds((){ that _name is zero terminated string. */ {q{void}, q{setName}, q{FrameBufferHandle handle, const(char)* name, int len=int.max}, ext: `C++, "bgfx"`}, - + /** * Obtain texture handle of frame buffer attachment. Params: handle = Frame buffer handle. */ {q{TextureHandle}, q{getTexture}, q{FrameBufferHandle handle, ubyte attachment=0}, ext: `C++, "bgfx"`}, - + /** * Destroy frame buffer. Params: handle = Frame buffer handle. */ {q{void}, q{destroy}, q{FrameBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Create shader uniform parameter. * Remarks: @@ -2815,7 +2815,7 @@ mixin(joinFnBinds((){ num = Number of elements in array. */ {q{UniformHandle}, q{createUniform}, q{const(char)* name, bgfx.fakeenum.UniformType.Enum type, ushort num=1}, ext: `C++, "bgfx"`}, - + /** * Retrieve uniform info. Params: @@ -2823,19 +2823,19 @@ mixin(joinFnBinds((){ info = Uniform info. */ {q{void}, q{getUniformInfo}, q{UniformHandle handle, ref UniformInfo info}, ext: `C++, "bgfx"`}, - + /** * Destroy shader uniform parameter. Params: handle = Handle to uniform object. */ {q{void}, q{destroy}, q{UniformHandle handle}, ext: `C++, "bgfx"`}, - + /** * Create occlusion query. */ {q{OcclusionQueryHandle}, q{createOcclusionQuery}, q{}, ext: `C++, "bgfx"`}, - + /** * Retrieve occlusion query result from previous frame. Params: @@ -2844,14 +2844,14 @@ mixin(joinFnBinds((){ can be `NULL` if result of occlusion query is not needed. */ {q{OcclusionQueryResult}, q{getResult}, q{OcclusionQueryHandle handle, int* result=null}, ext: `C++, "bgfx"`}, - + /** * Destroy occlusion query. Params: handle = Handle to occlusion query object. */ {q{void}, q{destroy}, q{OcclusionQueryHandle handle}, ext: `C++, "bgfx"`}, - + /** * Set palette color value. Params: @@ -2859,7 +2859,7 @@ mixin(joinFnBinds((){ rgba = RGBA floating point values. */ {q{void}, q{setPaletteColor}, q{ubyte index, const(float)* rgba}, ext: `C++, "bgfx"`}, - + /** * Set palette color value. Params: @@ -2870,7 +2870,7 @@ mixin(joinFnBinds((){ a = Alpha value (RGBA floating point values) */ {q{void}, q{setPaletteColor}, q{ubyte index, float r, float g, float b, float a}, ext: `C++, "bgfx"`}, - + /** * Set palette color value. Params: @@ -2878,7 +2878,7 @@ mixin(joinFnBinds((){ rgba = Packed 32-bit RGBA value. */ {q{void}, q{setPaletteColor}, q{ubyte index, uint rgba}, ext: `C++, "bgfx"`}, - + /** * Set view name. * Remarks: @@ -2895,7 +2895,7 @@ mixin(joinFnBinds((){ that _name is zero terminated string. */ {q{void}, q{setViewName}, q{ViewID id, const(char)* name, int len=int.max}, ext: `C++, "bgfx"`}, - + /** * Set view rectangle. Draw primitive outside view will be clipped. Params: @@ -2906,7 +2906,7 @@ mixin(joinFnBinds((){ height = Height of view port region. */ {q{void}, q{setViewRect}, q{ViewID id, ushort x, ushort y, ushort width, ushort height}, ext: `C++, "bgfx"`}, - + /** * Set view rectangle. Draw primitive outside view will be clipped. Params: @@ -2917,7 +2917,7 @@ mixin(joinFnBinds((){ See: `BackbufferRatio::Enum`. */ {q{void}, q{setViewRect}, q{ViewID id, ushort x, ushort y, bgfx.fakeenum.BackbufferRatio.Enum ratio}, ext: `C++, "bgfx"`}, - + /** * Set view scissor. Draw primitive outside view will be clipped. When * _x, _y, _width and _height are set to 0, scissor will be disabled. @@ -2929,7 +2929,7 @@ mixin(joinFnBinds((){ height = Height of view scissor region. */ {q{void}, q{setViewScissor}, q{ViewID id, ushort x=0, ushort y=0, ushort width=0, ushort height=0}, ext: `C++, "bgfx"`}, - + /** * Set view clear flags. Params: @@ -2941,7 +2941,7 @@ mixin(joinFnBinds((){ stencil = Stencil clear value. */ {q{void}, q{setViewClear}, q{ViewID id, ushort flags, uint rgba=0x000000ff, float depth=1.0f, ubyte stencil=0}, ext: `C++, "bgfx"`}, - + /** * Set view clear flags with different clear color for each * frame buffer texture. `bgfx::setPaletteColor` must be used to set up a @@ -2962,7 +2962,7 @@ mixin(joinFnBinds((){ c7 = Palette index for frame buffer attachment 7. */ {q{void}, q{setViewClear}, q{ViewID id, ushort flags, float depth, ubyte stencil, ubyte c0=ubyte.max, ubyte c1=ubyte.max, ubyte c2=ubyte.max, ubyte c3=ubyte.max, ubyte c4=ubyte.max, ubyte c5=ubyte.max, ubyte c6=ubyte.max, ubyte c7=ubyte.max}, ext: `C++, "bgfx"`}, - + /** * Set view sorting mode. * Remarks: @@ -2972,7 +2972,7 @@ mixin(joinFnBinds((){ mode = View sort mode. See `ViewMode::Enum`. */ {q{void}, q{setViewMode}, q{ViewID id, bgfx.fakeenum.ViewMode.Enum mode=ViewMode.default_}, ext: `C++, "bgfx"`}, - + /** * Set view frame buffer. * Remarks: @@ -2984,7 +2984,7 @@ mixin(joinFnBinds((){ default back buffer. */ {q{void}, q{setViewFrameBuffer}, q{ViewID id, FrameBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Set view's view matrix and projection matrix, * all draw primitives in this view will use these two matrices. @@ -2994,7 +2994,7 @@ mixin(joinFnBinds((){ proj = Projection matrix. */ {q{void}, q{setViewTransform}, q{ViewID id, const(void)* view, const(void)* proj}, ext: `C++, "bgfx"`}, - + /** * Post submit view reordering. Params: @@ -3004,26 +3004,26 @@ mixin(joinFnBinds((){ to default state. */ {q{void}, q{setViewOrder}, q{ViewID id=0, ushort num=ushort.max, const(ViewID)* order=null}, ext: `C++, "bgfx"`}, - + /** * Reset all view settings to default. */ {q{void}, q{resetView}, q{ViewID id}, ext: `C++, "bgfx"`}, - + /** * Begin submitting draw calls from thread. Params: forThread = Explicitly request an encoder for a worker thread. */ {q{Encoder*}, q{begin}, q{bool forThread=false}, ext: `C++, "bgfx"`}, - + /** * End submitting draw calls from thread. Params: encoder = Encoder. */ {q{void}, q{end}, q{Encoder* encoder}, ext: `C++, "bgfx"`}, - + /** * Request screen shot of window back buffer. * Remarks: @@ -3035,7 +3035,7 @@ mixin(joinFnBinds((){ filePath = Will be passed to `bgfx::CallbackI::screenShot` callback. */ {q{void}, q{requestScreenShot}, q{FrameBufferHandle handle, const(char)* filePath}, ext: `C++, "bgfx"`}, - + /** * Render frame. * Attention: `bgfx::renderFrame` is blocking call. It waits for @@ -3049,7 +3049,7 @@ mixin(joinFnBinds((){ msecs = Timeout in milliseconds. */ {q{RenderFrame}, q{renderFrame}, q{int msecs=-1}, ext: `C++, "bgfx"`}, - + /** * Set platform data. * Warning: Must be called before `bgfx::init`. @@ -3057,7 +3057,7 @@ mixin(joinFnBinds((){ data = Platform data. */ {q{void}, q{setPlatformData}, q{ref const PlatformData data}, ext: `C++, "bgfx"`}, - + /** * Get internal data for interop. * Attention: It's expected you understand some bgfx internals before you @@ -3065,7 +3065,7 @@ mixin(joinFnBinds((){ * Warning: Must be called only on render thread. */ {q{const(InternalData)*}, q{getInternalData}, q{}, ext: `C++, "bgfx"`}, - + /** * Override internal texture with externally created texture. Previously * created internal texture will released. @@ -3077,7 +3077,7 @@ mixin(joinFnBinds((){ ptr = Native API pointer to texture. */ {q{size_t}, q{overrideInternal}, q{TextureHandle handle, size_t ptr}, ext: `C++, "bgfx"`}, - + /** * Override internal texture by creating new texture. Previously created * internal texture will released. @@ -3100,7 +3100,7 @@ mixin(joinFnBinds((){ sampling. */ {q{size_t}, q{overrideInternal}, q{TextureHandle handle, ushort width, ushort height, ubyte numMIPs, bgfx.fakeenum.TextureFormat.Enum format, c_uint64 flags=Texture.none | Sampler.none}, ext: `C++, "bgfx"`}, - + /** * Sets a debug marker. This allows you to group graphics calls together for easy browsing in * graphics debugging tools. @@ -3110,7 +3110,7 @@ mixin(joinFnBinds((){ that _name is zero terminated string. */ {q{void}, q{setMarker}, q{const(char)* name, int len=int.max}, ext: `C++, "bgfx"`}, - + /** * Set render states for draw primitive. * Remarks: @@ -3137,7 +3137,7 @@ mixin(joinFnBinds((){ `BGFX_STATE_BLEND_INV_FACTOR` blend modes. */ {q{void}, q{setState}, q{c_uint64 state, uint rgba=0}, ext: `C++, "bgfx"`}, - + /** * Set condition for rendering. Params: @@ -3145,7 +3145,7 @@ mixin(joinFnBinds((){ visible = Render if occlusion query is visible. */ {q{void}, q{setCondition}, q{OcclusionQueryHandle handle, bool visible}, ext: `C++, "bgfx"`}, - + /** * Set stencil test state. Params: @@ -3154,7 +3154,7 @@ mixin(joinFnBinds((){ _fstencil is applied to both front and back facing primitives. */ {q{void}, q{setStencil}, q{uint fStencil, uint bStencil=Stencil.none}, ext: `C++, "bgfx"`}, - + /** * Set scissor for draw primitive. * Remarks: @@ -3166,7 +3166,7 @@ mixin(joinFnBinds((){ height = Height of view scissor region. */ {q{ushort}, q{setScissor}, q{ushort x, ushort y, ushort width, ushort height}, ext: `C++, "bgfx"`}, - + /** * Set scissor from cache for draw primitive. * Remarks: @@ -3175,7 +3175,7 @@ mixin(joinFnBinds((){ cache = Index in scissor cache. */ {q{void}, q{setScissor}, q{ushort cache=ushort.max}, ext: `C++, "bgfx"`}, - + /** * Set model matrix for draw primitive. If it is not called, * the model will be rendered with an identity model matrix. @@ -3184,7 +3184,7 @@ mixin(joinFnBinds((){ num = Number of matrices in array. */ {q{uint}, q{setTransform}, q{const(void)* mtx, ushort num=1}, ext: `C++, "bgfx"`}, - + /** * Set model matrix from matrix cache for draw primitive. Params: @@ -3192,7 +3192,7 @@ mixin(joinFnBinds((){ num = Number of matrices from cache. */ {q{void}, q{setTransform}, q{uint cache, ushort num=1}, ext: `C++, "bgfx"`}, - + /** * Reserve matrices in internal matrix cache. * Attention: Pointer returned can be modified until `bgfx::frame` is called. @@ -3201,7 +3201,7 @@ mixin(joinFnBinds((){ num = Number of matrices. */ {q{uint}, q{allocTransform}, q{Transform* transform, ushort num}, ext: `C++, "bgfx"`}, - + /** * Set shader uniform parameter for draw primitive. Params: @@ -3211,14 +3211,14 @@ mixin(joinFnBinds((){ use the _num passed on uniform creation. */ {q{void}, q{setUniform}, q{UniformHandle handle, const(void)* value, ushort num=1}, ext: `C++, "bgfx"`}, - + /** * Set index buffer for draw primitive. Params: handle = Index buffer. */ {q{void}, q{setIndexBuffer}, q{IndexBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Set index buffer for draw primitive. Params: @@ -3227,14 +3227,14 @@ mixin(joinFnBinds((){ numIndices = Number of indices to render. */ {q{void}, q{setIndexBuffer}, q{IndexBufferHandle handle, uint firstIndex, uint numIndices}, ext: `C++, "bgfx"`}, - + /** * Set index buffer for draw primitive. Params: handle = Dynamic index buffer. */ {q{void}, q{setIndexBuffer}, q{DynamicIndexBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Set index buffer for draw primitive. Params: @@ -3243,14 +3243,14 @@ mixin(joinFnBinds((){ numIndices = Number of indices to render. */ {q{void}, q{setIndexBuffer}, q{DynamicIndexBufferHandle handle, uint firstIndex, uint numIndices}, ext: `C++, "bgfx"`}, - + /** * Set index buffer for draw primitive. Params: tib = Transient index buffer. */ {q{void}, q{setIndexBuffer}, q{const(TransientIndexBuffer)* tib}, ext: `C++, "bgfx"`}, - + /** * Set index buffer for draw primitive. Params: @@ -3259,7 +3259,7 @@ mixin(joinFnBinds((){ numIndices = Number of indices to render. */ {q{void}, q{setIndexBuffer}, q{const(TransientIndexBuffer)* tib, uint firstIndex, uint numIndices}, ext: `C++, "bgfx"`}, - + /** * Set vertex buffer for draw primitive. Params: @@ -3267,7 +3267,7 @@ mixin(joinFnBinds((){ handle = Vertex buffer. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, VertexBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Set vertex buffer for draw primitive. Params: @@ -3280,7 +3280,7 @@ mixin(joinFnBinds((){ of vertex buffer will be used. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, VertexBufferHandle handle, uint startVertex, uint numVertices, VertexLayoutHandle layoutHandle=invalidHandle!VertexLayoutHandle}, ext: `C++, "bgfx"`}, - + /** * Set vertex buffer for draw primitive. Params: @@ -3288,7 +3288,7 @@ mixin(joinFnBinds((){ handle = Dynamic vertex buffer. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, DynamicVertexBufferHandle handle}, ext: `C++, "bgfx"`}, - + /** * Set vertex buffer for draw primitive. Params: @@ -3301,7 +3301,7 @@ mixin(joinFnBinds((){ of vertex buffer will be used. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, DynamicVertexBufferHandle handle, uint startVertex, uint numVertices, VertexLayoutHandle layoutHandle=invalidHandle!VertexLayoutHandle}, ext: `C++, "bgfx"`}, - + /** * Set vertex buffer for draw primitive. Params: @@ -3309,7 +3309,7 @@ mixin(joinFnBinds((){ tvb = Transient vertex buffer. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, const(TransientVertexBuffer)* tvb}, ext: `C++, "bgfx"`}, - + /** * Set vertex buffer for draw primitive. Params: @@ -3322,7 +3322,7 @@ mixin(joinFnBinds((){ of vertex buffer will be used. */ {q{void}, q{setVertexBuffer}, q{ubyte stream, const(TransientVertexBuffer)* tvb, uint startVertex, uint numVertices, VertexLayoutHandle layoutHandle=invalidHandle!VertexLayoutHandle}, ext: `C++, "bgfx"`}, - + /** * Set number of vertices for auto generated vertices use in conjunction * with gl_VertexID. @@ -3331,14 +3331,14 @@ mixin(joinFnBinds((){ numVertices = Number of vertices. */ {q{void}, q{setVertexCount}, q{uint numVertices}, ext: `C++, "bgfx"`}, - + /** * Set instance data buffer for draw primitive. Params: idb = Transient instance data buffer. */ {q{void}, q{setInstanceDataBuffer}, q{const(InstanceDataBuffer)* idb}, ext: `C++, "bgfx"`}, - + /** * Set instance data buffer for draw primitive. Params: @@ -3347,7 +3347,7 @@ mixin(joinFnBinds((){ num = Number of data instances. */ {q{void}, q{setInstanceDataBuffer}, q{const(InstanceDataBuffer)* idb, uint start, uint num}, ext: `C++, "bgfx"`}, - + /** * Set instance data buffer for draw primitive. Params: @@ -3356,7 +3356,7 @@ mixin(joinFnBinds((){ num = Number of data instances. */ {q{void}, q{setInstanceDataBuffer}, q{VertexBufferHandle handle, uint startVertex, uint num}, ext: `C++, "bgfx"`}, - + /** * Set instance data buffer for draw primitive. Params: @@ -3365,14 +3365,14 @@ mixin(joinFnBinds((){ num = Number of data instances. */ {q{void}, q{setInstanceDataBuffer}, q{DynamicVertexBufferHandle handle, uint startVertex, uint num}, ext: `C++, "bgfx"`}, - + /** * Set number of instances for auto generated instances use in conjunction * with gl_InstanceID. * Attention: Availability depends on: `BGFX_CAPS_VERTEX_ID`. */ {q{void}, q{setInstanceCount}, q{uint numInstances}, ext: `C++, "bgfx"`}, - + /** * Set texture stage for draw primitive. Params: @@ -3387,7 +3387,7 @@ mixin(joinFnBinds((){ sampling. */ {q{void}, q{setTexture}, q{ubyte stage, UniformHandle sampler, TextureHandle handle, uint flags=uint.max}, ext: `C++, "bgfx"`}, - + /** * Submit an empty primitive for rendering. Uniforms and draw state * will be applied but no geometry will be submitted. @@ -3397,7 +3397,7 @@ mixin(joinFnBinds((){ id = View id. */ {q{void}, q{touch}, q{ViewID id}, ext: `C++, "bgfx"`}, - + /** * Submit primitive for rendering. Params: @@ -3407,7 +3407,7 @@ mixin(joinFnBinds((){ flags = Which states to discard for next draw. See `BGFX_DISCARD_*`. */ {q{void}, q{submit}, q{ViewID id, ProgramHandle program, uint depth=0, ubyte flags=Discard.all}, ext: `C++, "bgfx"`}, - + /** * Submit primitive with occlusion query for rendering. Params: @@ -3418,7 +3418,7 @@ mixin(joinFnBinds((){ flags = Which states to discard for next draw. See `BGFX_DISCARD_*`. */ {q{void}, q{submit}, q{ViewID id, ProgramHandle program, OcclusionQueryHandle occlusionQuery, uint depth=0, ubyte flags=Discard.all}, ext: `C++, "bgfx"`}, - + /** * Submit primitive for rendering with index and instance data info from * indirect buffer. @@ -3433,7 +3433,7 @@ mixin(joinFnBinds((){ flags = Which states to discard for next draw. See `BGFX_DISCARD_*`. */ {q{void}, q{submit}, q{ViewID id, ProgramHandle program, IndirectBufferHandle indirectHandle, uint start=0, uint num=1, uint depth=0, ubyte flags=Discard.all}, ext: `C++, "bgfx"`}, - + /** * Submit primitive for rendering with index and instance data info and * draw count from indirect buffers. @@ -3451,7 +3451,7 @@ mixin(joinFnBinds((){ flags = Which states to discard for next draw. See `BGFX_DISCARD_*`. */ {q{void}, q{submit}, q{ViewID id, ProgramHandle program, IndirectBufferHandle indirectHandle, uint start, IndexBufferHandle numHandle, uint numIndex=0, uint numMax=uint.max, uint depth=0, ubyte flags=Discard.all}, ext: `C++, "bgfx"`}, - + /** * Set compute index buffer. Params: @@ -3460,7 +3460,7 @@ mixin(joinFnBinds((){ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, IndexBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++, "bgfx"`}, - + /** * Set compute vertex buffer. Params: @@ -3469,7 +3469,7 @@ mixin(joinFnBinds((){ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, VertexBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++, "bgfx"`}, - + /** * Set compute dynamic index buffer. Params: @@ -3478,7 +3478,7 @@ mixin(joinFnBinds((){ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, DynamicIndexBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++, "bgfx"`}, - + /** * Set compute dynamic vertex buffer. Params: @@ -3487,7 +3487,7 @@ mixin(joinFnBinds((){ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, DynamicVertexBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++, "bgfx"`}, - + /** * Set compute indirect buffer. Params: @@ -3496,7 +3496,7 @@ mixin(joinFnBinds((){ access = Buffer access. See `Access::Enum`. */ {q{void}, q{setBuffer}, q{ubyte stage, IndirectBufferHandle handle, bgfx.fakeenum.Access.Enum access}, ext: `C++, "bgfx"`}, - + /** * Set compute image from texture. Params: @@ -3507,7 +3507,7 @@ mixin(joinFnBinds((){ format = Texture format. See: `TextureFormat::Enum`. */ {q{void}, q{setImage}, q{ubyte stage, TextureHandle handle, ubyte mip, bgfx.fakeenum.Access.Enum access, bgfx.fakeenum.TextureFormat.Enum format=TextureFormat.count}, ext: `C++, "bgfx"`}, - + /** * Dispatch compute. Params: @@ -3519,7 +3519,7 @@ mixin(joinFnBinds((){ flags = Discard or preserve states. See `BGFX_DISCARD_*`. */ {q{void}, q{dispatch}, q{ViewID id, ProgramHandle program, uint numX=1, uint numY=1, uint numZ=1, ubyte flags=Discard.all}, ext: `C++, "bgfx"`}, - + /** * Dispatch compute indirect. Params: @@ -3531,14 +3531,14 @@ mixin(joinFnBinds((){ flags = Discard or preserve states. See `BGFX_DISCARD_*`. */ {q{void}, q{dispatch}, q{ViewID id, ProgramHandle program, IndirectBufferHandle indirectHandle, uint start=0, uint num=1, ubyte flags=Discard.all}, ext: `C++, "bgfx"`}, - + /** * Discard previously set state for draw or compute call. Params: flags = Draw/compute states to discard. */ {q{void}, q{discard}, q{ubyte flags=Discard.all}, ext: `C++, "bgfx"`}, - + /** * Blit 2D texture region between two 2D textures. * Attention: Destination texture must be created with `BGFX_TEXTURE_BLIT_DST` flag. @@ -3555,7 +3555,7 @@ mixin(joinFnBinds((){ height = Height of region. */ {q{void}, q{blit}, q{ViewID id, TextureHandle dst, ushort dstX, ushort dstY, TextureHandle src, ushort srcX=0, ushort srcY=0, ushort width=ushort.max, ushort height=ushort.max}, ext: `C++, "bgfx"`}, - + /** * Blit 2D texture region between two 2D textures. * Attention: Destination texture must be created with `BGFX_TEXTURE_BLIT_DST` flag. @@ -3582,7 +3582,7 @@ mixin(joinFnBinds((){ unused. */ {q{void}, q{blit}, q{ViewID id, TextureHandle dst, ubyte dstMIP, ushort dstX, ushort dstY, ushort dstZ, TextureHandle src, ubyte srcMIP=0, ushort srcX=0, ushort srcY=0, ushort srcZ=0, ushort width=ushort.max, ushort height=ushort.max, ushort depth=ushort.max}, ext: `C++, "bgfx"`}, - + ]; return ret; }(), "Resolution, Limits, Init, Attachment, VertexLayout, Encoder, ")); diff --git a/bindings/zig/bgfx.zig b/bindings/zig/bgfx.zig index fc9030baba..8f721f160e 100644 --- a/bindings/zig/bgfx.zig +++ b/bindings/zig/bgfx.zig @@ -3720,3 +3720,5 @@ pub inline fn blit(_id: ViewId, _dst: TextureHandle, _dstMip: u8, _dstX: u16, _d return bgfx_blit(_id, _dst, _dstMip, _dstX, _dstY, _dstZ, _src, _srcMip, _srcX, _srcY, _srcZ, _width, _height, _depth); } extern fn bgfx_blit(_id: ViewId, _dst: TextureHandle, _dstMip: u8, _dstX: u16, _dstY: u16, _dstZ: u16, _src: TextureHandle, _srcMip: u8, _srcX: u16, _srcY: u16, _srcZ: u16, _width: u16, _height: u16, _depth: u16) void; + + diff --git a/include/bgfx/c99/bgfx.h b/include/bgfx/c99/bgfx.h index 3c231800ca..8c6a13fa93 100644 --- a/include/bgfx/c99/bgfx.h +++ b/include/bgfx/c99/bgfx.h @@ -550,7 +550,7 @@ typedef struct bgfx_caps_limits_s typedef struct bgfx_caps_s { bgfx_renderer_type_t rendererType; /** Renderer backend type. See: `bgfx::RendererType` */ - + /** * Supported functionality. * @attention See `BGFX_CAPS_*` flags at https://bkaradzic.github.io/bgfx/bgfx.html#available-caps @@ -563,7 +563,7 @@ typedef struct bgfx_caps_s uint8_t numGPUs; /** Number of enumerated GPUs. */ bgfx_caps_gpu_t gpu[4]; /** Enumerated GPUs. */ bgfx_caps_limits_t limits; /** Renderer runtime limits. */ - + /** * Supported texture format capabilities flags: * - `BGFX_CAPS_FORMAT_TEXTURE_NONE` - Texture format is not supported. @@ -611,25 +611,25 @@ typedef struct bgfx_internal_data_s typedef struct bgfx_platform_data_s { void* ndt; /** Native display type (*nix specific). */ - + /** * Native window handle. If `NULL`, bgfx will create a headless * context/device, provided the rendering API supports it. */ void* nwh; - + /** * GL context, D3D device, or Vulkan device. If `NULL`, bgfx * will create context/device. */ void* context; - + /** * GL back-buffer, or D3D render target view. If `NULL` bgfx will * create back-buffer color surface. */ void* backBuffer; - + /** * Backbuffer depth/stencil. If `NULL`, bgfx will create a back-buffer * depth/stencil surface. @@ -674,14 +674,14 @@ typedef struct bgfx_init_limits_s */ typedef struct bgfx_init_s { - + /** * Select rendering backend. When set to RendererType::Count * a default rendering backend will be selected appropriate to the platform. * See: `bgfx::RendererType` */ bgfx_renderer_type_t type; - + /** * Vendor PCI ID. If set to `BGFX_PCI_ID_NONE`, discrete and integrated * GPUs will be prioritised. @@ -694,7 +694,7 @@ typedef struct bgfx_init_s * - `BGFX_PCI_ID_MICROSOFT` - Microsoft adapter. */ uint16_t vendorId; - + /** * Device ID. If set to 0 it will select first device, or device with * matching ID. @@ -706,13 +706,13 @@ typedef struct bgfx_init_s bgfx_platform_data_t platformData; /** Platform data. */ bgfx_resolution_t resolution; /** Backbuffer resolution and reset parameters. See: `bgfx::Resolution`. */ bgfx_init_limits_t limits; /** Configurable runtime limits parameters. */ - + /** * Provide application specific callback interface. * See: `bgfx::CallbackI` */ bgfx_callback_interface_t* callback; - + /** * Custom allocator. When a custom allocator is not * specified, bgfx uses the CRT allocator. Bgfx assumes