Yume Project 3.0
Touhou-inspired Danmaku game made in C only
Chargement...
Recherche...
Aucune correspondance
Référence du fichier physics.h

Composante de Cinématique (Mouvement). Plus de détails...

#include "ecs/component.h"
#include <raylib.h>

Aller au code source de ce fichier.

Classes

struct  Physics
 composante physique dans l'ECS Cette composante ajoute les notions de vitesse, accélération, vélocité angulaire et force newtonienne à une entité. Plus de détails...

Macros

#define NO_MAX_SPEED   999999
#define NO_MIN_SPEED   -999999

Définitions de type

typedef struct Physics Physics
 composante physique dans l'ECS Cette composante ajoute les notions de vitesse, accélération, vélocité angulaire et force newtonienne à une entité.

Fonctions

 DECLARE_SETTER_GETTER (Physics, Vector2, force)
Physics Physics_create_speed (float speed)
 Crée une composante physique avec uniquement la speed.
void Physics_update_all (Pool *p)
 Met a jour toutes les composantes physiques.

Description détaillée

Composante de Cinématique (Mouvement).

Ce module gère l'intégration du mouvement pour les entités. Il s'occupe exclusivement du déplacement et NON des collisions.

SYSTÈME D'UNITÉS :

  • Distance : Pixels
  • Temps : Secondes (dépend du Delta Time)
  • Vitesse : Pixels / Seconde
  • Accélération : Pixels / Seconde²
  • Angles : Degrés (0° = Droite, 90° = Bas, Sens Horaire)

DONNÉES GÉRÉES :

  • velocity (Vector2) : Vecteur de déplacement calculé à chaque frame.
  • speed (float) : Scalaire de la vitesse
  • min/maxSpd (float) : Bornes pour la vitesse
  • accel (float) : Taux de changement de la vitesse (pour accél/freinage).
  • angVel (float) : Vitesse angulaire en degrés/seconde.

DÉPENDANCES :

  • [READ/WRITE] Position ( Pos(x, y), angle)

NOTE :

  • La vélocité scale avec la valeur absolue de speed -> speed PEUT être négative Dans ce cas, l'angle est incrémenté de 180° (demi-tour)

Documentation des macros

◆ NO_MAX_SPEED

#define NO_MAX_SPEED   999999

◆ NO_MIN_SPEED

#define NO_MIN_SPEED   -999999

Documentation des définitions de type

◆ Physics

typedef struct Physics Physics

composante physique dans l'ECS Cette composante ajoute les notions de vitesse, accélération, vélocité angulaire et force newtonienne à une entité.

Documentation des fonctions

◆ DECLARE_SETTER_GETTER()

DECLARE_SETTER_GETTER ( Physics ,
Vector2 ,
force  )

◆ Physics_create_speed()

Physics Physics_create_speed ( float speed)
extern

Crée une composante physique avec uniquement la speed.

Toutes les autres valeurs sont initialisées à 0 et NO_MAX/MIN_SPEED

Paramètres
speed: Vitesse
Renvoie
Composante physique associée

◆ Physics_update_all()

void Physics_update_all ( Pool * p)
extern

Met a jour toutes les composantes physiques.

Paramètres
pLa pool d'objet a updater