Sprites de voitures et de vaisseaux sous tous les angles
Une voiture dans un jeu de course en vue de dessus ou un vaisseau dans un shooter façon Asteroids tourne vers n’importe quel cap. Faire pivoter un sprite dans le moteur abîme ses pixels ; dessiner 32 angles à la main prend des jours. À partir d’un modèle 3D, chaque angle est un rendu.

Pourquoi les véhicules ont besoin d’autant d’angles
Un personnage dans un RPG en vue de dessus marche dans quatre ou huit directions, il lui faut donc quatre ou huit côtés. Un véhicule est différent : il se dirige. Une voiture qui prend un virage ou un vaisseau qui tourne sous le stick passe par tous les caps intermédiaires, et si le sprite ne peut en montrer que huit, il saute de l’un à l’autre par paliers visibles de 45 degrés.
Les jeux résolvent cela de trois façons :
- Faire pivoter un sprite dans le moteur. Économique, mais pivoter du pixel art le rééchantillonne. À tout angle autre que 90 degrés, les lignes se brisent, les pixels isolés doublent ou disparaissent, et avec le lissage les bords deviennent flous. Cela ne ressemble plus à du pixel art.
- Dessiner chaque angle à la main. C’est juste visuellement, et c’est beaucoup de travail : 32 angles d’une voiture, plus sa version abîmée, plus chaque couleur d’équipe. Chaque changement du design oblige à tout redessiner.
- Rendre chaque angle à partir d’un modèle 3D. C’est ce que faisaient les jeux de course et de tir des années 1990 avec des sprites pré-rendus, et ce que fait Pixor avec un anneau de caméras.
Combien d’angles
| Angles | Palier | Convient pour |
|---|---|---|
| 8 | 45° | Chars et unités qui tournent lentement, jeux de stratégie |
| 16 | 22.5° | La plupart des jeux de course et de tir en vue de dessus, les tourelles |
| 32 | 11.25° | Direction fluide, vaisseaux qui tournent librement |
| 64 | 5.6° | Grands sprites de véhicules, virages lents et précis |
Plus le sprite est grand, plus il lui faut d’angles : un vaisseau de 16 pixels change à peine entre deux caps proches, une voiture de 64 pixels saute visiblement.
Vue de dessus, droit vers le bas
Pour un vaisseau ou une voiture vus d’en haut, rendez avec la vue de dessus et un anneau de côtés :
pxr render race-car.glb --preset selout --view top-down --size 40 --ring 16 \
--clip none --export png,json -o car.png

--ring 16 place 16 caméras autour du modèle, dans le sens antihoraire à partir de l’avant, une par côté, toutes partageant une taille et une échelle de pixels par mètre, de sorte que la voiture a la même taille à chaque cap et tourne autour d’un seul pivot fixe. La planche a une ligne par côté ; le JSON nomme chacune, pour que le jeu choisisse l’image selon le cap. --ring va de 1 à 64 ; --sides 0,10,20,... prend plutôt votre propre liste d’angles.
Dans l’application, ajoutez une caméra avec + dans l’Arborescence, choisissez Une caméra pour… › Shooter en vue de dessus (droit vers le bas, 16 côtés, 32 px), ou réglez Vue sur la caméra Sud et utilisez Anneau autour du modèle pour 4, 8, 16 ou 32 côtés.
La vue de course
Les jeux de course en vue de dessus de l’ère arcade regardaient souvent de haut en biais, si bien que chaque angle montrait aussi le côté de la voiture. La caméra Course fait cela : 12° vers le bas, 16 côtés, 64 px.
pxr render race-car.glb --preset selout --camera racing --clip none -o car-racing.png

Une lumière qui reste fixe, ou qui tourne avec la voiture
Par défaut, la lumière principale suit la caméra : elle se trouve du même côté dans chaque vue. Pour un jeu en vue de dessus, c’est souvent ce qu’on veut, parce que chaque cap est éclairé pareil et qu’un sprite a le même aspect quelle que soit sa direction.
Si la lumière doit rester fixe dans le monde, de sorte qu’une voiture tournée à l’opposé du soleil ait son côté ombré vers le joueur, désactivez Suit la caméra sur la lumière principale (--light-space world). L’animation ci-dessus utilise une troisième voie : --turntable 32 fait tourner le modèle lui-même une fois sous une seule caméra, comme une action de 32 images, de sorte que la lumière glisse sur la coque pendant qu’il tourne.
Animé sous tous les angles
Un véhicule bouge souvent en tournant : les roues tournent, un moteur vacille, une tourelle suit. Donnez-lui un clip et chaque côté reçoit chaque image :
pxr render spaceship.glb --preset selout --view top-down --size 48 --ring 32 \
--clip all --export png,json,godot
Les planches grossissent vite à 32 côtés ; --max-height 4096 découpe une planche haute en pages, avec des clips entiers par page, et --dedupe ne stocke qu’une fois les images identiques. Les vaisseau spatial, voiture de course et voiture de police de la bibliothèque sont des modèles CC0 gratuits pour essayer.
Des variantes gratuites
Comme chaque angle vient d’un seul modèle, les variantes ne coûtent rien à dessiner. --variant hit-flash écrit une version avec flash pour les dégâts ; --team avec --variant team:blue recolore une couleur d’équipe ; --material-colour donne à une voiture une nouvelle peinture. La section variantes de palette du manuel les liste toutes. Pour les vaisseaux qui montent dans l’écran au lieu de tourner, voir les sprites de shmup.
Questions
Combien de rotations faut-il à un sprite de voiture en vue de dessus ?
16 est le minimum habituel pour une direction fluide ; 32 paraît fluide à la plupart des vitesses, et 64 convient aux grands sprites ou aux virages lents et précis. Les vaisseaux des jeux façon Asteroids ont souvent 16 ou 32. Moins de 16 paraît saccadé.
Pourquoi ne pas faire pivoter un seul sprite dans le moteur ?
Faire pivoter du pixel art d’un angle autre que 90 degrés le rééchantillonne : les lignes se brisent, les pixels isolés doublent ou disparaissent, et avec le filtrage les bords deviennent flous. Un rendu à chaque angle garde des lignes nettes d’un pixel à chaque cap.
Le véhicule peut-il aussi avoir une animation sous chaque angle ?
Oui. Avec un clip, chaque côté reçoit chaque image : le vacillement de la poussée d’un vaisseau ou les roues qui tournent d’une voiture à 16 caps tiennent dans une seule planche avec une ligne par côté.
À lire ensuite
- Tailles de sprites pour les jeux en pixel art
- Contours
- Selout : contours sélectifs
- Pixel art isométrique
- De la 3D au pixel art : le guide complet
Essayez-le sur votre propre modèle, gratuitement dans votre navigateur, ou procurez-vous la version complète.
Essayer dans le navigateur Obtenir Pixor