35 lines
892 B
C++
35 lines
892 B
C++
#ifndef Transform_h__
|
|
#define Transform_h__
|
|
|
|
#include "../GLM.h"
|
|
#include "World.h"
|
|
#include "EntityWrapper.h"
|
|
#include "System.h"
|
|
|
|
namespace Transform
|
|
{
|
|
|
|
glm::vec3 AbsolutePosition(EntityWrapper entity);
|
|
glm::vec3 AbsolutePosition(World* world, EntityID entity);
|
|
glm::vec3 AbsoluteOrientationEuler(EntityWrapper entity);
|
|
glm::quat AbsoluteOrientation(EntityWrapper entity);
|
|
glm::quat AbsoluteOrientation(World* world, EntityID entity);
|
|
glm::vec3 AbsoluteScale(EntityWrapper entity);
|
|
glm::vec3 AbsoluteScale(World* world, EntityID entity);
|
|
glm::mat4 ModelMatrix(EntityWrapper entity);
|
|
glm::mat4 ModelMatrix(EntityID entity, World* world);
|
|
glm::vec3 TransformPoint(const glm::vec3& point, const glm::mat4& matrix);
|
|
|
|
class ClearCache : public ImpureSystem
|
|
{
|
|
public:
|
|
ClearCache(SystemParams params)
|
|
: System(params)
|
|
{ }
|
|
|
|
virtual void Update(double dt) override;
|
|
};
|
|
|
|
}
|
|
|
|
#endif |