DubiousEngine  0.2.0
Simple Game Engine
Dubious::Renderer::Visible_model Class Reference

Representation of a visible model. More...

#include <Visible_model.h>

Classes

struct  Edge
 A Model Edge. More...
 
struct  surface
 Model Surface. More...
 

Public Member Functions

 Visible_model (const Utility::Ac3d_file &file, bool include_edges)
 Construct from AC3D Model. More...
 
 Visible_model (const Visible_model &)=delete
 
Visible_modeloperator= (const Visible_model &)=delete
 
void build_edges ()
 Builds the edges. More...
 
const Math::Local_pointoffset () const
 
const std::vector< Math::Local_point > & points () const
 
const std::vector< surface > & surfaces () const
 
const std::vector< Edge > & edges () const
 
const Colorcolor () const
 
const std::vector< std::unique_ptr< Visible_model > > & kids () const
 

Friends

class RendererTest::Visible_model_test
 

Detailed Description

Representation of a visible model.

The Renderer::Visible_model is a model suitable for drawing in OpenGL. It is similar to the Ac3d_model, but it contains more information, like point normals.

Constructor & Destructor Documentation

Dubious::Renderer::Visible_model::Visible_model ( const Utility::Ac3d_file file,
bool  include_edges 
)

Construct from AC3D Model.

Constructs a model from an AC3D File. Building edges is an optional operation. These are used by the shadowing renderer when you want to cast shadows.

Parameters
file- [in] The file object
include_edges- [in] Set true to build edges
Dubious::Renderer::Visible_model::Visible_model ( const Visible_model )
delete

Member Function Documentation

void Dubious::Renderer::Visible_model::build_edges ( )

Builds the edges.

Builds the internal edges structure. This is used by the shadow rendering system to construct silhouettes.

const Color& Dubious::Renderer::Visible_model::color ( ) const
inline
const std::vector<Edge>& Dubious::Renderer::Visible_model::edges ( ) const
inline
const std::vector<std::unique_ptr<Visible_model> >& Dubious::Renderer::Visible_model::kids ( ) const
inline
const Math::Local_point& Dubious::Renderer::Visible_model::offset ( ) const
inline
Visible_model& Dubious::Renderer::Visible_model::operator= ( const Visible_model )
delete
const std::vector<Math::Local_point>& Dubious::Renderer::Visible_model::points ( ) const
inline
const std::vector<surface>& Dubious::Renderer::Visible_model::surfaces ( ) const
inline

Friends And Related Function Documentation

friend class RendererTest::Visible_model_test
friend

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