Color 4 definition class.
Entity hierarchy to be used with engine class.
virtual void addRotation(const Vector3 &axis, const float angle)=0
Add rotation.
virtual void setScale(const Vector3 &scale)=0
Set scale.
virtual const float getRotationAngle(const int idx) const =0
@ RENDERPASS_POST_POSTPROCESSING
@ RENDERPASS_NOFRUSTUMCULLING
virtual bool isEnabled()=0
virtual void setRenderer(Renderer *renderer)=0
Set up renderer.
virtual const int getRotationCount() const =0
virtual BoundingBox * getBoundingBox()=0
virtual const string & getId()=0
Entity * getParentEntity()
virtual const Color4 & getEffectColorAdd() const =0
The effect color will be added to fragment color.
virtual void setParentTransform(const Transform &parentTransform)=0
Set parent transform.
virtual void setRenderPass(RenderPass renderPass)=0
Set render pass.
virtual bool isContributesShadows()=0
virtual Rotation & getRotation(const int idx)=0
Get rotation at given index.
virtual void setRotationAxis(const int idx, const Vector3 &axis)=0
Set rotation axis.
void setUniquePartitionId(int uniquePartitionId)
Set unique partition id.
virtual bool isFrustumCulling()=0
virtual void setEngine(Engine *engine)=0
Set up engine.
virtual void setEffectColorMul(const Color4 &effectColorMul)=0
Set effect color that will be multiplied with fragment color.
virtual const Matrix4x4 & getTransformMatrix() const =0
virtual void setTranslation(const Vector3 &translation)=0
Set translation.
virtual EntityType getEntityType()=0
static constexpr int RENDERPASS_ALL
virtual const Transform & getTransform() const =0
virtual void update()=0
Update transform.
virtual void setRotationAngle(const int idx, const float angle)=0
virtual void setFrustumCulling(bool frustumCulling)=0
Set frustum culling.
virtual void setTransform(const Transform &transform)=0
Set transform.
virtual const Quaternion & getRotationsQuaternion() const =0
virtual void initialize()=0
Initiates this entity.
virtual const Vector3 & getTranslation() const =0
virtual BoundingBox * getWorldBoundingBox()=0
virtual RenderPass getRenderPass() const =0
virtual const Transform & getParentTransform() const =0
virtual const Vector3 & getRotationAxis(const int idx) const =0
static constexpr int RENDERPASS_MAX
virtual void setContributesShadows(bool contributesShadows)=0
Enable/disable contributes shadows.
virtual const Color4 & getEffectColorMul() const =0
The effect color will be multiplied with fragment color.
void setParentEntity(Entity *entity)
Set parent entity, needs to be called before adding to engine.
virtual void dispose()=0
Dispose this entity.
@ ENTITYTYPE_OBJECTRENDERGROUP
@ ENTITYTYPE_OBJECTPARTICLESYSTEM
@ ENTITYTYPE_IMPOSTEROBJECT
@ ENTITYTYPE_FOGPARTICLESYSTEM
@ ENTITYTYPE_POINTSPARTICLESYSTEM
@ ENTITYTYPE_ENVIRONMENTMAPPING
@ ENTITYTYPE_PARTICLESYSTEMGROUP
@ ENTITYTYPE_LODOBJECTIMPOSTER
@ ENTITYTYPE_ENTITYHIERARCHY
virtual ~Entity()
Destructor.
static constexpr int UNIQUEPARTITIONID_NONE
virtual void setPickable(bool pickable)=0
Set this entity pickable.
virtual void setReceivesShadows(bool receivesShadows)=0
Enable/disable receives shadows.
virtual bool isPickable()=0
int getUniquePartitionId()
virtual void setEffectColorAdd(const Color4 &effectColorAdd)=0
Set effect color that will be added to fragment color.
virtual void setEnabled(bool enabled)=0
Enable/disable rendering.
virtual bool isReceivesShadows()=0
virtual void removeRotation(int idx)=0
Remove rotation.
virtual const Vector3 & getScale() const =0
Object render group for static objects that might be animated by shaders.
Oct tree partition implementation.
Particle system group, which combines several particle systems into a group, to be used with engine c...
Scene engine/physics connector.
Axis aligned bounding box used for frustum, this is not directly connectable with physics engine.
Matrix4x4 class representing matrix4x4 mathematical structure and operations for 3d space.
Quaternion class representing quaternion mathematical structure and operations with x,...
Vector3 class representing vector3 mathematical structure and operations with x, y,...