gdk-graphics 0b051eb9b5c1eaa0658babaa4463dd7a80aa9d2c
Loading...
Searching...
No Matches
entity.h
1// © Joseph Cameron - All Rights Reserved
2
3#ifndef GDK_GFX_ENTITY_H
4#define GDK_GFX_ENTITY_H
5
6#include <gdk/graphics_types.h>
7
8namespace gdk {
9 class material;
10 class model;
11
13 class entity {
14 public:
16 virtual void hide() = 0;
17
19 virtual void show() = 0;
20
22 virtual bool is_hidden() const = 0;
23
25 virtual void set_transform(const graphics_vector3_type &aWorldPos,
26 const graphics_quaternion_type &aRotation,
27 const graphics_vector3_type &aScale = graphics_vector3_type::one) = 0;
28
30 virtual void set_transform(const graphics_matrix4x4_type& a) = 0;
31
33 virtual ~entity() = default;
34 };
35}
36
37#endif
38
represents an observable 3d object.
Definition entity.h:13
virtual ~entity()=default
dtor
virtual void set_transform(const graphics_matrix4x4_type &a)=0
set the model matrix using a matrix
virtual void set_transform(const graphics_vector3_type &aWorldPos, const graphics_quaternion_type &aRotation, const graphics_vector3_type &aScale=graphics_vector3_type::one)=0
sets the model matrix using a vec3 position, quat rotation, vec3 scale
virtual bool is_hidden() const =0
check if the entity is hidden
virtual void hide()=0
do not allow this entity to be drawn
virtual void show()=0
allow this entity to be drawn
decides how models using the material should be drawn.
Definition material.h:22
Vertex data representing a 3D graphical object.
Definition model.h:10