2023-10-24 08:27:24 -04:00
|
|
|
#ifndef REALTIME_H
|
|
|
|
#define REALTIME_H
|
|
|
|
|
2023-11-19 09:38:07 -05:00
|
|
|
#include "matrix.h"
|
2024-03-10 10:29:16 -04:00
|
|
|
#include "roi.h"
|
2023-10-24 08:27:24 -04:00
|
|
|
|
2023-10-24 19:38:27 -04:00
|
|
|
#define NORMVEC3(dst, src) \
|
|
|
|
{ \
|
2023-11-19 09:38:07 -05:00
|
|
|
double len = sqrt(NORMSQRD3(src)); \
|
2023-10-24 19:38:27 -04:00
|
|
|
VDS3(dst, src, len); \
|
|
|
|
}
|
2023-10-24 08:27:24 -04:00
|
|
|
|
2024-01-12 19:34:38 -05:00
|
|
|
void CalcLocalTransform(const Vector3& p_posVec, const Vector3& p_dirVec, const Vector3& p_upVec, Matrix4& p_outMatrix);
|
2023-10-24 08:27:24 -04:00
|
|
|
|
2024-03-10 10:29:16 -04:00
|
|
|
// utility to help derived ROI classes implement
|
|
|
|
// update_world_bounding_volumes() using a modelling sphere
|
|
|
|
void CalcWorldBoundingVolumes(const BoundingSphere& modelling_sphere, const Matrix4& local2world, BoundingBox&, BoundingSphere&);
|
|
|
|
|
2023-10-24 08:27:24 -04:00
|
|
|
#endif // REALTIME_H
|