NcEngine
EngineTypes.h
1#pragma once
2
3#include "Type.h"
4
7#include "ncengine/ecs/Tag.h"
9#include "ncengine/ecs/detail/FreeComponentGroup.h"
11#include "ncengine/graphics/Camera.h"
12#include "ncengine/graphics/Light.h"
17
18namespace nc::type
19{
20REGISTER_TYPE(Vector2, PROPERTY(Vector2, x), PROPERTY(Vector2, y));
21REGISTER_TYPE(Vector3, PROPERTY(Vector3, x), PROPERTY(Vector3, y), PROPERTY(Vector3, z));
22REGISTER_TYPE(Vector4, PROPERTY(Vector4, x), PROPERTY(Vector4, y), PROPERTY(Vector4, z), PROPERTY(Vector4, w));
23REGISTER_TYPE(Quaternion, PROPERTY(Quaternion, x), PROPERTY(Quaternion, y), PROPERTY(Quaternion, z), PROPERTY(Quaternion, w));
24
26REGISTER_TYPE(AudioSource);
27REGISTER_TYPE(BoneSnapper);
28REGISTER_TYPE(Camera);
29REGISTER_TYPE(CollisionListener);
30REGISTER_TYPE(Constraint);
31REGISTER_TYPE(ecs::detail::FreeComponentGroup);
32REGISTER_TYPE(DirectionalLight);
33REGISTER_TYPE(Entity);
34REGISTER_TYPE(FrameLogic);
35REGISTER_TYPE(ParticleEmitter);
36REGISTER_TYPE(PointLight);
37REGISTER_TYPE(SpotLight);
38REGISTER_TYPE(SkinnedMesh);
39REGISTER_TYPE(StaticMesh);
40REGISTER_TYPE(RigidBody);
41REGISTER_TYPE(Shape);
42REGISTER_TYPE(Tag);
43REGISTER_TYPE(Transform);
44} // namespace nc::type