Obligement - L'Amiga au maximum

Samedi 20 avril 2024 - 16:16  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

Actualité (récente)
Actualité (archive)
Comparatifs
Dossiers
Entrevues
Matériel (tests)
Matériel (bidouilles)
Points de vue
En pratique
Programmation
Reportages
Quizz
Tests de jeux
Tests de logiciels
Tests de compilations
Trucs et astuces
Articles divers

Articles in english


Réseaux sociaux

Suivez-nous sur X




Liste des jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z,
ALL


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Galeries

Menu des galeries

BD d'Amiga Spécial
Caricatures Dudai
Caricatures Jet d'ail
Diagrammes de Jay Miner
Images insolites
Fin de jeux (de A à E)
Fin de Jeux (de F à O)
Fin de jeux (de P à Z)
Galerie de Mike Dafunk
Logos d'Obligement
Pubs pour matériels
Systèmes d'exploitation
Trombinoscope Alchimie 7
Vidéos


Téléchargement

Documents
Jeux
Logiciels
Magazines
Divers


Liens

Associations
Jeux
Logiciels
Matériel
Magazines et médias
Pages personnelles
Réparateurs
Revendeurs
Scène démo
Sites de téléchargement
Divers


Partenaires

Annuaire Amiga

Amedia Computer

Relec


A Propos

A propos d'Obligement

A Propos


Contact

David Brunet

Courriel

 


Actualité : Dans les coulisses du développement d'Uridium 2 (troisième partie)
(Article écrit par Derek De La Fuente et extrait de Joystick - décembre 1992)


Voici la troisième partie du journal de bord d'Andrew Braybrook sur le développement de son nouveau jeu de tir, Uridium 2.

Septembre, deuxième semaine

Le moment du grand plongeon est arrivé, il est temps de découper le programme en deux parties. Je dois pouvoir les charger séparément dans l'éditeur de liens, pour les tester et les déboguer sans trop de galères. Ras le bol de charger le programme sur le PC pour le rebalancer sur Amiga. Dans la version finale, le jeu chargera la partie relogeable à partir de la disquette puis la placera en mémoire Fast ou en mémoire normale, selon la bécane. Ensuite je peux déplacer tout le programme et ses données afin de faire de la place aux graphismes et aux sons échantillonnés qui doivent se trouver en mémoire centrale. Toutes ces opérations m'ont pris deux jours et demi de temps, la dernière phase était la plus compliquée.

Comment tester mon programme qui reloge la mémoire ? Celui-ci n'est supposé gérer que les fichiers chargés directement à partir de la disquette, ce qui implique qu'il ne doit pas y avoir de débogueur en mémoire. J'ai donc été obligé de construire une version hybride entre le débogueur et le programme final. Je suis encore obligé de tricher un peu en intégrant les graphismes et les sons directement plutôt que de les charger à partir de la disquette. Enfin bref, tout marche finalement.

Uridium 2

Septembre, troisième semaine

Les premiers décors de fond, les premières cartes, viennent d'être réalisés à l'aide de notre nouvel outil interne sur PC, notre éditeur de carte. Je ne construis jamais d'éditeur de cartes à l'intérieur de mes programmes pour les retirer au dernier moment. Je déteste écrire des éditeurs de cartes. Nous utilisons donc un éditeur de cartes maison général qui nous servira pour nos prochains produits. Celui-ci est écrit sur PC et utilise le mode VGA qui est le mode le plus standard incluant tous les autres modes courants, quelles que soient les bécanes. Nous ne pouvons utiliser nos éditeurs de cartes Atari ST car le jeu utilise 32 couleurs ce qui est plus que l'Atari ST ne peut supporter.

