Lines Matching refs:VEC3
29 struct VEC3;
34 NN_MATH_INLINE bool VEC3IsZero(const VEC3* p);
35 NN_MATH_INLINE VEC3* VEC3Maximize(VEC3* pOut, const VEC3* p1, const VEC3* p2);
36 NN_MATH_INLINE VEC3* VEC3Minimize(VEC3* pOut, const VEC3* p1, const VEC3* p2);
37 NN_MATH_INLINE VEC3* VEC3Cross(VEC3* pOut, const VEC3* p1, const VEC3* p2);
38 NN_MATH_INLINE VEC3* VEC3Normalize(VEC3* pOut, const VEC3* p);
39 NN_MATH_INLINE VEC3* VEC3SafeNormalize(VEC3* pOut, const VEC3* p, const VEC3& alt);
40 NN_MATH_INLINE f32 VEC3SquareDist(const VEC3* p1, const VEC3* p2);
42 inline VEC3* VEC3Add(VEC3* pOut, const VEC3* p1, const VEC3* p2);
43 inline VEC3* VEC3Sub(VEC3* pOut, const VEC3* p1, const VEC3* p2);
44 inline VEC3* VEC3Mult(VEC3* pOut, const VEC3* p1, const VEC3* p2);
45 inline VEC3* VEC3Scale(VEC3* pOut, const VEC3* p, f32 scale);
46 inline VEC3* VEC3Lerp(VEC3* pOut, const VEC3* p1, const VEC3* p2, f32 t);
47 inline f32 VEC3Dot(const VEC3* p1, const VEC3* p2);
48 inline f32 VEC3Len(const VEC3* p);
49 inline f32 VEC3SquareLen(const VEC3* p);
50 inline f32 VEC3Dist(const VEC3* p1, const VEC3* p2);
53 NN_FORCE_INLINE VEC3* VEC3Normalize(VEC3* pOut, const VEC3* p);
68 struct VEC3 : public VEC3_ struct
74 static const VEC3& Zero() in Zero() argument
76 static const VEC3 zero(0.0f, 0.0f, 0.0f); in Zero()
82 static const VEC3& One() in One() argument
84 static const VEC3 one(1.0f, 1.0f, 1.0f); in One()
89 typedef VEC3 self_type; // argument
97 VEC3() {} in VEC3() argument
98 explicit VEC3(const f32* p) { x = p[0]; y = p[1]; z = p[2]; } in VEC3() function
100 VEC3(const VEC3_& v) { x = v.x; y = v.y; z = v.z; } in VEC3() function
102 VEC3(f32 fx, f32 fy, f32 fz) { x = fx; y = fy; z = fz; } in VEC3() argument
129 …self_type operator + (const self_type& rhs) const { VEC3 tmp; (void)VEC3Add(&tmp, this, &rhs); ret… argument
130 …self_type operator - (const self_type& rhs) const { VEC3 tmp; (void)VEC3Sub(&tmp, this, &rhs); ret… argument
131 self_type operator * (f32 f) const { VEC3 tmp; (void)VEC3Scale(&tmp, this, f); return tmp; } argument
140 self_type& Lerp(const VEC3& lhs, const VEC3& rhs, f32 t) in Lerp() argument
149 f32 Dot(const VEC3& vec) const in Dot() argument
175 self_type& SafeNormalize(const VEC3& alt) in SafeNormalize() argument
183 f32 DistanceSquare(const VEC3& vec) const in DistanceSquare() argument
192 self_type& Maximize(const VEC3& lhs, const VEC3& rhs) in Maximize() argument
201 self_type& Minimize(const VEC3& lhs, const VEC3& rhs) in Minimize() argument
210 self_type& Cross(const VEC3& lhs, const VEC3& rhs) in Cross() argument
247 typedef struct VEC3 Vector3; argument
267 inline VEC3*
268 VEC3Add(VEC3* pOut, const VEC3* p1, const VEC3* p2) in VEC3Add()
286 inline VEC3*
287 VEC3Sub(VEC3* pOut, const VEC3* p1, const VEC3* p2) in VEC3Sub()
304 inline VEC3*
305 VEC3Mult(VEC3* pOut, const VEC3* p1, const VEC3* p2) in VEC3Mult()
322 inline VEC3*
323 VEC3Scale(VEC3* pOut, const VEC3* p, f32 scale) in VEC3Scale()
341 inline VEC3*
342 VEC3Lerp(VEC3* pOut, const VEC3* p1, const VEC3* p2, f32 t) in VEC3Lerp()
359 VEC3Dot(const VEC3* p1, const VEC3* p2) in VEC3Dot()
373 VEC3SquareLen(const VEC3* p) in VEC3SquareLen()
386 VEC3Len(const VEC3* p) in VEC3Len()
403 VEC3Dist( const VEC3* p1, const VEC3* p2 ) in VEC3Dist()
412 inline VEC3
413 operator * (f32 f, const VEC3& rhs) { VEC3 tmp; (void)VEC3Scale(&tmp, &rhs, f); return tmp; }
436 NN_FORCE_INLINE VEC3*
437 VEC3Normalize(VEC3* pOut, const VEC3* p) in VEC3Normalize()
470 inline bool VEC3IsZero(const VEC3& v){ return VEC3IsZero( &v ); } in VEC3IsZero()
471 inline VEC3* VEC3Maximize(VEC3* pOut, const VEC3& v1, const VEC3& v2) { return VEC3Maximize( pOut, … in VEC3Maximize()
472 inline VEC3* VEC3Minimize(VEC3* pOut, const VEC3& v1, const VEC3& v2) { return VEC3Minimize( pOut, … in VEC3Minimize()
473 inline VEC3* VEC3Cross(VEC3* pOut, const VEC3& v1, const VEC3& v2) { return VEC3Cross( pOut, &v1, &… in VEC3Cross()
474 inline VEC3* VEC3Normalize(VEC3* pOut, const VEC3& v) { return VEC3Normalize( pOut, &v ); } in VEC3Normalize()
475 inline VEC3* VEC3SafeNormalize(VEC3* pOut, const VEC3& v, const VEC3& alt) { return VEC3SafeNormali… in VEC3SafeNormalize()
476 inline f32 VEC3SquareDist(const VEC3& v1, const VEC3& v2) { return VEC3SquareDist( &v1, &v2 ); } in VEC3SquareDist()
478 inline VEC3* VEC3Add(VEC3* pOut, const VEC3& v1, const VEC3& v2) { return VEC3Add( pOut, &v1, &v2 )… in VEC3Add()
479 inline VEC3* VEC3Sub(VEC3* pOut, const VEC3& v1, const VEC3& v2) { return VEC3Sub( pOut, &v1, &v2 )… in VEC3Sub()
480 inline VEC3* VEC3Mult(VEC3* pOut, const VEC3& v1, const VEC3& v2) { return VEC3Mult( pOut, &v1, &v2… in VEC3Mult()
481 inline VEC3* VEC3Scale(VEC3* pOut, const VEC3& v, f32 scale) { return VEC3Scale( pOut, &v, scale );… in VEC3Scale()
482 inline VEC3* VEC3Lerp(VEC3* pOut, const VEC3& v1, const VEC3& v2, f32 t) { return VEC3Lerp( pOut, &… in VEC3Lerp()
483 inline f32 VEC3Dot(const VEC3& v1, const VEC3& v2) { return VEC3Dot( &v1, &v2 ); } in VEC3Dot()
484 inline f32 VEC3Len(const VEC3& v) { return VEC3Len( &v ); } in VEC3Len()
485 inline f32 VEC3SquareLen(const VEC3& v) { return VEC3SquareLen( &v ); } in VEC3SquareLen()
486 inline f32 VEC3Dist(const VEC3& v1, const VEC3& v2) { return VEC3Dist( &v1, &v2 ); } in VEC3Dist()