mirror of
https://github.com/Ed94/Odin.git
synced 2026-06-18 20:02:22 -07:00
Add more indirect command structs to the procedure calls
This commit is contained in:
Vendored
+22
-16
@@ -886,13 +886,28 @@ load_3_3 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
||||
|
||||
|
||||
// VERSION_4_0
|
||||
DrawArraysIndirectCommand :: struct {
|
||||
count: u32,
|
||||
instanceCount: u32,
|
||||
first: u32,
|
||||
baseInstance: u32,
|
||||
}
|
||||
|
||||
DrawElementsIndirectCommand :: struct {
|
||||
count: u32,
|
||||
instanceCount: u32,
|
||||
firstIndex: u32,
|
||||
baseVertex: u32,
|
||||
baseInstance: u32,
|
||||
}
|
||||
|
||||
impl_MinSampleShading: proc "c" (value: f32);
|
||||
impl_BlendEquationi: proc "c" (buf: u32, mode: u32);
|
||||
impl_BlendEquationSeparatei: proc "c" (buf: u32, modeRGB: u32, modeAlpha: u32);
|
||||
impl_BlendFunci: proc "c" (buf: u32, src: u32, dst: u32);
|
||||
impl_BlendFuncSeparatei: proc "c" (buf: u32, srcRGB: u32, dstRGB: u32, srcAlpha: u32, dstAlpha: u32);
|
||||
impl_DrawArraysIndirect: proc "c" (mode: u32, indirect: rawptr);
|
||||
impl_DrawElementsIndirect: proc "c" (mode: u32, type: u32, indirect: rawptr);
|
||||
impl_DrawArraysIndirect: proc "c" (mode: u32, indirect: ^DrawArraysIndirectCommand);
|
||||
impl_DrawElementsIndirect: proc "c" (mode: u32, type: u32, indirect: ^DrawElementsIndirectCommand);
|
||||
impl_Uniform1d: proc "c" (location: i32, x: f64);
|
||||
impl_Uniform2d: proc "c" (location: i32, x: f64, y: f64);
|
||||
impl_Uniform3d: proc "c" (location: i32, x: f64, y: f64, z: f64);
|
||||
@@ -1195,25 +1210,16 @@ load_4_2 :: proc(set_proc_address: Set_Proc_Address_Type) {
|
||||
}
|
||||
|
||||
// VERSION_4_3
|
||||
DrawArraysIndirectCommand :: struct {
|
||||
count: u32,
|
||||
instanceCount: u32,
|
||||
first: u32,
|
||||
baseInstance: u32,
|
||||
}
|
||||
|
||||
DrawElementsIndirectCommand :: struct {
|
||||
count: u32,
|
||||
instanceCount: u32,
|
||||
firstIndex: u32,
|
||||
baseVertex: u32,
|
||||
baseInstance: u32,
|
||||
DispatchIndirectCommand :: struct {
|
||||
num_groups_x: u32,
|
||||
num_groups_y: u32,
|
||||
num_groups_z: u32,
|
||||
}
|
||||
|
||||
impl_ClearBufferData: proc "c" (target: u32, internalformat: u32, format: u32, type: u32, data: rawptr);
|
||||
impl_ClearBufferSubData: proc "c" (target: u32, internalformat: u32, offset: int, size: int, format: u32, type: u32, data: rawptr);
|
||||
impl_DispatchCompute: proc "c" (num_groups_x: u32, num_groups_y: u32, num_groups_z: u32);
|
||||
impl_DispatchComputeIndirect: proc "c" (indirect: int);
|
||||
impl_DispatchComputeIndirect: proc "c" (indirect: ^DispatchIndirectCommand);
|
||||
impl_CopyImageSubData: proc "c" (srcName: u32, srcTarget: u32, srcLevel: i32, srcX: i32, srcY: i32, srcZ: i32, dstName: u32, dstTarget: u32, dstLevel: i32, dstX: i32, dstY: i32, dstZ: i32, srcWidth: i32, srcHeight: i32, srcDepth: i32);
|
||||
impl_FramebufferParameteri: proc "c" (target: u32, pname: u32, param: i32);
|
||||
impl_GetFramebufferParameteriv: proc "c" (target: u32, pname: u32, params: [^]i32);
|
||||
|
||||
Vendored
+6
-6
@@ -406,8 +406,8 @@ when !ODIN_DEBUG {
|
||||
BlendEquationSeparatei :: #force_inline proc "c" (buf: u32, modeRGB: u32, modeAlpha: u32) { impl_BlendEquationSeparatei(buf, modeRGB, modeAlpha); }
|
||||
BlendFunci :: #force_inline proc "c" (buf: u32, src: u32, dst: u32) { impl_BlendFunci(buf, src, dst); }
|
||||
BlendFuncSeparatei :: #force_inline proc "c" (buf: u32, srcRGB: u32, dstRGB: u32, srcAlpha: u32, dstAlpha: u32) { impl_BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); }
|
||||
DrawArraysIndirect :: #force_inline proc "c" (mode: u32, indirect: rawptr) { impl_DrawArraysIndirect(mode, indirect); }
|
||||
DrawElementsIndirect :: #force_inline proc "c" (mode: u32, type: u32, indirect: rawptr) { impl_DrawElementsIndirect(mode, type, indirect); }
|
||||
DrawArraysIndirect :: #force_inline proc "c" (mode: u32, indirect: ^DrawArraysIndirectCommand) { impl_DrawArraysIndirect(mode, indirect); }
|
||||
DrawElementsIndirect :: #force_inline proc "c" (mode: u32, type: u32, indirect: ^DrawElementsIndirectCommand) { impl_DrawElementsIndirect(mode, type, indirect); }
|
||||
Uniform1d :: #force_inline proc "c" (location: i32, x: f64) { impl_Uniform1d(location, x); }
|
||||
Uniform2d :: #force_inline proc "c" (location: i32, x: f64, y: f64) { impl_Uniform2d(location, x, y); }
|
||||
Uniform3d :: #force_inline proc "c" (location: i32, x: f64, y: f64, z: f64) { impl_Uniform3d(location, x, y, z); }
|
||||
@@ -556,7 +556,7 @@ when !ODIN_DEBUG {
|
||||
ClearBufferData :: #force_inline proc "c" (target: u32, internalformat: u32, format: u32, type: u32, data: rawptr) { impl_ClearBufferData(target, internalformat, format, type, data); }
|
||||
ClearBufferSubData :: #force_inline proc "c" (target: u32, internalformat: u32, offset: int, size: int, format: u32, type: u32, data: rawptr) { impl_ClearBufferSubData(target, internalformat, offset, size, format, type, data); }
|
||||
DispatchCompute :: #force_inline proc "c" (num_groups_x: u32, num_groups_y: u32, num_groups_z: u32) { impl_DispatchCompute(num_groups_x, num_groups_y, num_groups_z); }
|
||||
DispatchComputeIndirect :: #force_inline proc "c" (indirect: int) { impl_DispatchComputeIndirect(indirect); }
|
||||
DispatchComputeIndirect :: #force_inline proc "c" (indirect: ^DispatchIndirectCommand) { impl_DispatchComputeIndirect(indirect); }
|
||||
CopyImageSubData :: #force_inline proc "c" (srcName: u32, srcTarget: u32, srcLevel: i32, srcX: i32, srcY: i32, srcZ: i32, dstName: u32, dstTarget: u32, dstLevel: i32, dstX: i32, dstY: i32, dstZ: i32, srcWidth: i32, srcHeight: i32, srcDepth: i32) { impl_CopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); }
|
||||
FramebufferParameteri :: #force_inline proc "c" (target: u32, pname: u32, param: i32) { impl_FramebufferParameteri(target, pname, param); }
|
||||
GetFramebufferParameteriv :: #force_inline proc "c" (target: u32, pname: u32, params: [^]i32) { impl_GetFramebufferParameteriv(target, pname, params); }
|
||||
@@ -1206,8 +1206,8 @@ when !ODIN_DEBUG {
|
||||
BlendEquationSeparatei :: #force_inline proc "c" (buf: u32, modeRGB: u32, modeAlpha: u32, loc := #caller_location) { impl_BlendEquationSeparatei(buf, modeRGB, modeAlpha); debug_helper(loc, 0, buf, modeRGB, modeAlpha); }
|
||||
BlendFunci :: #force_inline proc "c" (buf: u32, src: u32, dst: u32, loc := #caller_location) { impl_BlendFunci(buf, src, dst); debug_helper(loc, 0, buf, src, dst); }
|
||||
BlendFuncSeparatei :: #force_inline proc "c" (buf: u32, srcRGB: u32, dstRGB: u32, srcAlpha: u32, dstAlpha: u32, loc := #caller_location) { impl_BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); debug_helper(loc, 0, buf, srcRGB, dstRGB, srcAlpha, dstAlpha); }
|
||||
DrawArraysIndirect :: #force_inline proc "c" (mode: u32, indirect: rawptr, loc := #caller_location) { impl_DrawArraysIndirect(mode, indirect); debug_helper(loc, 0, mode, indirect); }
|
||||
DrawElementsIndirect :: #force_inline proc "c" (mode: u32, type: u32, indirect: rawptr, loc := #caller_location) { impl_DrawElementsIndirect(mode, type, indirect); debug_helper(loc, 0, mode, type, indirect); }
|
||||
DrawArraysIndirect :: #force_inline proc "c" (mode: u32, indirect: ^DrawArraysIndirectCommand, loc := #caller_location) { impl_DrawArraysIndirect(mode, indirect); debug_helper(loc, 0, mode, indirect); }
|
||||
DrawElementsIndirect :: #force_inline proc "c" (mode: u32, type: u32, indirect: ^DrawElementsIndirectCommand, loc := #caller_location) { impl_DrawElementsIndirect(mode, type, indirect); debug_helper(loc, 0, mode, type, indirect); }
|
||||
Uniform1d :: #force_inline proc "c" (location: i32, x: f64, loc := #caller_location) { impl_Uniform1d(location, x); debug_helper(loc, 0, location, x); }
|
||||
Uniform2d :: #force_inline proc "c" (location: i32, x: f64, y: f64, loc := #caller_location) { impl_Uniform2d(location, x, y); debug_helper(loc, 0, location, x, y); }
|
||||
Uniform3d :: #force_inline proc "c" (location: i32, x: f64, y: f64, z: f64, loc := #caller_location) { impl_Uniform3d(location, x, y, z); debug_helper(loc, 0, location, x, y, z); }
|
||||
@@ -1356,7 +1356,7 @@ when !ODIN_DEBUG {
|
||||
ClearBufferData :: #force_inline proc "c" (target: u32, internalformat: u32, format: u32, type: u32, data: rawptr, loc := #caller_location) { impl_ClearBufferData(target, internalformat, format, type, data); debug_helper(loc, 0, target, internalformat, format, type, data); }
|
||||
ClearBufferSubData :: #force_inline proc "c" (target: u32, internalformat: u32, offset: int, size: int, format: u32, type: u32, data: rawptr, loc := #caller_location) { impl_ClearBufferSubData(target, internalformat, offset, size, format, type, data); debug_helper(loc, 0, target, internalformat, offset, size, format, type, data); }
|
||||
DispatchCompute :: #force_inline proc "c" (num_groups_x: u32, num_groups_y: u32, num_groups_z: u32, loc := #caller_location) { impl_DispatchCompute(num_groups_x, num_groups_y, num_groups_z); debug_helper(loc, 0, num_groups_x, num_groups_y, num_groups_z); }
|
||||
DispatchComputeIndirect :: #force_inline proc "c" (indirect: int, loc := #caller_location) { impl_DispatchComputeIndirect(indirect); debug_helper(loc, 0, indirect); }
|
||||
DispatchComputeIndirect :: #force_inline proc "c" (indirect: ^DispatchIndirectCommand, loc := #caller_location) { impl_DispatchComputeIndirect(indirect); debug_helper(loc, 0, indirect); }
|
||||
CopyImageSubData :: #force_inline proc "c" (srcName: u32, srcTarget: u32, srcLevel: i32, srcX: i32, srcY: i32, srcZ: i32, dstName: u32, dstTarget: u32, dstLevel: i32, dstX: i32, dstY: i32, dstZ: i32, srcWidth: i32, srcHeight: i32, srcDepth: i32, loc := #caller_location) { impl_CopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); debug_helper(loc, 0, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); }
|
||||
FramebufferParameteri :: #force_inline proc "c" (target: u32, pname: u32, param: i32, loc := #caller_location) { impl_FramebufferParameteri(target, pname, param); debug_helper(loc, 0, target, pname, param); }
|
||||
GetFramebufferParameteriv :: #force_inline proc "c" (target: u32, pname: u32, params: [^]i32, loc := #caller_location) { impl_GetFramebufferParameteriv(target, pname, params); debug_helper(loc, 0, target, pname, params); }
|
||||
|
||||
Reference in New Issue
Block a user