Transformations élémentaires Flashcards
Quelles sont les trois catégories de transformations pour les GameObjects dans les jeux?
Les translations, les rotations et les mises à l’échelle.
Parmi les trois transformations élémentaires, lesquelles sont les plus courantes et nécessaires?
Les translations et les rotations.
Qu’est-ce que la mise à l’échelle et pourquoi était-elle évitée sur les anciennes consoles?
La mise à l’échelle consiste à redimensionner une image pour l’afficher dans une résolution différente de sa taille initiale. Elle était évitée sur les anciennes consoles car elle est coûteuse en termes de traitements.
Qu’est-ce qu’un sprite dans le contexte des jeux vidéo?
Un sprite permet l’affichage d’une image 2D (ou d’une partie de celle-ci) à l’écran. Il peut être déplacé, tourné et mis à l’échelle, et sa teinte de couleur peut être modifiée.
Comment peut-on modifier les facteurs de transformation d’un sprite dans SFML?
On peut utiliser des accesseurs spécifiques ou les méthodes move, rotate et scale qui ajoutent un facteur de transformation à ceux existants.
Où se trouve l’origine d’un sprite par défaut dans SFML?
Par défaut, l’origine du sprite est placée en haut à gauche.
Pour quels types d’éléments est-il préférable de garder l’origine par défaut d’un sprite (en haut à gauche)?
Cette origine convient bien pour les éléments de décor ou tout autre élément avec lequel les acteurs du jeu interagissent.
Où place-t-on généralement l’origine d’un sprite représentant un acteur dans un jeu?
Il est d’usage courant que l’origine d’un acteur soit placée au centre de celui-ci.
Quelle méthode permet de modifier l’origine d’un sprite dans SFML?
La méthode setOrigin.
Comment exprime-t-on les limites d’un sprite à l’écran?
Les limites s’expriment à l’aide d’un rectangle englobant l’espace occupé par le sprite à l’écran.
Quelle méthode permet d’obtenir les limites d’un sprite qui tiennent compte de toutes ses transformations?
La méthode getGlobalBounds.
Quelle méthode permet de tester l’intersection (ou collision) entre deux rectangles de sprites?
La méthode intersects.
Pourquoi le rectangle englobant peut-il être un mauvais reflet de la réalité pour la détection de collision?
Parce qu’un sprite peut être déplacé, tourné et mis à l’échelle, ce qui fait que le rectangle englobant peut contenir beaucoup d’espace vide, notamment après une rotation.
Quel est le comportement par défaut lorsqu’on assigne une image à un sprite avec setTexture?
Par défaut, l’entièreté de l’image est affichée à l’écran, et le rectangle d’affichage possède les mêmes dimensions en pixels que la texture d’origine.
Dans quel cas voudrait-on afficher seulement une partie d’une texture?
C’est notamment le cas lorsque l’on fait de l’animation à l’écran, où chaque frame de l’animation correspond à une partie différente d’une même texture.
Quelle méthode permet de spécifier quelle partie d’une texture on souhaite afficher?
La méthode setTextureRect.
Comment détermine-t-on généralement les coordonnées du rectangle qu’on souhaite utiliser pour afficher une partie d’une texture?
L’utilisation d’un logiciel permettant de visualiser une image est souvent l’alternative la plus simple, bien que ce soit une opération manuelle qui peut être longue et susceptible d’entraîner de légères erreurs.