Ember
A C++ 20 'game engine' built with SDL3 with wide platform support.
Public Member Functions | List of all members
Sprite2D Class Referencefinal

2D Sprite Node More...

#include <sprite_node.h>

Inheritance diagram for Sprite2D:
Node2D

Public Member Functions

 Sprite2D (const std::weak_ptr< Texture > &tex, const Color col=Color(255, 255, 255, 255), const glm::vec2 size={0, 0})
 
Rect2 get_region () const
 
void set_region (const Rect2 &region, glm::vec2 size)
 
void set_color (const Color &col)
 
void ready () override
 
void process (double delta_time) override
 
void draw (Renderer *renderer) override
 
void input (const InputManager *input) override
 
void set_flip_horizontal (bool flip)
 
void set_flip_vertical (bool flip)
 
bool is_flipped_horizontal () const
 
bool is_flipped_vertical () const
 
glm::vec2 get_size () const
 
void set_texture (const std::weak_ptr< Texture > &tex)
 
void draw_hierarchy () override
 
void draw_inspector () override
 
- Public Member Functions inherited from Node2D
 Node2D ()
 
 Node2D (std::string name)
 
void set_z_index (int index)
 
int get_z_index () const
 
int get_effective_z_index () const
 
void print_tree (int indent=0) const
 
void change_visibility (bool visible)
 
void translate (float dx, float dy)
 
void rotate (float radians)
 
void scale (float sx, float sy)
 
Transform2D get_global_transform () const
 
Transform2D get_transform () const
 
void set_transform (const Transform2D &transform)
 
void add_child (const std::string &base_name, Node2D *node)
 
Node2Dget_node (const std::string &path)
 
template<typename T >
T * get_node ()
 
void queue_free ()
 
virtual ~Node2D ()
 
const std::string & get_name () const
 
bool is_visible () const
 
bool is_effective_visible () const
 
HashMap< std::string, Node2D * > & get_tree ()
 
bool is_alive () const
 

Additional Inherited Members

- Protected Attributes inherited from Node2D
Transform2D _transform = {}
 
std::string _name = "Node"
 
int _z_index = 0
 
bool _is_visible = true
 
bool _is_ready = false
 
bool _to_free = false
 

Detailed Description

2D Sprite Node

A 2D sprite node that can be added to the scene graph.

Version
1.1.0

Constructor & Destructor Documentation

◆ Sprite2D()

Sprite2D::Sprite2D ( const std::weak_ptr< Texture > &  tex,
const Color  col = Color(255, 255, 255, 255),
const glm::vec2  size = {0, 0} 
)
inlineexplicit

Member Function Documentation

◆ draw()

void Sprite2D::draw ( Renderer renderer)
overridevirtual

Reimplemented from Node2D.

◆ draw_hierarchy()

void Sprite2D::draw_hierarchy ( )
overridevirtual

Reimplemented from Node2D.

◆ draw_inspector()

void Sprite2D::draw_inspector ( )
overridevirtual

Reimplemented from Node2D.

◆ get_region()

Rect2 Sprite2D::get_region ( ) const

◆ get_size()

glm::vec2 Sprite2D::get_size ( ) const
inline

◆ input()

void Sprite2D::input ( const InputManager input)
overridevirtual

Reimplemented from Node2D.

◆ is_flipped_horizontal()

bool Sprite2D::is_flipped_horizontal ( ) const
inline

◆ is_flipped_vertical()

bool Sprite2D::is_flipped_vertical ( ) const
inline

◆ process()

void Sprite2D::process ( double  delta_time)
overridevirtual

Reimplemented from Node2D.

◆ ready()

void Sprite2D::ready ( )
overridevirtual

Reimplemented from Node2D.

◆ set_color()

void Sprite2D::set_color ( const Color col)

◆ set_flip_horizontal()

void Sprite2D::set_flip_horizontal ( bool  flip)
inline

◆ set_flip_vertical()

void Sprite2D::set_flip_vertical ( bool  flip)
inline

◆ set_region()

void Sprite2D::set_region ( const Rect2 region,
glm::vec2  size 
)

◆ set_texture()

void Sprite2D::set_texture ( const std::weak_ptr< Texture > &  tex)
inline

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