19 using std::make_unique;
21 using std::unique_ptr;
103 inline void dispose()
override;
138 inline const string&
getId()
override {
Color 4 definition class.
static constexpr int RENDERPASS_ALL
@ ENTITYTYPE_ENVIRONMENTMAPPING
Environment mapping entity.
BoundingBox * getBoundingBox() override
const Vector3 & getTranslation() const override
const Transform & getTransform() const override
RenderPass getRenderPass() const override
void dispose() override
Dispose this entity.
void setTranslation(const Vector3 &translation) override
Set translation.
Transform parentTransform
void removeRotation(const int idx) override
Remove rotation.
Rotation & getRotation(const int idx) override
Get rotation at given index.
BoundingBox worldBoundingBox
EnvironmentMapping(const string &id, int width, int height, BoundingBox boundingBox)
Public constructor.
const int getRotationCount() const override
const Vector3 & getRotationAxis(const int idx) const override
void initialize() override
Initiates this entity.
bool isReceivesShadows() override
void setRenderPass(RenderPass renderPass) override
Set render pass.
int64_t getTimeRenderUpdateFrequency()
void setReceivesShadows(bool receivesShadows) override
Enable/disable receives shadows.
void addRotation(const Vector3 &axis, const float angle) override
Add rotation.
void update() override
Update transform.
void setRenderPassMask(int32_t renderPassMask)
Set up render pass mask.
void setPickable(bool pickable) override
Set this entity pickable.
int32_t getRenderPassMask()
void setEffectColorMul(const Color4 &effectColorMul) override
Set effect color that will be multiplied with fragment color.
bool isPickable() override
Matrix4x4 entityTransformMatrix
void setTransform(const Transform &transform) override
Set transform.
void render()
Render environment map.
int32_t getCubeMapTextureId()
const Quaternion & getRotationsQuaternion() const override
void setScale(const Vector3 &scale) override
Set scale.
bool isContributesShadows() override
const Vector3 & getScale() const override
const float getRotationAngle(const int idx) const override
BoundingBox * getWorldBoundingBox() override
const Color4 & getEffectColorMul() const override
The effect color will be multiplied with fragment color.
void setFrustumCulling(bool frustumCulling) override
Set frustum culling.
void setTimeRenderUpdateFrequency(int64_t frequency)
Set up render update time frequency.
int64_t timeRenderUpdateFrequency
void setEngine(Engine *engine) override
Set up engine.
void setEnabled(bool enabled) override
Enable/disable rendering.
const Transform & getParentTransform() const override
const Matrix4x4 & getTransformMatrix() const override
const string & getId() override
unique_ptr< EnvironmentMappingRenderer > environmentMappingRenderer
EntityType getEntityType() override
void setContributesShadows(bool contributesShadows) override
Enable/disable contributes shadows.
void setRotationAxis(const int idx, const Vector3 &axis) override
Set rotation axis.
bool isFrustumCulling() override
bool isEnabled() override
void setEffectColorAdd(const Color4 &effectColorAdd) override
Set effect color that will be added to fragment color.
const Color4 & getEffectColorAdd() const override
The effect color will be added to fragment color.
void setParentTransform(const Transform &parentTransform) override
Set parent transform.
void setRenderer(Renderer *renderer) override
Set up renderer.
void setRotationAngle(const int idx, const float angle) override
Representation of a 3D model.
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.
void getTranslation(Vector3 &translation) const
Get translation.
Quaternion class representing quaternion mathematical structure and operations with x,...
Vector3 class representing vector3 mathematical structure and operations with x, y,...
#define FORBID_CLASS_COPY(CLASS)