diff options
author | quou <quou@disroot.org> | 2024-07-15 21:07:48 +1000 |
---|---|---|
committer | quou <quou@disroot.org> | 2024-07-15 21:07:48 +1000 |
commit | 680cab5cf1778958e7257f19957ac2b5d46d45dc (patch) | |
tree | 9e52a98d2661b1b59eac8c9d0976f4566cd88b09 | |
parent | 1ae53e77cd45416e42b6edcbe0973556a4021b0c (diff) |
Update persp and ndc2clip to be more consistent with other maths functions.
-rw-r--r-- | maths.c | 6 | ||||
-rw-r--r-- | maths.h | 4 |
2 files changed, 6 insertions, 4 deletions
@@ -254,13 +254,14 @@ int vec_dot(const int* a, const int* b, int d) { return r; } -void persp(int* v, int asp) { +int* persp(int* v, int asp) { v[2] += !v[2]; v[0] = ((v[0] << fbits) / v[2]); v[1] = ((v[1] << fbits) / v[2]) * asp >> fbits; + return v; } -void ndc2clip(int* c, int* p) { +int* ndc2clip(const int* c, int* p) { register int hw = c[2] >> 1; register int hh = c[3] >> 1; p[0] = ((hw << fbits) * p[0]) >> fbits; @@ -269,4 +270,5 @@ void ndc2clip(int* c, int* p) { p[1] >>= fbits; p[0] += hw; p[1] += hh; + return p; } @@ -41,7 +41,7 @@ int* mtx_apply(const int* m, int* v); int* vec_cpy(int* d, const int* s, int c); int* vec_ref(int* d, const int* i, const int* n, int c); int vec_dot(const int* a, const int* b, int d); -void persp(int* v, int asp); -void ndc2clip(int* c, int* p); +int* persp(int* v, int asp); +int* ndc2clip(const int* c, int* p); #endif |