13 using std::make_unique;
15 using std::unique_ptr;
24 LODObjectImposter::LODObjectImposter(
27 const vector<Model*>& imposterModelsLOD2,
28 float lod2MinDistance,
29 float lodNoneMinDistance
33 lod2MinDistance(lod2MinDistance),
34 lodNoneMinDistance(lodNoneMinDistance)
49 objectLOD2 = make_unique<ImposterObject>(
id +
".lod2", imposterModelsLOD2);
110 if (this->enabled ==
enabled)
return;
135 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 + imposter to be used with engine class.
void dispose() override
Dispose this entity.
Transform parentTransform
unique_ptr< ImposterObject > objectLOD2
void initialize() override
Initiates this entity.
void update() override
Update transform.
Matrix4x4 entityTransformMatrix
void setTransform(const Transform &transform) override
Set transform.
unique_ptr< Object > objectLOD1
~LODObjectImposter()
Public destructor.
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
bool isFrustumCulling() override
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.