Composante du sprite.
Plus de détails...
#include "components/common.h"
#include "ecs/component.h"
#include <raylib.h>
#include <stdbool.h>
Aller au code source de ce fichier.
|
| struct | Sprite |
| | Composante Sprite dans l'ECS Cette composante sert à associer une texture à une Entité. Contient les informations d'affichage de la texture ainsi que de son animation. Plus de détails...
|
|
| void | Sprite_set_texture (Sprite *sprite, int renderPriority, int textureID) |
| | Ajoute une texture avec les valeurs pas défauts.
|
| void | Sprite_set_animation (Sprite *sprite, int frameCount, int delay) |
| | Configure l'animation d'un sprite.
|
| void | Sprite_set_SourceRect (Sprite *sprite, float x, float y, float width, float height) |
| | Définit le rectangle source pour le sprite.
|
| void | UpdateAnimation (Sprite *sprite) |
| | Met à jour l'état d'animation interne d'un sprite.
|
| void | Sprite_draw_sprite (Sprite *sprite, Position *pos, Tag *tag) |
| | Dessine un sprite à la position donnée.
|
| void | Sprite_draw_all (Pool *pool) |
| | Dessine tous les sprites présents dans la pool.
|
| void | Sprite_draw_range (Pool *p, int min_layer, int max_layer) |
| | Dessine les sprites dont la renderPriority est dans l'intervalle.
|
Composante du sprite.
Ce module gère l'affectation d'un sprite à une entité et son affichage.
DONNÉES :
- textureID : ID définies dans assets.h
- srcRect : Rectangle définissant le sprite
- center : Point du srcRect représentant son centre. (pour hitbox et la rotation)
- scale : Agrandissement de l'image
- color : Couleur d'affichage raylib
- renderPriority : Priorité d'affichage (1 - 100) -> z bas <=> affiché en fond
- display : activation de l'affichage
◆ Sprite_draw_all()
| void Sprite_draw_all |
( |
Pool * | pool | ) |
|
|
extern |
Dessine tous les sprites présents dans la pool.
Dessine les sprites selon leur renderPriority.
- Paramètres
-
| pool | pool courante (toutes les données de l'ECS) |
◆ Sprite_draw_range()
| void Sprite_draw_range |
( |
Pool * | p, |
|
|
int | min_layer, |
|
|
int | max_layer ) |
|
extern |
Dessine les sprites dont la renderPriority est dans l'intervalle.
- Paramètres
-
| p | Pointeur vers la Pool. |
| min_layer | Couche minimale (inclusive). |
| max_layer | Couche maximale (inclusive). |
◆ Sprite_draw_sprite()
Dessine un sprite à la position donnée.
- Paramètres
-
| sprite | sprite à dessiner |
| pos | position à laquelle dessinner le sprite |
| tag | Ce tag est utilisé pour savoir si l'entité doit ignorer la rotation ou non |
◆ Sprite_set_animation()
| void Sprite_set_animation |
( |
Sprite * | sprite, |
|
|
int | frameCount, |
|
|
int | delay ) |
|
extern |
Configure l'animation d'un sprite.
- Paramètres
-
| sprite | sprite à configurer. |
| frameCount | Nombre total de frames dans l'animation. |
| delay | délai entre chaque frame de l'animation. |
◆ Sprite_set_SourceRect()
| void Sprite_set_SourceRect |
( |
Sprite * | sprite, |
|
|
float | x, |
|
|
float | y, |
|
|
float | width, |
|
|
float | height ) |
|
extern |
Définit le rectangle source pour le sprite.
Utilisé pour sélectionner une portion de la texture comme image du sprite.
- Paramètres
-
| sprite | sprite à configurer. |
| x | coordonnée X du coin supérieur gauche dans la texture. |
| y | coordonnée Y du coin supérieur gauche dans la texture. |
| width | largeur du rectangle source. |
| height | hauteur du rectangle source. |
◆ Sprite_set_texture()
| void Sprite_set_texture |
( |
Sprite * | sprite, |
|
|
int | renderPriority, |
|
|
int | textureID ) |
|
extern |
Ajoute une texture avec les valeurs pas défauts.
- Paramètres
-
| sprite | Composante du sprite |
| renderPriority | Layer a laquelle on affiche le sprite |
| textureID | ID de la texture a utiliser (assets.h) |
VALEURS PAR DEFAUT :
- srcRect : texture entière
- center : centre de la texture
- scale : 1x1
- rotation : 0
- non animé // TODO: faire un autre systeme?
◆ UpdateAnimation()
| void UpdateAnimation |
( |
Sprite * | sprite | ) |
|
Met à jour l'état d'animation interne d'un sprite.
Incrémente le timer d'animation et change la texture actuellement affichée si nécessaire
- Paramètres
-
| sprite | Pointeur vers le Sprite. |