ezEngine  Milestone 7
CoordinateSystem.h
1 #pragma once
2 
3 #include <Foundation/Math/Vec3.h>
4 
5 #include <Core/World/Declarations.h>
6 
7 struct EZ_CORE_DLL ezCoordinateSystem
8 {
10 
11  ezVec3 m_vForwardDir;
12  ezVec3 m_vRightDir;
13  ezVec3 m_vUpDir;
14 };
15 
16 class EZ_CORE_DLL ezCoordinateSystemProvider
17 {
18 public:
19  ezCoordinateSystemProvider(const ezWorld* pOwnerWorld) : m_pOwnerWorld(pOwnerWorld)
20  {
21  }
22 
24  {
25  }
26 
27  virtual void GetCoordinateSystem(const ezVec3& vGlobalPosition, ezCoordinateSystem& out_CoordinateSystem) const = 0;
28 
29 protected:
30  friend class ezWorld;
31 
32  const ezWorld* m_pOwnerWorld;
33 };