gbarubik/inc/model_instance.hpp

23 lines
585 B
C++
Raw Normal View History

2023-11-24 20:19:42 -05:00
#ifndef MODEL_INSTANCE_HPP
#define MODEL_INSTANCE_HPP
#include "mesh.hpp"
#include "renderable.hpp"
#include <tonc.h>
2023-11-26 18:09:41 -05:00
class ModelInstance : public Renderable {
2023-11-24 20:19:42 -05:00
private:
2023-11-26 18:09:41 -05:00
std::shared_ptr<Mesh> m_mesh;
2023-11-24 20:19:42 -05:00
FIXED m_scale;
2023-11-26 18:09:41 -05:00
VECTOR m_rot; // though technically "FIXED"'s, these are simply s32's
// where [0, 2pi] -> [0, 0xFFFF] in the x,y,z axes
2023-11-24 20:19:42 -05:00
VECTOR m_pos;
2023-11-25 19:05:01 -05:00
public:
2023-11-26 18:09:41 -05:00
ModelInstance(std::shared_ptr<Mesh> mesh, FIXED scale, VECTOR m_rotation,
VECTOR m_pos);
virtual void render(std::shared_ptr<Scene> scene_context);
2023-11-24 20:19:42 -05:00
};
#endif // MODEL_INSTANCE_HPP