static inline void v2_mul( v2f a, v2f b, v2f d )
{
- d[0] = a[0]*b[0]; d[1] = a[1]*b[1];
+ d[0] = a[0]*b[0];
+ d[1] = a[1]*b[1];
}
static inline void v2_div( v2f a, v2f b, v2f d )
d[0] = a[0]/b[0]; d[1] = a[1]/b[1];
}
+static inline void v2_muladd( v2f a, v2f b, v2f s, v2f d )
+{
+ d[0] = a[0]+b[0]*s[0];
+ d[1] = a[1]+b[1]*s[1];
+}
+
static inline void v2_muladds( v2f a, v2f b, float s, v2f d )
{
- d[0] = a[0]+b[0]*s; d[1] = a[1]+b[1]*s;
+ d[0] = a[0]+b[0]*s;
+ d[1] = a[1]+b[1]*s;
}
static inline float v2_length2( v2f a )
return sqrtf( v2_dist2( a, b ) );
}
+static inline void v2_lerp( v2f a, v2f b, float t, v2f d )
+{
+ d[0] = a[0] + t*(b[0]-a[0]);
+ d[1] = a[1] + t*(b[1]-a[1]);
+}
+
// Vector 3
// ==================================================================================================================