mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-04 14:48:47 +00:00
Remove distinct from core:math/linalg/(glsl|hlsl) types
This commit is contained in:
@@ -22,9 +22,9 @@ F32_EPSILON :: 1e-7
|
|||||||
F64_EPSILON :: 1e-15
|
F64_EPSILON :: 1e-15
|
||||||
|
|
||||||
// Odin matrices are stored internally as Column-Major, which matches OpenGL/GLSL by default
|
// Odin matrices are stored internally as Column-Major, which matches OpenGL/GLSL by default
|
||||||
mat2 :: distinct matrix[2, 2]f32
|
mat2 :: matrix[2, 2]f32
|
||||||
mat3 :: distinct matrix[3, 3]f32
|
mat3 :: matrix[3, 3]f32
|
||||||
mat4 :: distinct matrix[4, 4]f32
|
mat4 :: matrix[4, 4]f32
|
||||||
mat2x2 :: mat2
|
mat2x2 :: mat2
|
||||||
mat3x3 :: mat3
|
mat3x3 :: mat3
|
||||||
mat4x4 :: mat4
|
mat4x4 :: mat4
|
||||||
@@ -33,52 +33,52 @@ mat4x4 :: mat4
|
|||||||
// but they match how GLSL and OpenGL defines them in name
|
// but they match how GLSL and OpenGL defines them in name
|
||||||
// Odin: matrix[R, C]f32
|
// Odin: matrix[R, C]f32
|
||||||
// GLSL: matCxR
|
// GLSL: matCxR
|
||||||
mat3x2 :: distinct matrix[2, 3]f32
|
mat3x2 :: matrix[2, 3]f32
|
||||||
mat4x2 :: distinct matrix[2, 4]f32
|
mat4x2 :: matrix[2, 4]f32
|
||||||
mat2x3 :: distinct matrix[3, 2]f32
|
mat2x3 :: matrix[3, 2]f32
|
||||||
mat4x3 :: distinct matrix[3, 4]f32
|
mat4x3 :: matrix[3, 4]f32
|
||||||
mat2x4 :: distinct matrix[4, 2]f32
|
mat2x4 :: matrix[4, 2]f32
|
||||||
mat3x4 :: distinct matrix[4, 3]f32
|
mat3x4 :: matrix[4, 3]f32
|
||||||
|
|
||||||
vec2 :: distinct [2]f32
|
vec2 :: [2]f32
|
||||||
vec3 :: distinct [3]f32
|
vec3 :: [3]f32
|
||||||
vec4 :: distinct [4]f32
|
vec4 :: [4]f32
|
||||||
|
|
||||||
ivec2 :: distinct [2]i32
|
ivec2 :: [2]i32
|
||||||
ivec3 :: distinct [3]i32
|
ivec3 :: [3]i32
|
||||||
ivec4 :: distinct [4]i32
|
ivec4 :: [4]i32
|
||||||
|
|
||||||
uvec2 :: distinct [2]u32
|
uvec2 :: [2]u32
|
||||||
uvec3 :: distinct [3]u32
|
uvec3 :: [3]u32
|
||||||
uvec4 :: distinct [4]u32
|
uvec4 :: [4]u32
|
||||||
|
|
||||||
bvec2 :: distinct [2]bool
|
bvec2 :: [2]bool
|
||||||
bvec3 :: distinct [3]bool
|
bvec3 :: [3]bool
|
||||||
bvec4 :: distinct [4]bool
|
bvec4 :: [4]bool
|
||||||
|
|
||||||
quat :: distinct quaternion128
|
quat :: quaternion128
|
||||||
|
|
||||||
// Double Precision (f64) Floating Point Types
|
// Double Precision (f64) Floating Point Types
|
||||||
|
|
||||||
dmat2 :: distinct matrix[2, 2]f64
|
dmat2 :: matrix[2, 2]f64
|
||||||
dmat3 :: distinct matrix[3, 3]f64
|
dmat3 :: matrix[3, 3]f64
|
||||||
dmat4 :: distinct matrix[4, 4]f64
|
dmat4 :: matrix[4, 4]f64
|
||||||
dmat2x2 :: dmat2
|
dmat2x2 :: dmat2
|
||||||
dmat3x3 :: dmat3
|
dmat3x3 :: dmat3
|
||||||
dmat4x4 :: dmat4
|
dmat4x4 :: dmat4
|
||||||
|
|
||||||
dmat3x2 :: distinct matrix[2, 3]f64
|
dmat3x2 :: matrix[2, 3]f64
|
||||||
dmat4x2 :: distinct matrix[2, 4]f64
|
dmat4x2 :: matrix[2, 4]f64
|
||||||
dmat2x3 :: distinct matrix[3, 2]f64
|
dmat2x3 :: matrix[3, 2]f64
|
||||||
dmat4x3 :: distinct matrix[3, 4]f64
|
dmat4x3 :: matrix[3, 4]f64
|
||||||
dmat2x4 :: distinct matrix[4, 2]f64
|
dmat2x4 :: matrix[4, 2]f64
|
||||||
dmat3x4 :: distinct matrix[4, 3]f64
|
dmat3x4 :: matrix[4, 3]f64
|
||||||
|
|
||||||
dvec2 :: distinct [2]f64
|
dvec2 :: [2]f64
|
||||||
dvec3 :: distinct [3]f64
|
dvec3 :: [3]f64
|
||||||
dvec4 :: distinct [4]f64
|
dvec4 :: [4]f64
|
||||||
|
|
||||||
dquat :: distinct quaternion256
|
dquat :: quaternion256
|
||||||
|
|
||||||
cos :: proc{
|
cos :: proc{
|
||||||
cos_f32,
|
cos_f32,
|
||||||
|
|||||||
@@ -21,89 +21,89 @@ LN10 :: 2.30258509299404568401799145468436421
|
|||||||
FLOAT_EPSILON :: 1e-7
|
FLOAT_EPSILON :: 1e-7
|
||||||
DOUBLE_EPSILON :: 1e-15
|
DOUBLE_EPSILON :: 1e-15
|
||||||
|
|
||||||
// Aliases (not distinct) of types
|
// Aliases (not distict) of types
|
||||||
float :: f32
|
float :: f32
|
||||||
double :: f64
|
double :: f64
|
||||||
int :: builtin.i32
|
int :: builtin.i32
|
||||||
uint :: builtin.u32
|
uint :: builtin.u32
|
||||||
|
|
||||||
// Odin matrices are stored internally as Column-Major, which matches the internal layout of HLSL by default
|
// Odin matrices are stored internally as Column-Major, which matches the internal layout of HLSL by default
|
||||||
float1x1 :: distinct matrix[1, 1]float
|
float1x1 :: matrix[1, 1]float
|
||||||
float2x2 :: distinct matrix[2, 2]float
|
float2x2 :: matrix[2, 2]float
|
||||||
float3x3 :: distinct matrix[3, 3]float
|
float3x3 :: matrix[3, 3]float
|
||||||
float4x4 :: distinct matrix[4, 4]float
|
float4x4 :: matrix[4, 4]float
|
||||||
|
|
||||||
float1x2 :: distinct matrix[1, 2]float
|
float1x2 :: matrix[1, 2]float
|
||||||
float1x3 :: distinct matrix[1, 3]float
|
float1x3 :: matrix[1, 3]float
|
||||||
float1x4 :: distinct matrix[1, 4]float
|
float1x4 :: matrix[1, 4]float
|
||||||
float2x1 :: distinct matrix[2, 1]float
|
float2x1 :: matrix[2, 1]float
|
||||||
float2x3 :: distinct matrix[2, 3]float
|
float2x3 :: matrix[2, 3]float
|
||||||
float2x4 :: distinct matrix[2, 4]float
|
float2x4 :: matrix[2, 4]float
|
||||||
float3x1 :: distinct matrix[3, 1]float
|
float3x1 :: matrix[3, 1]float
|
||||||
float3x2 :: distinct matrix[3, 2]float
|
float3x2 :: matrix[3, 2]float
|
||||||
float3x4 :: distinct matrix[3, 4]float
|
float3x4 :: matrix[3, 4]float
|
||||||
float4x1 :: distinct matrix[4, 1]float
|
float4x1 :: matrix[4, 1]float
|
||||||
float4x2 :: distinct matrix[4, 2]float
|
float4x2 :: matrix[4, 2]float
|
||||||
float4x3 :: distinct matrix[4, 3]float
|
float4x3 :: matrix[4, 3]float
|
||||||
|
|
||||||
float2 :: distinct [2]float
|
float2 :: [2]float
|
||||||
float3 :: distinct [3]float
|
float3 :: [3]float
|
||||||
float4 :: distinct [4]float
|
float4 :: [4]float
|
||||||
|
|
||||||
int2 :: distinct [2]int
|
int2 :: [2]int
|
||||||
int3 :: distinct [3]int
|
int3 :: [3]int
|
||||||
int4 :: distinct [4]int
|
int4 :: [4]int
|
||||||
|
|
||||||
uint2 :: distinct [2]uint
|
uint2 :: [2]uint
|
||||||
uint3 :: distinct [3]uint
|
uint3 :: [3]uint
|
||||||
uint4 :: distinct [4]uint
|
uint4 :: [4]uint
|
||||||
|
|
||||||
bool2 :: distinct [2]bool
|
bool2 :: [2]bool
|
||||||
bool3 :: distinct [3]bool
|
bool3 :: [3]bool
|
||||||
bool4 :: distinct [4]bool
|
bool4 :: [4]bool
|
||||||
|
|
||||||
// Double Precision (double) Floating Point Types
|
// Double Precision (double) Floating Point Types
|
||||||
|
|
||||||
double1x1 :: distinct matrix[1, 1]double
|
double1x1 :: matrix[1, 1]double
|
||||||
double2x2 :: distinct matrix[2, 2]double
|
double2x2 :: matrix[2, 2]double
|
||||||
double3x3 :: distinct matrix[3, 3]double
|
double3x3 :: matrix[3, 3]double
|
||||||
double4x4 :: distinct matrix[4, 4]double
|
double4x4 :: matrix[4, 4]double
|
||||||
|
|
||||||
double1x2 :: distinct matrix[1, 2]double
|
double1x2 :: matrix[1, 2]double
|
||||||
double1x3 :: distinct matrix[1, 3]double
|
double1x3 :: matrix[1, 3]double
|
||||||
double1x4 :: distinct matrix[1, 4]double
|
double1x4 :: matrix[1, 4]double
|
||||||
double2x1 :: distinct matrix[2, 1]double
|
double2x1 :: matrix[2, 1]double
|
||||||
double2x3 :: distinct matrix[2, 3]double
|
double2x3 :: matrix[2, 3]double
|
||||||
double2x4 :: distinct matrix[2, 4]double
|
double2x4 :: matrix[2, 4]double
|
||||||
double3x1 :: distinct matrix[3, 1]double
|
double3x1 :: matrix[3, 1]double
|
||||||
double3x2 :: distinct matrix[3, 2]double
|
double3x2 :: matrix[3, 2]double
|
||||||
double3x4 :: distinct matrix[3, 4]double
|
double3x4 :: matrix[3, 4]double
|
||||||
double4x1 :: distinct matrix[4, 1]double
|
double4x1 :: matrix[4, 1]double
|
||||||
double4x2 :: distinct matrix[4, 2]double
|
double4x2 :: matrix[4, 2]double
|
||||||
double4x3 :: distinct matrix[4, 3]double
|
double4x3 :: matrix[4, 3]double
|
||||||
|
|
||||||
double2 :: distinct [2]double
|
double2 :: [2]double
|
||||||
double3 :: distinct [3]double
|
double3 :: [3]double
|
||||||
double4 :: distinct [4]double
|
double4 :: [4]double
|
||||||
|
|
||||||
|
|
||||||
int1x1 :: distinct matrix[1, 1]int
|
int1x1 :: matrix[1, 1]int
|
||||||
int2x2 :: distinct matrix[2, 2]int
|
int2x2 :: matrix[2, 2]int
|
||||||
int3x3 :: distinct matrix[3, 3]int
|
int3x3 :: matrix[3, 3]int
|
||||||
int4x4 :: distinct matrix[4, 4]int
|
int4x4 :: matrix[4, 4]int
|
||||||
|
|
||||||
int1x2 :: distinct matrix[1, 2]int
|
int1x2 :: matrix[1, 2]int
|
||||||
int1x3 :: distinct matrix[1, 3]int
|
int1x3 :: matrix[1, 3]int
|
||||||
int1x4 :: distinct matrix[1, 4]int
|
int1x4 :: matrix[1, 4]int
|
||||||
int2x1 :: distinct matrix[2, 1]int
|
int2x1 :: matrix[2, 1]int
|
||||||
int2x3 :: distinct matrix[2, 3]int
|
int2x3 :: matrix[2, 3]int
|
||||||
int2x4 :: distinct matrix[2, 4]int
|
int2x4 :: matrix[2, 4]int
|
||||||
int3x1 :: distinct matrix[3, 1]int
|
int3x1 :: matrix[3, 1]int
|
||||||
int3x2 :: distinct matrix[3, 2]int
|
int3x2 :: matrix[3, 2]int
|
||||||
int3x4 :: distinct matrix[3, 4]int
|
int3x4 :: matrix[3, 4]int
|
||||||
int4x1 :: distinct matrix[4, 1]int
|
int4x1 :: matrix[4, 1]int
|
||||||
int4x2 :: distinct matrix[4, 2]int
|
int4x2 :: matrix[4, 2]int
|
||||||
int4x3 :: distinct matrix[4, 3]int
|
int4x3 :: matrix[4, 3]int
|
||||||
|
|
||||||
cos :: proc{
|
cos :: proc{
|
||||||
cos_float,
|
cos_float,
|
||||||
|
|||||||
Reference in New Issue
Block a user