ScummVM API documentation
hpl::cPortalContainer Class Reference
Inheritance diagram for hpl::cPortalContainer:
hpl::iRenderableContainer

Public Member Functions

bool AddEntity (iEntity3D *pEntity)
 
bool RemoveEntity (iEntity3D *pEntity)
 
bool Add (iRenderable *apRenderable, bool abStatic)
 
bool Remove (iRenderable *apRenderable)
 
void AddLightShadowCasters (iLight3D *apLight, cFrustum *apFrustum, cRenderList *apRenderList)
 
void AddToRenderList (iRenderable *apObject, cFrustum *apFrustum, cRenderList *apRenderList)
 
void GetVisible (cFrustum *apFrustum, cRenderList *apRenderList)
 
void Compile ()
 
void AddSector (tString asSectorId)
 
bool AddToSector (iRenderable *apRenderable, tString asSector)
 
bool AddPortal (cPortal *apPortal, tString asSector)
 
cSectorGetSector (tString asId)
 
int GetSectorVisitCount () const
 
cPortalContainerEntityIterator GetEntityIterator (cBoundingVolume *apBV)
 
cSectorVisibilityContainerCreateVisibiltyFromBV (cBoundingVolume *apBV)
 
cSectorVisibilityContainerCreateVisibiltyFromFrustum (cFrustum *apFrustum)
 
tSectorMapGetSectorMap ()
 
tStringListGetVisibleSectorsList ()
 
tRenderableSetGetGlobalDynamicObjectSet ()
 
tRenderableListGetGlobalStaticObjectList ()
 

Member Function Documentation

◆ Add()

bool hpl::cPortalContainer::Add ( iRenderable apRenderable,
bool  abStatic 
)
virtual

Add a new object to the container.

Parameters
*apRenderablethe object
abStatictrue if the object will not move, else false.
Returns
true if success, else false

Implements hpl::iRenderableContainer.

◆ Remove()

bool hpl::cPortalContainer::Remove ( iRenderable apRenderable)
virtual

Removes the object, only non static are guaranteed to be found.

Parameters
*apRenderablethe object
Returns
true if success, else false

Implements hpl::iRenderableContainer.

◆ GetVisible()

void hpl::cPortalContainer::GetVisible ( cFrustum apFostrum,
cRenderList apRenderList 
)
virtual

Populate the renderlist with all objects visible in a fostrum.

Parameters
apFostrum
*apRenderList

Implements hpl::iRenderableContainer.

◆ Compile()

void hpl::cPortalContainer::Compile ( )
virtual

Sets up things like octrees so that the container is ready to use.

Implements hpl::iRenderableContainer.

◆ AddSector()

void hpl::cPortalContainer::AddSector ( tString  asSectorId)

Adds a new sector to the container. All sectors must be created before anything else.

◆ AddToSector()

bool hpl::cPortalContainer::AddToSector ( iRenderable apRenderable,
tString  asSector 
)

Adds a new renderable to a specific sector.This also recalculates the sector's bounding volume. Object must be (and is considered) static!


The documentation for this class was generated from the following file: