Suivez-nous sur X

|
|
|
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
|
|
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
|
|
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
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Actualité : Dans les coulisses du développement d'Uridium 2 (quatrième partie)
(Article écrit par Derek De La Fuente et extrait de Joystick - janvier 1993)
|
|
Voici la quatrième partie du journal de bord d'Andrew Braybrook sur le développement de son nouveau
jeu de tir, Uridium 2.
Octobre, deuxième semaine
Cette semaine démarre avec une expérience. Quand vous êtes assis en train de programmer et que vous
vous demandez si le jeu que vous écrivez sera le dernier sur une machine donnée, vous commencez à
réfléchir à tout ce dont la bécane est capable, à tout ce que vous n'avez pas encore exploité.
L'une de ces caractéristiques est le mode double champ de jeu ("dual playfield"), avec deux décors de fond différents
simultanément à l'écran, en défilement différentiel ou pas, avec un nombre de couleurs limité pour chacun.
Je commence donc à me poser des questions, à réfléchir pour déterminer s'il serait trop difficile de
gérer deux écrans en même temps, qu'est-ce que cela pourrait donner, visuellement parlant et si le jeu sera
plus lent ou plus rapide qu'en mode 32 couleurs.
La première chose étonnante que j'ai découvert est qu'il est inutile de lancer six plans de bits pour obtenir
le mode double champ de jeu. J'ai toujours vu le mode deux écrans en sept couleurs chacun, et j'ai toujours pensé qu'il
devait en être ainsi, mais dans le manuel matériel de référence de l'Amiga, il est indiqué que l'on peut
utiliser n'importe quel mode entre deux et six plans. Très utile, puisqu'avec cinq plans uniquement, j'utiliserai
autant de mémoire écran que j'en utilise actuellement dans le programme tel qu'il est fait, et trois
couleurs devraient suffire largement pour le fond.
J'ai copié le programme tout entier d'Uridium 2 dans un autre répertoire de mon PC ; ainsi, je peux tout
modifier sans avoir tout à refaire si mon expérience s'avère un échec. Mon objectif est d'obtenir une
version en double champ de jeu d'Uridium 2 avec des graphismes débiles, juste pour tester la rapidité. Cela
m'a pris environ un jour et demi de programmation. J'ai dû changer toutes les routines d'affichage, les
routines de défilement, la routine de construction des Copper, et j'ai dû écrire un deuxième programme
de construction de décors de fond.
Parce que mon programme expérimental n'affichait que les trois premiers plans des graphismes en les
tirant des éléments à cinq plans, j'ai obtenu des résultats assez inattendus. Certaines couleurs sont
devenues transparentes, ce qui montrait beaucoup plus du champ arrière. L'effet de défilement
différentiel est ainsi bien plus prononcé, montrant l'écran arrière en permanence. La plupart des gens
qui ont vu cette nouvelle version étaient impressionnés ; c'est pourquoi je pense que cela peut valoir
le coup de continuer l'expérience et de convertir les graphismes en véritables éléments en trois plans ;
ce qui cause un problème pour la séquence d'introduction, puisque l'écran plasma et la police
en 3D prennent tous les deux 32 couleurs et ne pourraient être utilisés sept couleurs.
J'ai réfléchi et pensé alors à un programme qui serait capable de décider de lui-même, selon les conditions, s'il
devait afficher l'écran en mode double champ de jeu ou en 32 couleurs. Certaines routines ne pourraient fonctionner
pour les deux modes, et je ne pourrais faire tourner le programme actuel en 32 couleurs à cause des graphismes
résidents, ceux que l'on retrouve dans chaque niveau, qui sont codés en sept couleurs. Je ne veux pas stocker
deux programmes différents, la mémoire étant limitée.
Autre problème, réussir à choisir les sept couleurs, sachant que deux d'entre elles doivent être noires
et blanches, ou presque noires et presque blanches. Pourquoi donc les graphistes créent-ils leurs palettes
avec des couleurs dans n'importe quel ordre ? Un programmeur les mettrait en groupes de couleurs ou de
brillance pour pouvoir exécuter facilement des effets de fondu enchaînés, par exemple. Que peut-il bien
se passer dans la tronche d'un graphiste ?
Octobre, troisième semaine
Je n'ai toujours pas vu de palette qui me plaise réellement, je suis donc obligé de revenir à la version
32 couleurs. Je dois me décider rapidement, ne pouvant continuer à développer les deux versions
en parallèle pendant longtemps. Chaque fois que je trouve un bogue, je dois faire des modifications
dans les deux programmes. Mark Bentley est maintenant responsable des graphismes, sa première tâche
consiste à trouver une palette de sept couleurs satisfaisante.
J'ai apporté quelques modifications à la version double champ de jeu : différentes vitesses de défilements
différentiels, la possibilité d'afficher l'écran en trois couleurs par-dessus celui en sept
couleurs, et l'indépendance totale de l'écran trois couleurs pour l'utiliser, par exemple, pour
afficher un ennemi de fin de niveau imposant.
Si vous avez connu la version C64 d'Uridium, vous vous souvenez peut-être de la séquence inter-niveaux,
lorsque l'on voyait le Manta survoler un vaisseau ennemi en train de disparaître peu à peu. Cette
séquence utilisait une caractéristique du C64 qui n'a malheureusement pas été reprogrammée pour l'Amiga.
Le mode texte du C64 permettait de réactualiser 64 pixels en un caractère, en modifiant un seul octet.
L'Amiga dispose d'un écran bitmap énorme, il faut donc réactualiser des tonnes de données en permanence.
Essayer de reproduire le même effet que sur C64 aussi rapidement s'avère donc impossible ; je vais alors
préparer une toute nouvelle séquence. La caméra montrera le vaisseau ennemi de loin, alors qu'un petit
vaisseau s'en échappera laissant les explosions fuser de toutes parts. Le Manta apparaîtra alors en
plein écran avant de partir en hyperespace. Tout cela reste de la théorie, pour l'instant.
Nous disposons maintenant d'une palette expérimentale et Mark a brillamment converti les graphismes
32 couleurs en sept couleurs ; je peux donc construire une démo jouable sur disquette afin de la montrer
à d'autres personnes, pour décider de la version à choisir définitivement. Nous avons retenu une
gamme de couleurs dans les tons rouges-oranges-jaunes pour créer des explosions valables. Le peu
de couleurs restant ne nous permet d'ajouter que quelques bleus. Je ferai varier les palettes d'un
vaisseau à l'autre pour afficher plus de couleurs, et je peux en ajouter d'autres encore dans le fond
sur l'écran trois couleurs. Le champ d'étoiles qui se trouve encore derrière peut afficher huit couleurs ;
le résultat ne devrait donc pas être trop mauvais.
Octobre, quatrième semaine
Quelqu'un est venu avec d'excellents arguments et une bonne batte de baseball, et a réussi à me
convaincre de garder cette nouvelle version d'Uridium 2, avec les deux plans et les sept
couleurs. Quelques éléments du jeu ont dû être modifiés pour tourner avec le nouveau système. Les
bombes lâchées par le vaisseau Manta doivent vérifier qu'elles ne touchent pas des éléments de la
couche supérieure, bien sûr, mais aussi de celle du dessous. Jason Page est venu au bureau pour me faire
écouter de nouvelles musiques de sa création. Il a aussi rééchantillonné quelques-uns de ses choeurs.
La musique sonne donc encore mieux et elle prend 60 ko de moins, ce qui nous laisse un peu de place
pour améliorer la qualité du son des numérisations vocales.
J'ai travaillé sur la partie du jeu où l'on dirige un robot. J'ai créé un lot de graphismes qui
s'affichera par-dessus les graphismes de fond pour les faire disparaître lentement. Alors que les
générateurs monteront lentement, le niveau commencera à se mélanger, le joueur devra continuer à
se déplacer rapidement pour ne pas rester coincé contre des blocs. Un problème apparaît rapidement,
mon programme sature à cause du nombre trop élevé de sprites que cette technique implique.
J'ai donc essayé cette technique sur des écrans sans défilement, mais le programme sature encore.
Octobre, cinquième semaine
Jason Page a apporté quelques modifications à ses vieilles routines sonores. Nous avons décidé que le
programme devait être capable d'arrêter une musique en un point donné, en lancer une autre puis reprendre
la première là où elle en était. Cela donne un peu plus de liberté au musicien pour créer des musiques
qui accompagneront les arrivées des chefs de fin de niveaux, ou pour balancer des musiques de fanfares
quand le joueur met la pause. Nos jeux précédents continuaient à jouer la musique à un niveau sonore de
zéro pendant la pause ; ainsi, le joueur qui reprenait le jeu entendait la musique à un autre point.
J'ai repris tous les modèles d'attaque de la vieille version C64 d'Uridium, puis je les ai convertis
à mon nouveau format. Je les ai déplacés dans la mémoire et ai rechargé les anciens sans faire de copie
de sauvegarde ; du coup, j'ai perdu pas mal de boulot.
Si je recharge les anciens déplacements, c'est tout simplement pour pouvoir faire tester le jeu rapidement
et voir comment les gens réagissent face à la difficulté.
Novembre, première semaine
J'ai commencé à travailler sur un nouvel élément, l'affichage d'une petite carte dans le panneau de
contrôle. Le problème, avec les vaisseaux d'Uridium, est qu'ils sont très longs et très fins, un affichage
sur tout l'écran serait hors proportions ou tout petit, une carte qui défile
en bas de l'écran serait plus utile. Le facteur de réduction que je vais utiliser transformera un bloc
de 16 pixels sur 16 en un point d'un pixel ; ce sera donc une carte de contours qui montrera la forme
des vaisseaux ainsi que les murs. J'ai ramené une pédale d'effet qui modifie le niveau de la voix pour que Jason
Page puisse créer d'autres effets sonores. Il ne veut pas utiliser sa voix, nous allons donc la déguiser
en la baissant de tonalité. Il lui reste environ 100 ko de place mémoire pour les voix.
Nous sommes restés la fin de la semaine à Paris, au SuperGames Show. L'hospitalité française étant
toujours aussi agréable, nous avons passé un bref mais très plaisant séjour.
|