cat3d
A tiny OpenGL 3D engine library written in and for C++.
model.hpp
1 #pragma once
2 
3 #include <vector>
4 
5 #include "cat3d/gl.hpp"
6 #include "cat3d/scene.hpp"
7 
8 namespace cat3d::obj {
9 
14 class model : public scene::node {
15 public:
20  model(const std::string& path);
21 
22 protected:
23  void update_self(window& win);
24 
25  void render_self(window& win);
26 
27 private:
29  std::vector<gl::array> m_arrs;
30 };
31 
32 }
cat3d::window
Manages internal window api / state.
Definition: window.hpp:17
cat3d::obj::model::render_self
void render_self(window &win)
Overridden by child classes to implement custom rendering.
cat3d::obj::model
Node for rendering models onto the scene.
Definition: model.hpp:14
cat3d::obj::model::update_self
void update_self(window &win)
Overridden by child classes to implement custom behavior.
cat3d::obj::model::model
model(const std::string &path)
Constructor.
cat3d::scene::node
Basic, semi-abstract scene node class. Can have children which are other scene nodes,...
Definition: node.hpp:28