XLE  v0.02.0
Classes | Public Member Functions | Protected Attributes | Friends | List of all members
SceneEngine::PlacementsManager Class Reference

Manages stream and organization of object placements More...

#include <PlacementsManager.h>

Classes

struct  ObjectBoundingBoxes
 

Public Member Functions

void Render (RenderCore::Metal::DeviceContext *context, RenderCore::Techniques::ParsingContext &parserContext, unsigned techniqueIndex)
 
void RenderTransparent (RenderCore::Metal::DeviceContext *context, RenderCore::Techniques::ParsingContext &parserContext, unsigned techniqueIndex, RenderCore::Assets::DelayStep delayStep)
 
bool HasPrepared (RenderCore::Assets::DelayStep delayStep)
 
auto GetVisibleQuadTrees (const Float4x4 &worldToClip) const -> std::vector< std::pair< Float3x4, const PlacementsQuadTree * >>
 
auto GetObjectBoundingBoxes (const Float4x4 &worldToClip) const -> std::vector< std::pair< Float3x4, ObjectBoundingBoxes >>
 
std::shared_ptr< PlacementsRenderer > GetRenderer ()
 
std::shared_ptr< PlacementsEditorCreateEditor ()
 
void SetImposters (std::shared_ptr< DynamicImposters > imposters)
 
 PlacementsManager (const WorldPlacementsConfig &cfg, std::shared_ptr< RenderCore::Assets::ModelCache > modelCache, const Float3 &worldOffset)
 

Protected Attributes

std::unique_ptr< Pimpl > _pimpl
 

Friends

class PlacementsEditor
 

Detailed Description

Manages stream and organization of object placements

In this context, placements are static objects placed in the world. Most scenes will have a large number of essentially static objects. This object manages a large continuous world of these kinds of objects.


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