From b0b35014d6da1225047e0abc09a7a972a29ba7cb Mon Sep 17 00:00:00 2001 From: sanine-a Date: Sun, 29 Nov 2020 18:50:00 -0600 Subject: add glm vec3 and vec4 bindings as lua objects --- src/glm_bindings.h | 102 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) (limited to 'src/glm_bindings.h') diff --git a/src/glm_bindings.h b/src/glm_bindings.h index f6ec104..45424ee 100644 --- a/src/glm_bindings.h +++ b/src/glm_bindings.h @@ -18,4 +18,106 @@ extern int honey_glm_mat4_mt_ref; */ void honey_setup_glm(lua_State* L); +int honey_glm_new_vec3(lua_State* L); + +int honey_glm_new_vec4(lua_State* L); + +int honey_glm_new_mat3(lua_State* L); + +int honey_glm_new_mat4(lua_State* L); + +int honey_glm_array_destroy(lua_State* L); + +/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + * + * Vec3 Functions + * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + */ + +int honey_glm_vec3_copy(lua_State* L); + +int honey_glm_vec3_zero(lua_State* L); + +int honey_glm_vec3_eye(lua_State* L); + +int honey_glm_vec3_dot(lua_State* L); + +int honey_glm_vec3_cross(lua_State* L); + +int honey_glm_vec3_crossn(lua_State* L); + +int honey_glm_vec3_norm2(lua_State* L); + +int honey_glm_vec3_norm(lua_State* L); + +int honey_glm_vec3_add(lua_State* L); + +int honey_glm_vec3_adds(lua_State* L); + +int honey_glm_vec3_sub(lua_State* L); + +int honey_glm_vec3_subs(lua_State* L); + +int honey_glm_vec3_mul(lua_State* L); + +int honey_glm_vec3_scale(lua_State* L); + +int honey_glm_vec3_scale_as(lua_State* L); + +int honey_glm_vec3_div(lua_State* L); + +int honey_glm_vec3_negate(lua_State* L); + +int honey_glm_vec3_normalize(lua_State* L); + +int honey_glm_vec3_angle(lua_State* L); + +int honey_glm_vec3_clamp(lua_State* L); + +int honey_glm_vec3_lerp(lua_State* L); + +/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + * + * Vec4 Functions + * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + */ + +int honey_glm_vec4_copy(lua_State* L); + +int honey_glm_vec4_zero(lua_State* L); + +int honey_glm_vec4_eye(lua_State* L); + +int honey_glm_vec4_dot(lua_State* L); + +int honey_glm_vec4_norm2(lua_State* L); + +int honey_glm_vec4_norm(lua_State* L); + +int honey_glm_vec4_add(lua_State* L); + +int honey_glm_vec4_adds(lua_State* L); + +int honey_glm_vec4_sub(lua_State* L); + +int honey_glm_vec4_subs(lua_State* L); + +int honey_glm_vec4_mul(lua_State* L); + +int honey_glm_vec4_scale(lua_State* L); + +int honey_glm_vec4_scale_as(lua_State* L); + +int honey_glm_vec4_div(lua_State* L); + +int honey_glm_vec4_negate(lua_State* L); + +int honey_glm_vec4_normalize(lua_State* L); + +int honey_glm_vec4_clamp(lua_State* L); + +int honey_glm_vec4_lerp(lua_State* L); + #endif -- cgit v1.2.1