summaryrefslogtreecommitdiff
path: root/src/extend
diff options
context:
space:
mode:
Diffstat (limited to 'src/extend')
-rw-r--r--src/extend/camera.c18
-rw-r--r--src/extend/mesh.c10
-rw-r--r--src/extend/transform.c18
3 files changed, 23 insertions, 23 deletions
diff --git a/src/extend/camera.c b/src/extend/camera.c
index dd77172..2e66afc 100644
--- a/src/extend/camera.c
+++ b/src/extend/camera.c
@@ -40,8 +40,8 @@ Camera* camera_create(wog_Window* wnd, CameraConfig* config) {
// camera local = world
cam->transform.parent = NULL ;
cam->transform.localposition = config->position;
- cam->transform.localscale = vec3_make(1, 1, 1);
- quat_fromeuler(&config->euler, &cam->transform.localrotation);
+ cam->transform.localscale = internal_vec3_make(1, 1, 1);
+ internal_quat_fromeuler(&config->euler, &cam->transform.localrotation);
cam->near = config->near;
cam->far = config->far;
@@ -86,7 +86,7 @@ void camera_getprojmatrix(Camera* cam, Mat4* out) {
if (out)*out = cam->cached_proj_matrix;
return;
}
- mat4_setperspective(cam->fov, cam->aspect, cam->near, cam->far, &cam->cached_proj_matrix);
+ internal_mat4_setperspective(cam->fov, cam->aspect, cam->near, cam->far, &cam->cached_proj_matrix);
if(out) *out = cam->cached_proj_matrix;
cam->is_projdirty = FALSE;
}
@@ -94,9 +94,9 @@ void camera_getprojmatrix(Camera* cam, Mat4* out) {
static void _onwheelscroll(Camera* cam, int wheel, float dt) {
Quat rot; transform_getrotation(&cam->transform, &rot);
Vec3 forward = {0,0,-1};
- quat_applytovec3(&rot, &forward, &forward);
- vec3_scale(&forward, cam->zoom_speed * wheel * dt * (cam->speedup ? cam->speedupv : 1), &forward);
- vec3_plus(&forward, &cam->transform.localposition, &cam->transform.localposition);
+ internal_quat_applytovec3(&rot, &forward, &forward);
+ internal_vec3_scale(&forward, cam->zoom_speed * wheel * dt * (cam->speedup ? cam->speedupv : 1), &forward);
+ internal_vec3_plus(&forward, &cam->transform.localposition, &cam->transform.localposition);
cam->is_viewdirty = TRUE;
}
@@ -112,7 +112,7 @@ static void _onlookaround(Camera* cam,float dt) {
cam->euler.pitch -= angle.x;
cam->euler.yaw += angle.y;
//printf("%f %f\n", cam->euler.pitch, cam->euler.yaw);
- quat_fromeuler(&cam->euler, &cam->transform.localrotation);
+ internal_quat_fromeuler(&cam->euler, &cam->transform.localrotation);
cam->mouse_prev.x = x; cam->mouse_prev.y = y;
cam->is_viewdirty = TRUE;
}
@@ -124,9 +124,9 @@ static void _onmovearound(Camera* cam, float dt) {
Vec3 dd = { cam->mouse_prev.x - x, y - cam->mouse_prev.y , 0};
dd.x *= cam->move_sensitivity.x * dt * (cam->speedup ? cam->speedupv : 1);
dd.y *= cam->move_sensitivity.y * dt * (cam->speedup ? cam->speedupv : 1);
- quat_applytovec3(&cam->transform.localrotation, &dd, &dd);
+ internal_quat_applytovec3(&cam->transform.localrotation, &dd, &dd);
//printf("%f %f %f\n", dd.x, dd.y, dd.z);
- vec3_plus(&cam->transform.localposition, &dd, &cam->transform.localposition);
+ internal_vec3_plus(&cam->transform.localposition, &dd, &cam->transform.localposition);
cam->mouse_prev.x = x; cam->mouse_prev.y = y;
cam->is_viewdirty = TRUE;
}
diff --git a/src/extend/mesh.c b/src/extend/mesh.c
index c8cdf2a..20153d9 100644
--- a/src/extend/mesh.c
+++ b/src/extend/mesh.c
@@ -52,7 +52,7 @@ void *darray_hold(void *darray, int count, int itemsize) {
}
}
-Vec3 vec3_min(Vec3 a, Vec3 b) {
+Vec3 internal_vec3_min(Vec3 a, Vec3 b) {
float x = min(a.x, b.x);
float y = min(a.y, b.y);
float z = min(a.z, b.z);
@@ -60,7 +60,7 @@ Vec3 vec3_min(Vec3 a, Vec3 b) {
return r;
}
-Vec3 vec3_max(Vec3 a, Vec3 b) {
+Vec3 internal_vec3_max(Vec3 a, Vec3 b) {
float x = max(a.x, b.x);
float y = max(a.y, b.y);
float z = max(a.z, b.z);
@@ -110,14 +110,14 @@ static Mesh *build_mesh(
mesh->triangles[i] = position_index;
- //bbox_min = vec3_min(bbox_min, vertices[i].position);
- //bbox_max = vec3_max(bbox_max, vertices[i].position);
+ //bbox_min = internal_vec3_min(bbox_min, vertices[i].position);
+ //bbox_max = internal_vec3_max(bbox_max, vertices[i].position);
}
mesh->tris_count = num_faces;
mesh->vert_count = nvert;
mesh->vertices = vertices;
- //mesh->center = vec3_div(vec3_add(bbox_min, bbox_max), 2);
+ //mesh->center = internal_vec3_div(internal_vec3_add(bbox_min, bbox_max), 2);
return mesh;
}
diff --git a/src/extend/transform.c b/src/extend/transform.c
index 6979e40..62776f7 100644
--- a/src/extend/transform.c
+++ b/src/extend/transform.c
@@ -6,11 +6,11 @@ void transform_getpositionandrotation(Transform* trans, Vec3* pos, Quat* rot) {
Transform* cur = trans->parent;
while (cur) {
/*按照srt的顺序计算pos*/
- vec3_scale3(pos, &cur->localscale, pos);
- quat_applytovec3(&cur->localrotation, pos, pos);
- vec3_plus(pos, &cur->localposition, pos);
+ internal_vec3_scale3(pos, &cur->localscale, pos);
+ internal_quat_applytovec3(&cur->localrotation, pos, pos);
+ internal_vec3_plus(pos, &cur->localposition, pos);
/*计算旋转*/
- quat_multiply(&cur->localrotation, rot, rot);
+ internal_quat_multiply(&cur->localrotation, rot, rot);
cur = cur->parent;
}
@@ -19,18 +19,18 @@ void transform_getpositionandrotation(Transform* trans, Vec3* pos, Quat* rot) {
void transform_getinvmatrixnoscale(Transform* trans, Mat4* worldToLocal) {
Vec3 pos; Quat rot;
transform_getpositionandrotation(trans, &pos, &rot);
- quat_invert(&rot, &rot);
+ internal_quat_invert(&rot, &rot);
/*(TR)^-1 = R^-1T^-1*/
- quat_tomat4(&rot, worldToLocal);
- vec3_scale(&pos, -1, &pos);
- mat4_translate(worldToLocal, &pos, worldToLocal);
+ internal_quat_tomat4(&rot, worldToLocal);
+ internal_vec3_scale(&pos, -1, &pos);
+ internal_mat4_translate(worldToLocal, &pos, worldToLocal);
}
void transform_getrotation(Transform* trans, Quat* rot) {
*rot = trans->localrotation;
Transform* cur = trans->parent;
while (cur) {
- quat_multiply(&cur->localrotation, rot, rot);
+ internal_quat_multiply(&cur->localrotation, rot, rot);
}
}