cat3d
A tiny OpenGL 3D engine library written in and for C++.
Public Member Functions | Protected Member Functions | List of all members
cat3d::obj::model Class Reference

Node for rendering models onto the scene. More...

#include <model.hpp>

Inherits cat3d::scene::node.

Public Member Functions

 model (const std::string &path)
 Constructor. More...
 
- Public Member Functions inherited from cat3d::scene::node
virtual ~node ()
 virtual destructor for polymorphism
 
void delete_child (node *child)
 Remove the given child node. More...
 
util::transform global_transform () const
 Get this node's transform relative to the world.
 
util::transform local_transform () const
 Get the node's transform relative to itself.
 
util::transformtransform ()
 Access to the underlying transform. More...
 
void update (window &win)
 Called once per frame. Updates this node.
 
void render (window &win)
 Called once per render. Renders this node and all children.
 
nodeparent () const
 Get this node's parent. More...
 
nodecreate_node ()
 Create a child node. More...
 
template<typename Obj , typename... Args>
Obj * create (Args... args)
 Add a derived node class as a child. More...
 
size_t bind (node_bind_loc loc, std::function< void()> fn)
 Add a hook into the update cycle of the node. More...
 
void unbind (size_t id)
 Unbind a hook from the node. More...
 

Protected Member Functions

void update_self (window &win)
 Overridden by child classes to implement custom behavior. More...
 
void render_self (window &win)
 Overridden by child classes to implement custom rendering. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from cat3d::scene::node
static nodenew_root ()
 Create a new root scene node. More...
 

Detailed Description

Node for rendering models onto the scene.

Constructor & Destructor Documentation

◆ model()

cat3d::obj::model::model ( const std::string &  path)

Constructor.

Parameters
pathPath to the .obj file.

Member Function Documentation

◆ render_self()

void cat3d::obj::model::render_self ( window win)
protectedvirtual

Overridden by child classes to implement custom rendering.

Parameters
winThe main cat3d window.

Reimplemented from cat3d::scene::node.

◆ update_self()

void cat3d::obj::model::update_self ( window win)
protectedvirtual

Overridden by child classes to implement custom behavior.

Parameters
winThe main cat3d window.

Reimplemented from cat3d::scene::node.


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