Trigonométrie et principes mathématiques Flashcards

1
Q

Pourquoi les mathématiques sont-elles importantes en programmation de jeux vidéo?

A

Les mathématiques jouent un rôle important en programmation de jeux vidéo, que ce soit pour les algorithmes complexes ou les déplacements élémentaires des acteurs dans l’écran. Les notions mathématiques du secondaire sont essentielles pour déterminer les nouvelles positions des acteurs à chaque mise à jour du jeu.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

À quoi sert le cercle trigonométrique dans le développement de jeux vidéo?

A

Le cercle trigonométrique permet de situer n’importe quel point autour d’une origine déterminée. C’est essentiel dans les jeux vidéo pour déterminer la nouvelle position d’un acteur à chaque mise à jour, qu’il se déplace aléatoirement ou vers un point précis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Quelle unité de mesure d’angle est utilisée par défaut dans les fonctions trigonométriques des langages de programmation?

A

Les fonctions trigonométriques des langages de programmation utilisent les radians et non les degrés par défaut.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Donnez la correspondance entre radians et degrés pour un cercle complet.

A

Un cercle complet correspond à:

360 degrés
2π radians (environ 6.28 radians)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Complétez ce tableau de conversion entre radians et degrés:

0 rad = ? degrés
π/2 rad = ? degrés
π rad = ? degrés
3π/2 rad = ? degrés
2π rad = ? degrés

A

0 rad = 0 degrés
π/2 rad = 90 degrés
π rad = 180 degrés
3π/2 rad = 270 degrés
2π rad = 360 degrés

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Qu’est-ce que le cosinus d’un angle en termes géométriques, et quelle est son utilité dans les jeux vidéo?

A

Le cosinus d’un angle est le rapport entre le côté adjacent d’un angle et l’hypoténuse. C’est la projection d’un vecteur sur l’axe des x. Il est très utile pour déterminer le déplacement gauche-droite à apporter à un acteur lors de sa mise à jour.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Qu’est-ce que le sinus d’un angle en termes géométriques, et quelle est son utilité dans les jeux vidéo?

A

Le sinus d’un angle est le rapport entre le côté opposé d’un angle et l’hypoténuse. C’est la projection d’un vecteur sur l’axe des y. Il est très utile pour déterminer le déplacement haut-bas à apporter à un acteur lors de sa mise à jour.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Qu’est-ce que la tangente d’un angle en termes géométriques, et quelle est son utilité dans les jeux vidéo?

A

La tangente d’un angle est le rapport entre le côté opposé et le côté adjacent d’un angle. C’est la pente. Elle est très utile pour déterminer l’angle entre deux acteurs lors de la mise à jour.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Comment calcule-t-on la pente entre un personnage et une cible dans un jeu 2D?

A

La pente entre un personnage et une cible se calcule avec la formule:

pente = (cible.y - perso.y) / (cible.x - perso.x)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Quelle fonction utilise-t-on pour trouver l’angle à partir de la pente en C++?

A

On utilise la fonction atan2 (ou atan2f pour les flottants), qui est la fonction de tangente inverse. Il est important d’utiliser atan2f et non atanf.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Écrivez le code C++ permettant de calculer l’angle entre un personnage et une cible.

A

float angle = atan2f(cible.y - perso.y, cible.x - perso.x);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Comment calcule-t-on la trajectoire d’un acteur connaissant sa position, son angle et sa vitesse?

A

On calcule les composantes du mouvement avec les formules:

mouvementX = cos(angle) * vitesse;
mouvementY = sin(angle) * vitesse;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

En quelles unités la vitesse d’un acteur est-elle généralement exprimée dans un jeu vidéo?

A

La vitesse s’exprime généralement en pixels par seconde. Il faut donc tenir compte du temps écoulé pour calculer correctement le déplacement.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Où se trouve l’origine de l’écran en programmation 2D et quelles implications cela a-t-il sur le mouvement vertical?

A

En programmation 2D, l’origine de l’écran est généralement située en haut à gauche. Par conséquent, une variation positive de la position Y d’un acteur le fera descendre dans l’écran, tandis qu’une variation négative le fera monter.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Si un acteur a un angle de 0 radian, dans quelle direction se déplacera-t-il?

A

À 0 radian, un acteur se déplacera horizontalement vers la droite, car cos(0) = 1 et sin(0) = 0, donc il n’y aura que du mouvement sur l’axe X positif.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Si un acteur a un angle de π/2 radians, dans quelle direction se déplacera-t-il?

A

À π/2 radians (90°), un acteur se déplacera verticalement vers le bas (en coordonnées d’écran), car cos(π/2) = 0 et sin(π/2) = 1, donc il n’y aura que du mouvement sur l’axe Y positif.

17
Q

Comment doit-on ajuster le calcul du mouvement pour tenir compte du temps écoulé?

A

Pour tenir compte du temps écoulé, on multiplie la vitesse par le temps:

mouvementX = cos(angle) * vitesse * deltaTime;
mouvementY = sin(angle) * vitesse * deltaTime;

où deltaTime est le temps écoulé depuis la dernière mise à jour en secondes.

18
Q

Si vous voulez qu’un acteur se déplace vers la gauche, quel angle en radians devriez-vous utiliser?

A

Pour un déplacement vers la gauche, l’angle doit être de π radians (180°), car cos(π) = -1 et sin(π) = 0, donc il y aura un mouvement négatif sur l’axe X.

19
Q

Comment calculer la distance entre deux acteurs en 2D?

A

On utilise le théorème de Pythagore:
distance = sqrt((acteur2.x - acteur1.x)² + (acteur2.y - acteur1.y)²)

En C++:
float distance = sqrtf(powf(acteur2.x - acteur1.x, 2) + powf(acteur2.y - acteur1.y, 2));

20
Q

Quelles sont les valeurs de cosinus et sinus pour les angles principaux du cercle trigonométrique (0°, 90°, 180°, 270°)?

A

0° (0 rad): cos = 1, sin = 0
90° (π/2 rad): cos = 0, sin = 1
180° (π rad): cos = -1, sin = 0
270° (3π/2 rad): cos = 0, sin = -1