Tribulations codalistiques d'un fennec au pays de la 3D (le blog de Xfennec)
Retour au blog <<

Rechercher

Archives

Mars 2005

Photos et résumé du stand Raydium à la LP9

Dimanche 20 mars 2005 à 17 h 31


Samedi a donc été une journée intéressante pour Raydium (voir cet article), puisque le stand du projet a eu un certain succès. Nous étions 6 pour présenter les divers aspects du moteur et les applications de démo et, couplé aux démos relativement complètes qui tournaient sur les machines, cela nous a laissé une assez grande liberté pour répondre aux questions du public, ce qui est assez nouveau. Des questions très généralistes, sur le jeu au sens large sous Linux par exemple, mais aussi des intérrogations très précises sur le moteur.
Il semble que de plus en plus de gens souhaitent pouvoir avoir accès à la création d'applications 3D temp réel, sans pour autant passer un temps "infini" à créer un moteur 3D ou à en dompter un déjà existant.
J'ai eu par exemple un contact avec une personne qui, après une description des capacités "out of the box" de Raydium, a dit d'un ton amusé un truc du genre "Je vous le prend ! combien ? ou on signe ?!". Bref, même si c'est pas un des buts originaux du projet, Raydium semble intéresser du monde, preuve probable de sa viabilité.

Dans un registre plus concret, l'amas de "jeunes" joueurs autour des machines, certains ayant même réussi à prendre possession d'une partie du stand, nous offrant ainsi la meilleur démo possible :


A noter aussi la sympatique interview vidéo réalisée sous le thème des "arts numériques", dont on espère pouvoir récupérer le montage final :


En début d'après-midi, une foule assez importante était présente autour du stand :


Et enfin une vue du groupe (pas tout à fait au complet ceci dit, puisqu'il manque Flex, planqué derrière l'appareil) :


En résumé, une journée bien remplie, beaucoup de contacts, quelques découvertes de bug, et une impression d'avoir fait avancer le schmilblick !
4 commentaires, dernier de Rigamix.

64 bits (ou : "et pour quelques bits de plus")

Samedi 12 mars 2005 à 14 h 00
Les "nouvelles" plateformes 64 bits commencent doucement à s'imposer, en particulier l'amd64, et comme Linux se porte pas trop mal sur ces procs, les premières demandes sont arrivées : "Raydium et le 64 bits : ça marche ?"
Première pensée : la galère. L'histoire de Raydium à fait qu'on a rarement regardé plus loin que le matos qu'on avait sous la main, c'est à dire le combo intel-amd-nvidia-ati-linux-windows, le tout en 32 bits. Les plateformes type PPC ("Mac"), par exemple, nous sont complétements inconnues.
Premier impact de cette horrible facon de faire : une probable incompatibilité en réseau entre les versions "PC" et "Mac" des jeux (Little Endian / Big Endian). Le plus amusant dans l'histoire, c'est que rien n'est fait dans Raydium pour pouvoir contrer ce problème facilement, ce qui promet de joyeuses heures de développement en plus.
Dès lors, imaginez l'ampleur du problème sur les amd64, puisqu'il ne s'agit plus ici de se mettre d'accord sur l'ordre de lecture des octets, mais aussi sur la taille des variables.
Un "int" (type natif par défaut du langage C), par exemple, fait en conséquence 32 ou 64 bits en fonction de la machine sur laquelle on compile le code.
Ça semble peut être n'être qu'un problème léger, vu de loin, mais c'est en fait un sombre calvaire à partir du moment ou cette situation n'a pas été envisagée dès la première ligne de code (ps: on approche des 50 000 lignes pour Raydium ...).

