On Wed, 15 May 2019 at 19:40, Paul Gofman gofmanp@gmail.com wrote:
+static float dot_vec3(const struct wined3d_vec3 *src1, const struct wined3d_vec3 *src2) +{
- return src1->x * src2->x + src1->y * src2->y + src1->z * src2->z;
 +}
We'd typically call that "wined3d_vec3_dot()".
+static void normalize_vec3(struct wined3d_vec3 *dest, const struct wined3d_vec3 *src) +{
- float rnorm = 1.0f / sqrtf(src->x * src->x + src->y * src->y + src->z * src->z);
 
"sqrtf(wined3d_vec3_dot(src, src))", right?
+static void madd_vec(float *dst, const float *src, unsigned int count, float c) +{
- unsigned int i;
 - for (i = 0; i < count; ++i)
 dst[i] += src[i] * c;+}
+static void multiply_vector3_matrix(struct wined3d_vec3 *dest, const struct wined3d_vec3 *src1,
const float *src2)+{
- struct wined3d_vec3 temp;
 - temp.x = (src1->x * src2[0]) + (src1->y * src2[3]) + (src1->z * src2[3 * 2]);
 - temp.y = (src1->x * src2[1]) + (src1->y * src2[3 + 1]) + (src1->z * src2[3 * 2 + 1]);
 - temp.z = (src1->x * src2[2]) + (src1->y * src2[3 + 2]) + (src1->z * src2[3 * 2 + 2]);
 - *dest = temp;
 +}
I think we'd prefer proper matrix and vector structures here.