13 using std::make_unique;
15 using std::unique_ptr;
28 float modelLOD2MinDistance,
31 float modelLOD3MinDistance,
33 float lodNoneMinDistance
37 levelTypeLOD2(levelTypeLOD2),
38 modelLOD2MinDistance(modelLOD2MinDistance),
40 levelTypeLOD3(levelTypeLOD3),
41 modelLOD3MinDistance(modelLOD3MinDistance),
43 lodNoneMinDistance(lodNoneMinDistance)
57 if (modelLOD1 !=
nullptr) {
133 if (this->enabled ==
enabled)
return;
158 if (this->frustumCulling ==
true) {
void set(float r, float g, float b, float a)
Sets this color by its components.
unique_ptr< Partition > partition
void updateEntityRegistration(Entity *entity)
Updates registration of engine by performing deregisterEntity() and registerEntity()
void deregisterEntity(Entity *entity)
Removes a entity from internal lists, those entities can also be sub entities from entity hierarchy o...
void registerEntity(Entity *entity)
Adds a entity to internal lists, those entities can also be sub entities from entity hierarchy or par...
LOD object to be used with engine class.
void dispose() override
Dispose this entity.
Transform parentTransform
~LODObject()
Public destructor.
unique_ptr< Object > objectLOD3
void initialize() override
Initiates this entity.
void update() override
Update transform.
Color4 effectColorAddLOD3
Matrix4x4 entityTransformMatrix
void setTransform(const Transform &transform) override
Set transform.
unique_ptr< Object > objectLOD1
Color4 effectColorMulLOD2
void setFrustumCulling(bool frustumCulling) override
Set frustum culling.
void setEngine(Engine *engine) override
Set up engine.
void setEnabled(bool enabled) override
Enable/disable rendering.
Color4 effectColorAddLOD2
unique_ptr< Object > objectLOD2
bool isFrustumCulling() override
Color4 effectColorMulLOD3
void setRenderer(Renderer *renderer) override
Set up renderer.
Object to be used with engine class.
Representation of a 3D model.
Matrix4x4 & identity()
Creates identity matrix.