Maria GDK 5.0.0.738
Documentation of native code in develop branch
Loading...
Searching...
No Matches
Maria3D::ManagedGraphicsModel Class Reference

#include <M3DManagedGraphicsModel.h>

Inheritance diagram for Maria3D::ManagedGraphicsModel:
STK::GraphicsModel

Public Types

enum class  ModelState { EMPTY , PENDING , READY , MISSING }
 
- Public Types inherited from STK::GraphicsModel
using filter_fn = std::function< bool(const GraphicsModel &)>
 

Public Member Functions

 ManagedGraphicsModel (ModelManager *modelManager, std::shared_ptr< STK::GraphicsModel > model=nullptr)
 
 ManagedGraphicsModel (ModelManager *modelManager, const std::string &assetID, const std::string &path, const std::shared_ptr< STK::AssetDataProvider > &dataProvider)
 
void setGraphicsModel (const std::shared_ptr< GraphicsModel > model)
 
const std::shared_ptr< GraphicsModel > & getGraphicsModel () const
 
std::shared_ptr< GraphicsModel > graphicsModel ()
 
void redraw (const STK::Camera &cam, const STK::Viewport &vp, int render_mask, const std::vector< std::shared_ptr< STK::Uniform > > *uniforms) override
 
void drawShadowMap (const STK::Camera &cam, const STK::Viewport &vp, const STK::Camera &shd_cam, const STK::Viewport &shd_vp, STK::ShaderProgram *shader, STK::ShaderProgram *tex_shader) override
 
void calcBoundingSphere (STK::Vector3f &center, double &radius) override
 
void calcBoundingBox (STK::Vector3f &min, STK::Vector3f &max) override
 
void clearBoundingSphere ()
 
void clearBoundingBox ()
 
void loadModel ()
 
void unloadModel ()
 
const std::string & getPath () const
 
int64_t getTimestamp () const
 
void setTimestamp (int64_t timestamp)
 
int64_t getMemsize () const
 
void setMemsize (const int64_t &memsize)
 
ModelState getModelState () const
 
void setModelState (ModelState modelState)
 
std::shared_ptr< STK::AssetDataProvidergetDataProvider () const
 
void findMeshModels (std::vector< std::shared_ptr< STK::MeshGraphicsModel > > &mesh_models)
 
- Public Member Functions inherited from STK::GraphicsModel
 GraphicsModel (const std::string &name="")
 
void setName (const std::string &name)
 
const std::string & getName () const
 
virtual void filterChildren (const filter_fn &fn, std::vector< std::shared_ptr< GraphicsModel > > &matched)
 
void setTransform (const STK::Matrix4x4f &transform)
 
const STK::Matrix4x4fgetTransform () const
 
void setEnvironmentMap (const std::shared_ptr< STK::CubeMap > &env_map)
 
std::shared_ptr< STK::CubeMapgetEnvironmentMap ()
 
std::shared_ptr< const STK::CubeMapgetEnvironmentMap () const
 
void setWireframe (bool wireframe)
 
bool getWireframe () const
 
void setInvisible (bool invisible)
 
bool getInvisible () const
 
void setCastShadows (bool cast_shadows)
 
bool getCastShadows () const
 
void setDebugGraphics (bool debug_gfx)
 
bool getDebugGraphics () const
 
virtual void redraw (const STK::Camera &cam, const STK::Viewport &vp, int render_mask=STK::OpaqueMask, const std::vector< std::shared_ptr< STK::Uniform > > *uniforms=nullptr)=0
 
virtual void drawShadowMap (const STK::Camera &cam, const STK::Viewport &vp, const STK::Camera &shd_cam, const STK::Viewport &shd_vp, STK::ShaderProgram *shader, STK::ShaderProgram *tex_shader)=0
 
virtual void calcBoundingSphere (STK::Vector3f &center, double &radius)=0
 
virtual void calcBoundingBox (STK::Vector3f &min, STK::Vector3f &max)=0
 

Additional Inherited Members

- Protected Attributes inherited from STK::GraphicsModel
std::string name_
 
STK::Matrix4x4f transform_
 
std::shared_ptr< STK::CubeMapenv_map_
 
bool wireframe_
 
bool invisible_
 
bool cast_shadows_
 
bool debug_gfx_
 

Detailed Description

ManagedGraphicsModel - Graphics model which is handled by the graphics model managed. These models can be loaded and unloaded dynamically from memory.

Member Function Documentation

◆ calcBoundingBox()

void ManagedGraphicsModel::calcBoundingBox ( STK::Vector3f min,
STK::Vector3f max 
)
overridevirtual

Implements STK::GraphicsModel.

◆ calcBoundingSphere()

void ManagedGraphicsModel::calcBoundingSphere ( STK::Vector3f center,
double &  radius 
)
overridevirtual

Implements STK::GraphicsModel.

◆ drawShadowMap()

void ManagedGraphicsModel::drawShadowMap ( const STK::Camera cam,
const STK::Viewport vp,
const STK::Camera shd_cam,
const STK::Viewport shd_vp,
STK::ShaderProgram shader,
STK::ShaderProgram tex_shader 
)
overridevirtual

Implements STK::GraphicsModel.


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