Malheureusement, le programmeur auteur de l'éditeur de cartes a quitté la compagnie et son programme n'est pas terminé. Ce qui rend les choses encore plus intéressantes ! De nombreuses options ne sont pas encore intégrées et des bogues traînent dans les coins. Jason, notre expert en son, a tenté de synthétiser de la voix ce week-end. Il vient de m'informer que les échantillons de sons ont grossi pour atteindre maintenant 140 ko. C'est bien plus que tout ce que j'ai pu mettre dans un jeu jusqu'à maintenant, je préférais les sons générés aux échantillons. Bien sûr, certains sons ne peuvent être générés de cette façon et nous avons dû utiliser un compromis entre les deux techniques.

Je viens de découvrir un bogue atroce dans le système de défilement : descendre de plus deux écrans provoque une véritable explosion de l'écran, tout se mélange dans tous les sens. Incroyable que ce bogue soit resté aussi longtemps sans que personne ne s'en aperçoive. J'ai mis du temps à localiser le problème, maintenant le fichier est "en travaux".

Uridium 2

La première carte est enfin terminée et vient d'être intégrée au jeu, ce qui met en avant un problème quant à la génération des vaisseaux ennemis. Ils apparaissent à partir de coordonnées fixes, ce qui est suffisant pour un jeu qui ne défile pas verticalement, et qui est un problème s'ils débarquent tout en haut de la carte et foncent latéralement. Tous les évènement doivent se dérouler à l'écran visible sinon le joueur risque de passer à côté de l'action.

Maintenant que la musique et les sons ont largement été testés, je peux me permettre de les virer de ma version de travail d'Uridium 2, ce qui me libère 140 ko de mémoire. Je n'ai pas envie de rendre toute l'équipe cinglée avec la même musique qui tourne plusieurs heures par jour. Même si le morceau est excellent.

Septembre, quatrième semaine

Les deux parties d'Uridium 2, la section Manta et celle où l'on dirige le robot, divergent de plus en plus : graphismes de fond et sprites différents, je vais donc les séparer en deux programmes, en deux blocs distincts. Cela fait de la place en mémoire normale, puisque les graphismes doivent se trouver à cet endroit, quel que soit le nombre de gigaoctets de mémoire Fast dont dispose votre ordinateur. Les échantillons de sons doivent se trouver dans cette partie de la mémoire eux aussi.

Je viens de me transformer en réparateur télé, mon moniteur n'arrêtait pas de déconner, et en particulier le rouge qui se coupait souvent. A force de brancher et de débrancher les prises arrière pendant le développement de Fire & Ice, pour passer de l'Atari STE à l'Amiga, les soudures sont devenues fragiles. Avec les 25 000 volts qui traînent autour du tube, j'ai plutôt intérêt à faire hyper gaffe.

J'ai apporté quelques modifications au programme, maintenant il accepte n'importe quel type d'extension de mémoire. Retour au jeu lui-même, maintenant. Il est bon de régler quelques petits détails, si le joueur appuie sur feu pendant que "Player 1 Ready" est affiché alors le jeu démarre tout de suite. Quand c'est le joueur 1 qui joue, le score du joueur 2 est assombri et vice versa, ainsi, d'un coup d'oeil, les joueurs savent où ils en sont.

La routine qui gère les missiles à têtes chercheuses a aussi été améliorée, maintenant ils ne tourneront plus en rond comme des crétins si leur cible a disparu avant qu'ils ne la touchent. Je dispose maintenant de véritables graphismes pour les séquences à l'intérieur du vaisseau, je n'aurai plus à utiliser les sprites de Paradroid '90 pour tester mes routines. J'ai jeté un coup d'oeil à mon vieux programme sur C64 (Uridium premier du nom) pour voir ce que je faisais avec les vaisseaux volants. Mon nouveau programme m'autorise beaucoup plus de déplacements en formations de vaisseaux. A l'époque, j'avais laissé de côté la possibilité d'un mode chasse pour les ennemis : un vaisseau se déplace et se cale face au vaisseau du joueur avant de tirer. Maintenant c'est envisageable, et avec des déplacements beaucoup plus fluides.

Octobre, première semaine

