Nebula
|
#include <vegetationcontext.h>
Inherits Graphics::GraphicsContext.
Public Member Functions | |
VegetationContext () | |
constructor | |
~VegetationContext () | |
destructor | |
Public Member Functions inherited from Graphics::GraphicsContext | |
GraphicsContext () | |
constructor | |
virtual | ~GraphicsContext () |
destructor | |
Static Public Member Functions | |
static void | Create (const VegetationSetupSettings &settings) |
create vegetation context | |
static void | Discard () |
discard vegetation context | |
static void | Setup (Resources::ResourceName heightMap, SizeT numGrassPlanesPerTuft, float grassPatchRadius) |
Setup vegetation context. | |
static void | SetupGrass (const Graphics::GraphicsEntityId id, const VegetationGrassSetup &setup) |
setup as grass | |
static void | SetupMesh (const Graphics::GraphicsEntityId id, const VegetationMeshSetup &setup) |
setup as mesh | |
static void | UpdateViewResources (const Ptr< Graphics::View > &view, const Graphics::FrameContext &ctx) |
update resources | |
Private Types | |
enum class | VegetationType : uint8 { GrassType , MeshType } |
enum | { Vegetation_Mask , Vegetation_Albedos , Vegetation_Normals , Vegetation_Materials , Vegetation_Meshes , Vegetation_GPUInfo , Vegetation_TextureIndex , Vegetation_SlopeThreshold , Vegetation_HeightThreshold , Vegetation_Type } |
typedef Ids::IdAllocator< CoreGraphics::TextureId, CoreGraphics::TextureId, CoreGraphics::TextureId, CoreGraphics::TextureId, CoreGraphics::MeshId, uint, IndexT, float, float, VegetationType > | VegetationAllocator |
Private Member Functions | |
__DeclareContext () | |
Static Private Member Functions | |
static Graphics::ContextEntityId | Alloc () |
allocate a new slice for this context | |
static void | Dealloc (Graphics::ContextEntityId id) |
deallocate a slice | |
Static Private Attributes | |
static VegetationAllocator | vegetationAllocator |
Additional Inherited Members | |
Static Protected Member Functions inherited from Graphics::GraphicsContext | |
static void | InternalRegisterEntity (const Graphics::GraphicsEntityId id, Graphics::GraphicsContextState &&state) |
static void | InternalDeregisterEntity (const Graphics::GraphicsEntityId id, Graphics::GraphicsContextState &&state) |
template<class ID_ALLOCATOR > | |
static void | InternalDefragment (ID_ALLOCATOR &allocator, Graphics::GraphicsContextState &&state) |
|
private |
|
strongprivate |
Vegetation::VegetationContext::VegetationContext | ( | ) |
constructor
Vegetation::VegetationContext::~VegetationContext | ( | ) |
destructor
|
private |
|
staticprivate |
allocate a new slice for this context
|
static |
create vegetation context
|
staticprivate |
deallocate a slice
|
static |
discard vegetation context
|
static |
Setup vegetation context.
|
static |
setup as grass
|
static |
setup as mesh
|
static |
update resources
|
staticprivate |