mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-06 15:48:51 +00:00
Merge branch 'master' of https://github.com/odin-lang/Odin
This commit is contained in:
Vendored
+2
-2
@@ -1051,8 +1051,8 @@ foreign lib {
|
|||||||
LoadShader :: proc(vsFileName, fsFileName: cstring) -> Shader --- // Load shader from files and bind default locations
|
LoadShader :: proc(vsFileName, fsFileName: cstring) -> Shader --- // Load shader from files and bind default locations
|
||||||
LoadShaderFromMemory :: proc(vsCode, fsCode: cstring) -> Shader --- // Load shader from code strings and bind default locations
|
LoadShaderFromMemory :: proc(vsCode, fsCode: cstring) -> Shader --- // Load shader from code strings and bind default locations
|
||||||
IsShaderReady :: proc(shader: Shader) -> bool --- // Check if a shader is ready
|
IsShaderReady :: proc(shader: Shader) -> bool --- // Check if a shader is ready
|
||||||
GetShaderLocation :: proc(shader: Shader, uniformName: cstring) -> c.int --- // Get shader uniform location
|
GetShaderLocation :: proc(shader: Shader, uniformName: cstring) -> ShaderLocationIndex --- // Get shader uniform location
|
||||||
GetShaderLocationAttrib :: proc(shader: Shader, attribName: cstring) -> c.int --- // Get shader attribute location
|
GetShaderLocationAttrib :: proc(shader: Shader, attribName: cstring) -> ShaderLocationIndex --- // Get shader attribute location
|
||||||
SetShaderValue :: proc(shader: Shader, locIndex: ShaderLocationIndex, value: rawptr, uniformType: ShaderUniformDataType) --- // Set shader uniform value
|
SetShaderValue :: proc(shader: Shader, locIndex: ShaderLocationIndex, value: rawptr, uniformType: ShaderUniformDataType) --- // Set shader uniform value
|
||||||
SetShaderValueV :: proc(shader: Shader, locIndex: ShaderLocationIndex, value: rawptr, uniformType: ShaderUniformDataType, count: c.int) --- // Set shader uniform value vector
|
SetShaderValueV :: proc(shader: Shader, locIndex: ShaderLocationIndex, value: rawptr, uniformType: ShaderUniformDataType, count: c.int) --- // Set shader uniform value vector
|
||||||
SetShaderValueMatrix :: proc(shader: Shader, locIndex: ShaderLocationIndex, mat: Matrix) --- // Set shader uniform value (matrix 4x4)
|
SetShaderValueMatrix :: proc(shader: Shader, locIndex: ShaderLocationIndex, mat: Matrix) --- // Set shader uniform value (matrix 4x4)
|
||||||
|
|||||||
Vendored
+7
-6
@@ -2,6 +2,7 @@ package webgl
|
|||||||
|
|
||||||
foreign import "webgl2"
|
foreign import "webgl2"
|
||||||
|
|
||||||
|
import "base:intrinsics"
|
||||||
import glm "core:math/linalg/glsl"
|
import glm "core:math/linalg/glsl"
|
||||||
|
|
||||||
Query :: distinct u32
|
Query :: distinct u32
|
||||||
@@ -135,42 +136,42 @@ UniformMatrix3x2fv :: proc "contextless" (location: i32, m: glm.mat3x2) {
|
|||||||
foreign webgl2 {
|
foreign webgl2 {
|
||||||
_UniformMatrix3x2fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
_UniformMatrix3x2fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
||||||
}
|
}
|
||||||
array := matrix_flatten(m)
|
array := intrinsics.matrix_flatten(m)
|
||||||
_UniformMatrix3x2fv(location, &array[0])
|
_UniformMatrix3x2fv(location, &array[0])
|
||||||
}
|
}
|
||||||
UniformMatrix4x2fv :: proc "contextless" (location: i32, m: glm.mat4x2) {
|
UniformMatrix4x2fv :: proc "contextless" (location: i32, m: glm.mat4x2) {
|
||||||
foreign webgl2 {
|
foreign webgl2 {
|
||||||
_UniformMatrix4x2fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
_UniformMatrix4x2fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
||||||
}
|
}
|
||||||
array := matrix_flatten(m)
|
array := intrinsics.matrix_flatten(m)
|
||||||
_UniformMatrix4x2fv(location, &array[0])
|
_UniformMatrix4x2fv(location, &array[0])
|
||||||
}
|
}
|
||||||
UniformMatrix2x3fv :: proc "contextless" (location: i32, m: glm.mat2x3) {
|
UniformMatrix2x3fv :: proc "contextless" (location: i32, m: glm.mat2x3) {
|
||||||
foreign webgl2 {
|
foreign webgl2 {
|
||||||
_UniformMatrix2x3fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
_UniformMatrix2x3fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
||||||
}
|
}
|
||||||
array := matrix_flatten(m)
|
array := intrinsics.matrix_flatten(m)
|
||||||
_UniformMatrix2x3fv(location, &array[0])
|
_UniformMatrix2x3fv(location, &array[0])
|
||||||
}
|
}
|
||||||
UniformMatrix4x3fv :: proc "contextless" (location: i32, m: glm.mat4x3) {
|
UniformMatrix4x3fv :: proc "contextless" (location: i32, m: glm.mat4x3) {
|
||||||
foreign webgl2 {
|
foreign webgl2 {
|
||||||
_UniformMatrix4x3fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
_UniformMatrix4x3fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
||||||
}
|
}
|
||||||
array := matrix_flatten(m)
|
array := intrinsics.matrix_flatten(m)
|
||||||
_UniformMatrix4x3fv(location, &array[0])
|
_UniformMatrix4x3fv(location, &array[0])
|
||||||
}
|
}
|
||||||
UniformMatrix2x4fv :: proc "contextless" (location: i32, m: glm.mat2x4) {
|
UniformMatrix2x4fv :: proc "contextless" (location: i32, m: glm.mat2x4) {
|
||||||
foreign webgl2 {
|
foreign webgl2 {
|
||||||
_UniformMatrix2x4fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
_UniformMatrix2x4fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
||||||
}
|
}
|
||||||
array := matrix_flatten(m)
|
array := intrinsics.matrix_flatten(m)
|
||||||
_UniformMatrix2x4fv(location, &array[0])
|
_UniformMatrix2x4fv(location, &array[0])
|
||||||
}
|
}
|
||||||
UniformMatrix3x4fv :: proc "contextless" (location: i32, m: glm.mat3x4) {
|
UniformMatrix3x4fv :: proc "contextless" (location: i32, m: glm.mat3x4) {
|
||||||
foreign webgl2 {
|
foreign webgl2 {
|
||||||
_UniformMatrix3x4fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
_UniformMatrix3x4fv :: proc "contextless" (location: i32, addr: [^]f32) ---
|
||||||
}
|
}
|
||||||
array := matrix_flatten(m)
|
array := intrinsics.matrix_flatten(m)
|
||||||
_UniformMatrix3x4fv(location, &array[0])
|
_UniformMatrix3x4fv(location, &array[0])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user