Pour que le joueur en prenne encore plus dans la tronche, je réfléchis à l'élaboration de nouveaux vaisseaux ennemis. J'ai beaucoup plus de liberté sur Amiga que sur C64, je peux animer plus d'objets à l'écran et varier les méthodes et les tailles d'affichage. La première chose nouvelle que je désirais intégrer était un vaisseau qui décolle des pistes. Il serait d'abord tranquillement installé, garé, et décollerait pour éviter les tirs qui lui arrivent dessus.

Uridium 2

Autres nouveautés ajoutées cette semaine, les tours laser cachées. Elles ne peuvent être touchées que quand elles sortent pour tirer. Deux tours tirs trois balles en arc de cercle, et deux autres qui tirent un cercle complet de projectiles. Dans un jeu comme Uridium, le joueur bouge sans arrêt plutôt que d'être transporté tranquillement par un défilement latéral, du coup, les ennemis n'ont pas besoin de trop se déplacer. Ce qui permet de ne pas trop surcharger les routines d'affichage qui proposent un juste milieu entre le nombre d'objets à afficher et la rapidité pour le faire. Un 68000 ne prend presque pas de temps pour exécuter une instruction, mais afficher un objet demande des centaines, voire des milliers d'instructions et ça prend du temps cette fois.

Court passage technique spécial gros travaux

Le programme que je suis maintenant en train d'écrire ne concerne pas vraiment l'affichage rapide d'objets qui, quand vous utilisez le Blitter, est quasiment au maximum de l'optimisation possible. Le multitâche est un bon moyen de gérer le temps pour exécuter en priorité les évènements obligatoires et laisser de côté ce qui n'est utile. Mais utiliser le multitâche dans un jeu pour ce qui concerne l'affichage est loin d'être évident. Dans Uridium 2, je n'utilise cette technique que pour gérer le panneau des scores des joueurs.

En mémoire, je dispose de trois écrans internes. Habituellement, on en utilise deux en affichant les objets sur l'écran caché pendant que le joueur visualise et réagit au premier, puis en scindant les deux écrans au moment de la synchronisation verticale. Ainsi, le joueur ne voit jamais la construction de l'écran, il n'y a pas de clignotement. Il reste toujours un peu de temps entre le moment où l'écran est fini d'être construit, et le moment où l'on attend la synchronisation verticale. J'utilise ce temps pour travailler sur un troisième écran immédiatement. Ainsi, quand l'écran nouveau s'affiche, j'en ai déjà le quart d'un autre de prêt. Bien sûr, tout cela prend pas mal de mémoire, trois écrans, c'est lourd en place, et les manipulations sont plus nombreuses.

Fin du court passage technique spécial gros travaux

J'ai convié mes testeurs pilotes à venir au bureau, Richard Harvey et Robert Orchard, pour qu'ils me disent ce qu'ils pensent de l'évolution d'Uridium 2. Ils connaissent bien le produit, Robert est même l'inventeur du nom du jeu. Habituellement, ils me crachent une liste de 26 critiques en quelques secondes, et Robert a même réussi à faire voler le Manta vers l'arrière deux fois de suite. Ce n'était pas arrivé depuis des mois. Nous avons essayé de le refaire par la suite et cela nous a pris des jours.

J'ai changé quelques paramètres de vitesse et d'accélération, on verra s'ils réussiront à le refaire la prochaine fois. Je n'avais pas l'intention d'installer des ombres pour tous les vaisseaux ennemis, pourtant cela fait beaucoup de différence, le jeu est bien plus agréable. J'ai donc modifié mon programme de gestion des sprites pour qu'il gère les ombres aussi, ce qui implique de transformer tous les sprites colorés en noir et de les afficher en dessous et à droite de l'objet principal. Il faut absolument que je pense à nettoyer les moniteurs avant que quelqu'un d'autre ne débarque dans le bureau avec un appareil photo.

A suivre...


[Retour en haut] / [Retour aux articles] [Article précédent] / [Article suivant]