RyLe, autre codeur du groupe, possède le matos nécessaire au test (amd64 + mandrake 64), ce qui nous a offert la possibilité de tenter l'aventure.
Première étape, réussir à trouver et compiler les dépendances de Raydium sur ce proc :
- OpenGL : NVidia livre des pilote compilés pour amd64, pas de problème.
- Glut/GLU ("surcouches" GL) : Mesa est livrée de base dans la Mandrake amd64.
- OpenAL (son): la version CVS se compile sans problème, seule une légère modification dans la Makefile a été nécessaire.
- PHP (scripting): Le monstre se compile à merveille (étonnant, non ?)
- ODE (physique): C'était trop beau : des morceaux d'ODE sont codés en assembleur (timers), et Opcode (sous-librairie d'ODE) abuse d'astuces mémoire qui ne passent plus du tout sur les amd64 ( qui organisent leurs pages mémoires d'une manière très différente des procs intel32).
Après quelques messages sur la mailing list d'ODE, un type (Tanguy Fautre) dit être lui aussi en galère pour les mêmes raisons, et se porte volontaire pour tenter un portage d'Opcode en 64 bits. Quelques semaines plus tard et après quelques échanges, miracle : un patch pour Opcode semble émerger ! (c'est pas génial le logiciel libre ?)

Quelques ajustements plus tard, on passe à la compilation de Raydium : pas le moindre warning, pas la moindre modif à appliquer. (wtf ?! on fait du code propre maintenant ?)
Plus fort encore, notre test6 (mini FPS, application "témoin") semble tourner, même si des tests un peu plus poussés montrent qu'ODE semble péter un cable de temps en temps (souvent lors d'un lancement de roquette, a priori), et explose la scène.
On va organiser un bonne vieille soirée débug pour tenter de trouver la source de cette instabilité (Raydium ? ODE ? Opcode ?), pour passer ensuite aux "fameux" tests de la couche réseau.

Pour le reste, réunion ce soir pour monter l'association CQFD (plus de galères pour les assurances lors des salons et festivals), et feuille de style pour le blog qui singe celle du site de Raydium (qui essaye, en fait), et préparation pour la Linux Party de la semaine prochaine. (ManiaDrive, le "clone" de Trackmania a pas mal avancé cette semaine : sons, scores sur le net, mode réseau correct, ...).
2 commentaires, dernier de Xfennec.

Raydium à Nantes

Dimanche 6 mars 2005 à 18 h 31
Le projet bouillonne pas mal en ce moment, suite à l'invitation que nous avons reçue de Linux-Nantes pour participer à la Linux Party 9, à l'Olympic.

Par exemple, le site web de Raydium est enfin digne de porter le nom de "site", puisqu'il offre maintenant une véritable vue sur le projet, il est plutot sympa graphiquement et il remplit bien son rôle de portail.

On se concentre aussi pas mal sur la documentation, pour ouvrir le plus possible le projet vers d'autres développeurs potentiels, et ne plus seulement le restreindre à une petite bande d'initiés. Idem pour la compilation, qui devient de plus en plus proche des standards du genre sous Linux.

L'autre grosse partie du boulot qui reste à faire avant le 19 mars est de rendre les applications en cours de développement "montrables", de facon à avoir de la matière à exposer sur le stand.
Pour l'instant, il semble qu'on puisse disposer de :
- Kartagony, une sorte de jeu à la Mario Kart, mais sans Mario et l'ambiance chtinenfant, jouable en réseau par team
- Toujours New Sky Diver, l'indétrônable remake de SkyDiver sur Atari 2600
- test7, évolution du test6 pour proposer un module d'assemblage des véhicules "à la main" en utilisant la physique, PHP et le réseau
- ManiaDrive, petit clone sympa de Trackmania en Clio et en réseau
- Quelques démos tournantes, en fonction du nombre de machines dispos et de ce qu'on arrive à pondre entre temps

Ces deux prochaines semaines vont passer très vite vu tout ce qu'il reste à faire, mais quel délice de pouvoir exposer tout ce travail à des curieux.
Aux Nofragiens de la région Nantaise : rendez-vous sur le stand :)

Références :
Nouveau site du projet Raydium : http://raydium.cqfd-corp.org/
Linux Party 9 : http://www.linux-nantes.fr.eu.org/article.php3?id_article=306
New Sky Diver : http://skydiver.cqfd-corp.org/
4 commentaires, dernier de Xfennec.