Maria GDK 5.0.0.1062
Documentation of native code in gdk_5_0_0 branch
Loading...
Searching...
No Matches
STK::LODGraphicsModel Class Reference

#include <StkLODGraphicsModel.h>

Inheritance diagram for STK::LODGraphicsModel:
STK::GraphicsModel

Classes

struct  LODLevel
 

Public Member Functions

void setNumLevels (int n)
 
void setLODModel (int level, const std::shared_ptr< STK::GraphicsModel > &model, double err)
 
std::shared_ptr< STK::GraphicsModel > getLODModel (int level)
 
std::shared_ptr< STK::GraphicsModel > calcLODModel (double err)
 
void redraw (const Camera &cam, const Viewport &vp, int render_mask, const std::vector< std::shared_ptr< Uniform > > *uniforms) override
 
void drawShadowMap (const Camera &cam, const Viewport &vp, const STK::Camera &shd_cam, const Viewport &shd_vp, ShaderProgram *shader, ShaderProgram *tex_shader) override
 
void calcBoundingSphere (STK::Vector3f &center, double &radius) override
 
void calcBoundingBox (STK::Vector3f &min, STK::Vector3f &max) override
 
void filterChildren (const filter_fn &fn, std::vector< std::shared_ptr< GraphicsModel > > &matched) override
 
- 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::Matrix4x4f & getTransform () const
 
void setEnvironmentMap (const std::shared_ptr< STK::CubeMap > &env_map)
 
std::shared_ptr< STK::CubeMap > getEnvironmentMap ()
 
std::shared_ptr< const STK::CubeMap > getEnvironmentMap () 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
 

Protected Attributes

std::vector< LODLevel > lod_levels_
 
- Protected Attributes inherited from STK::GraphicsModel
std::string name_
 
STK::Matrix4x4f transform_
 
std::shared_ptr< STK::CubeMap > env_map_
 
bool wireframe_
 
bool invisible_
 
bool cast_shadows_
 
bool debug_gfx_
 

Additional Inherited Members

- Public Types inherited from STK::GraphicsModel
using filter_fn = std::function< bool(const GraphicsModel &)>
 

Detailed Description

LODGraphicsModel - Short description. Detailed description.

Member Function Documentation

◆ calcBoundingBox()

void LODGraphicsModel::calcBoundingBox ( STK::Vector3f &  min,
STK::Vector3f &  max 
)
overridevirtual

Implements STK::GraphicsModel.

◆ calcBoundingSphere()

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

Implements STK::GraphicsModel.

◆ calcLODModel()

std::shared_ptr< GraphicsModel > LODGraphicsModel::calcLODModel ( double  err)

Calculate the optimal LOD level for the given screen space error. This method returns the least detailed LOD level that has an error less than the given screen space error.

◆ drawShadowMap()

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

Implements STK::GraphicsModel.

◆ filterChildren()

void LODGraphicsModel::filterChildren ( const filter_fn &  fn,
std::vector< std::shared_ptr< GraphicsModel > > &  matched 
)
overridevirtual

Append the children that match the filter function to the matched argument.

Reimplemented from STK::GraphicsModel.


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