camelot-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Camelot-discuss] Re: Camelot en progres


From: Sven Luther
Subject: [Camelot-discuss] Re: Camelot en progres
Date: Thu, 17 Oct 2002 08:22:00 +0200
User-agent: Mutt/1.4i

Salut, ...

J'ai penser a un petit plan d'action.

Avant meme de partir sur la description des scenes, j'ai penser, que
comme le ttype de jeux que nous desirons creer, c'est plutot des jeux a
scrolling, alors dans un premier temps ce serait bien de definir un
module pour faire un affichage a l'ecran et faire scroller l'image
bitmap. Qu'en pense tu ?

Peut tu regarder ocamlsdl et ses surfaces pour voir quel sont nos
possibilites techniquement pour les utiliser de maniere efficaces.

Basiquement, dans baldur's gate, du moins d'apres les structures de
donnes utilises, il s'agit d'une surface sauve/accessible par carreaux
de 64bitx64bit. Comme cela on n'a pas besoin d'avoir l'ensemble de la
bitmap en memoire, mais uniquement une partie, et rajouter les bouts
manquants au fur et a mesure du scrolling.

Pour cela il faut pouvoir etendre la surface de cote, et elimine des
bouts non utilise. Je ne sais pas comment ocaml et sdl peut gerer cela,
et comme tu me disais que tu avais pas mal le temps, peut etre serait-il
sympa de deja regarder comment cela se passe.

Note aussi, que cela permet d'etendre notre projet a d'autre jeux de
scrolling, tel galaga ou tous les shot-them-up.

Ceci dis, l'idee c'est d'avoir un module/foncteur de recuperation de
carreaux et de scrolling, sans penser encore a l'ajout de sprites et
autre dessus, et d'avoir en argument du foncteur un module de
recuperation des carreaux, c'est a dire de transformation de la
structure de donnee reellement utilise a celle utilise par le moteur de
scrolling/affichage.

De cette maniere, on peut s'adapter a la taille des carreaux, avoir un
argument pour lire les donnees baldur's gate directement, mais aussi
eventuellement avoir un moteur 3D qui genere les carreaux directement
depuis une structure de donnee 3D. Sur, cela ne permet pas directement
d'utiliser l'acceleration 3D des cartes graphiques, mais avec l'ajout
progressif de l'acceleration hardware pour offscreenMESA, meme cela on
peut l'obtenir. Et si on precalcule nos carreaux, cela devrait etre
assez rapide, meme en software. Cela necessite cependant un moteur 3D
capable de faire des scenes completes, et d'en calculer juste un bout.
Si on fait cela en software, on peut imaginer un moteur utilisant la
radiosite par exemple (on calcul une fois la luminosite, puis on a juste
l'affichage a faire).

Et si par la suite on veut passer a de la vrai 3D accellere, il suffira
de le faire.

Si je me trompe pas, les surfaces SDL peuvent etre (ou sont) directement
reserve dans la memoire video des cartes graphiques, et il est donc
facile de modifie le foncteur de scrolling de maniere a juste changer
l'offset de debut de fenetre graphique, et a faire le rendu dans les
parties du framebuffer (FB par la suite) qui vont prochainement etre
affiche. J'ai vu une conference ou on modelisait le halle d'accueil du
marx plank institut de sarbrucken de cette maniere la. (Bien sur, eux
ils avait de grosse et cher becanne pour le faire, mais bon la n'est pas
le probleme, on veut pas faire de la realite virtuelle, mais un jeu.)

Bon, qu'en pense tu ?

Je t'envoie cela a toi ainsi qu'a la liste camelot, mais bon, je sais
pas si cela va marcher.

Amicalement,

Sven Luther




reply via email to

[Prev in Thread] Current Thread [Next in Thread]