Tribulations codalistiques d'un fennec au pays de la 3D
Archives
- juillet 2008
- juin 2008
- mai 2008
- avril 2008
- mars 2008
- février 2008
- décembre 2007
- novembre 2007
- septembre 2007
- août 2007
- mai 2007
- mars 2007
- février 2007
- janvier 2007
- décembre 2006
- novembre 2006
- août 2006
- juillet 2006
- juin 2006
- mai 2006
- avril 2006
- mars 2006
- février 2006
- janvier 2006
- décembre 2005
- novembre 2005
- octobre 2005
- septembre 2005
- août 2005
- juillet 2005
- mai 2005
- avril 2005
- mars 2005
- février 2005
- janvier 2005
- décembre 2004
Août 2005
Cinéma : 2 captures du modèle en cours
Mercredi 31 août 2005 à 23 h 48
J'avance dans ma galère de salle de cinoche (c'est encore le début) :

Vue depuis l'arrière de l'écran

Vue globale
Les captures sortent de Raydium, et l'éclairage arrive d'une source unique : l'écran (vous verrez pourquoi si j'arrive à terminer eu'l bousin). J'ai viré les sièges (cf capture dans les commentaires du précédent article) pour l'instant, puisque trop complexes (trop de faces). J'ai fait une version plus light (c'est tout carré, même) des sièges, le modèle est texturé .. il ne me reste plus qu'a les placer dans la salle et prier pour le rendu des lumières par radiosité.

Vue depuis l'arrière de l'écran

Vue globale
Les captures sortent de Raydium, et l'éclairage arrive d'une source unique : l'écran (vous verrez pourquoi si j'arrive à terminer eu'l bousin). J'ai viré les sièges (cf capture dans les commentaires du précédent article) pour l'instant, puisque trop complexes (trop de faces). J'ai fait une version plus light (c'est tout carré, même) des sièges, le modèle est texturé .. il ne me reste plus qu'a les placer dans la salle et prier pour le rendu des lumières par radiosité.
4 commentaires, dernier de God.Ass.
Cherche : modèle 3D (avis aux infographistes)
Mardi 30 août 2005 à 15 h 01

Je cherche un modèle 3D, même simple, de l'intérieur d'une salle de cinéma. Y'a t'il quelqu'un ici qui dispose d'un truc dans le genre ou même d'une ébauche ?
2 commentaires, dernier de Xfennec.
Vidéo surprise ! (supa' preview)
Mardi 30 août 2005 à 00 h 04
Je devrais même pas releaser ça, m'enfin vous le méritez bien : http://ftp.cqfd-corp.org/rayManiaDriveMenuPreview.avi
(C'est juste un truc fait à l'arrache ce soir pour tester le concept ... Je tombe de sommeil, j'ai même pas regardé le résultat de l'encodage, la taille est énorme, mais qu'importe : je vais dormir !)
PS: un courageux pour faire une vignette d'apercu à ma place cette nuit ? :)
(C'est juste un truc fait à l'arrache ce soir pour tester le concept ... Je tombe de sommeil, j'ai même pas regardé le résultat de l'encodage, la taille est énorme, mais qu'importe : je vais dormir !)
PS: un courageux pour faire une vignette d'apercu à ma place cette nuit ? :)
4 commentaires, dernier de remouk.
Raydium : Vidéo
Lundi 29 août 2005 à 13 h 12
L'API Live, qui était déjà utilisée dans les démonstrations de réalité augmentée (cf articles précédents) et à nouveau exploitée pour un nouveau module Raydium : le support de la lecture de fichiers vidéo.

http://raydium.cqfd-corp.org/captures/rayLiveVideo.avi (1.8 Mo)
Il est donc possible de mapper une vidéo sur n'importe quel objet 3D, le tout en une seule ligne de code.
Je me suis posé la question du codec vidéo le plus intéressant pour ce besoin qui reste très particulier (streaming depuis le disque, très light en conso CPU, simple à encoder, portable, ...) et je suis arrivé une nouvelle fois à la conclusion suivante : do it yourself.
Le codec est donc fait maison, basé sur JPG, son petit nom est "JPGS" et je suis assez satisfait des perfs.
Par exemple, dans la vidéo présentée ici, j'ai utilisé le test de Breed par Nofrag. Le fichier d'origine (AVI/DivX) fait 40 Mo, et en fait 41 une fois transformé en JPGS. La scène rendue sans la vidéo tourne à 86 FPS et 85 avec, sur ma machine de test (GeForce 4 MX/Go), ce qui est très intéressant. La lecture de plusieurs vidéo en simultané est donc tout à fait imaginable, ce qui tombe très bien puisque j'ai créé ce module dans le but original de jouer des fichiers vidéo en fond d'un menu.

http://raydium.cqfd-corp.org/captures/rayLiveVideo.avi (1.8 Mo)
Il est donc possible de mapper une vidéo sur n'importe quel objet 3D, le tout en une seule ligne de code.
Je me suis posé la question du codec vidéo le plus intéressant pour ce besoin qui reste très particulier (streaming depuis le disque, très light en conso CPU, simple à encoder, portable, ...) et je suis arrivé une nouvelle fois à la conclusion suivante : do it yourself.
Le codec est donc fait maison, basé sur JPG, son petit nom est "JPGS" et je suis assez satisfait des perfs.
Par exemple, dans la vidéo présentée ici, j'ai utilisé le test de Breed par Nofrag. Le fichier d'origine (AVI/DivX) fait 40 Mo, et en fait 41 une fois transformé en JPGS. La scène rendue sans la vidéo tourne à 86 FPS et 85 avec, sur ma machine de test (GeForce 4 MX/Go), ce qui est très intéressant. La lecture de plusieurs vidéo en simultané est donc tout à fait imaginable, ce qui tombe très bien puisque j'ai créé ce module dans le but original de jouer des fichiers vidéo en fond d'un menu.
12 commentaires, dernier de Xfennec.
Raydium et Python
Jeudi 25 août 2005 à 13 h 00
Ca a été long, compliqué et chiant, mais je pense ne plus être très loin de la vérité : les bindings Python pour Raydium fonctionnent !

Va faire une image sexy pour montrer du Python, toi ...
http://raydium.cqfd-corp.org/svn.php?f=/trunk/raydium/swig/test.py
Concrétement, ça signifie qu'il est possible d'écrire des applications Raydium non plus uniquement en C/C++, mais aussi en Python, langage de script particulièrement à la mode (Battlefield 2, Vampire: Bloodlines, ...).
Pour donner une idée de la complexité de la tâche, il faut savoir que Raydium propose plus de 550 fonctions, utilise pas mal de callback et de bizarreries bien spécifiques au langage C...
L'utilisation de SWIG (http://www.swig.org/) est d'une grande aide pour ce genre de tâches, et ouvre la porte à des bindings pour d'autres langages intéressants, comme Perl et Java, même si une partie du travail effectué pour Python est à refaire pour chacun de ces langages.
Les bindings ne sont pas "figés", puisqu'ils sont générés avec un script PHP qui analyse les sources de Raydium pour créer le fichier d'interface. En résumé, c'est un script PHP qui permet d'écrire des applications en Python pour un moteur écrit en C qui utilise PHP pour la console (et d'autres bidules, comme le téléchargement automatique de textures, modèles, sons, ...) ... heureux brassage culturel :)
La suite du programme : trouver un testeur Python, porter le tout sous windows, tenter le coup avec Java, faire une version "light" de Raydium pour la PSP et continuer mes bidules en papier (cf article précédent).
PS : Je lance au passage un merci aux divers gens qui m'ont contacté par mail ces derniers temps.

Va faire une image sexy pour montrer du Python, toi ...
http://raydium.cqfd-corp.org/svn.php?f=/trunk/raydium/swig/test.py
Concrétement, ça signifie qu'il est possible d'écrire des applications Raydium non plus uniquement en C/C++, mais aussi en Python, langage de script particulièrement à la mode (Battlefield 2, Vampire: Bloodlines, ...).
Pour donner une idée de la complexité de la tâche, il faut savoir que Raydium propose plus de 550 fonctions, utilise pas mal de callback et de bizarreries bien spécifiques au langage C...
L'utilisation de SWIG (http://www.swig.org/) est d'une grande aide pour ce genre de tâches, et ouvre la porte à des bindings pour d'autres langages intéressants, comme Perl et Java, même si une partie du travail effectué pour Python est à refaire pour chacun de ces langages.
Les bindings ne sont pas "figés", puisqu'ils sont générés avec un script PHP qui analyse les sources de Raydium pour créer le fichier d'interface. En résumé, c'est un script PHP qui permet d'écrire des applications en Python pour un moteur écrit en C qui utilise PHP pour la console (et d'autres bidules, comme le téléchargement automatique de textures, modèles, sons, ...) ... heureux brassage culturel :)
La suite du programme : trouver un testeur Python, porter le tout sous windows, tenter le coup avec Java, faire une version "light" de Raydium pour la PSP et continuer mes bidules en papier (cf article précédent).
PS : Je lance au passage un merci aux divers gens qui m'ont contacté par mail ces derniers temps.
2 commentaires, dernier de Xfennec.
Petite capture d'écran
Vendredi 12 août 2005 à 14 h 18


C'est dur d'obtenir un rendu style "papier", mais je crois que je suis pas loin. Étape suivante de ce petit délire, maintenant ! :)
7 commentaires, dernier de LeGreg.
Terminé !
Jeudi 11 août 2005 à 01 h 20
Ca fait presque deux ans que ça dure, mais là je crois que j'en ai terminé : l'API de Raydium dispose de sa documentation complète !
Ok, tout le monde s'en fout, c'est pleins de fautes, coquilles et de mauvaises formulations (anglais rouillé inside) mais c'est un chantier gigantesque (environ deux ans, oui) qui se termine ce soir. Il ne me reste plus qu'a faire évoluer cette doc avec Raydium, ce qui devrait se faire tout en douceur (la doc est intégrée aux sources).
Le lien pour la version en ligne : http://raydium.yoopla.org/wiki/RaydiumApiReference et la version PDF avec ses 101 pages : http://raydium.cqfd-corp.org/data/doc/RaydiumApiReference0644.pdf
Je suis fier et soulagé, même s'il reste un gros travail de relecture, n'importe quel moteur digne de ce nom DOIT posséder sa doc.
Retour à des choses rigolotes avec la réalité augmentée (j'ai une idée de mise en scène sympa, reste à voir si je suis capable de mettre ça en oeuvre et s'il me reste assez de vacances).
Ok, tout le monde s'en fout, c'est pleins de fautes, coquilles et de mauvaises formulations (anglais rouillé inside) mais c'est un chantier gigantesque (environ deux ans, oui) qui se termine ce soir. Il ne me reste plus qu'a faire évoluer cette doc avec Raydium, ce qui devrait se faire tout en douceur (la doc est intégrée aux sources).
Le lien pour la version en ligne : http://raydium.yoopla.org/wiki/RaydiumApiReference et la version PDF avec ses 101 pages : http://raydium.cqfd-corp.org/data/doc/RaydiumApiReference0644.pdf
Je suis fier et soulagé, même s'il reste un gros travail de relecture, n'importe quel moteur digne de ce nom DOIT posséder sa doc.
Retour à des choses rigolotes avec la réalité augmentée (j'ai une idée de mise en scène sympa, reste à voir si je suis capable de mettre ça en oeuvre et s'il me reste assez de vacances).
8 commentaires, dernier de HaukeY.
Plusieurs marqueurs : ça marche ! (photos)
Samedi 6 août 2005 à 00 h 00
Un pote m'a ramené de nouveaux marqueurs, bien imprimés, et j'ai donc lancé les premiers tests avec 2 marqueurs :


L'éclairage est à la rue, mais c'est un détail. Je vais pouvoir tenter des choses un peu plus complexes (c'est à dire un marqueur pour la caméra, les autres pour des objets divers).


L'éclairage est à la rue, mais c'est un détail. Je vais pouvoir tenter des choses un peu plus complexes (c'est à dire un marqueur pour la caméra, les autres pour des objets divers).
Google : les tricheurs
Vendredi 5 août 2005 à 17 h 39
... je crois que ça commence à me gaver :
http://www.google.fr/search?hl=fr&q=raydium&btnG=Recherche+Google&meta=
Nous étions passés premiers depuis la dernière "Google dance", et là paf, à nouveau cette boite de merde (nan mais regardez moi ce site) repasse devant, avec rien. Zéro contenu, zéro liens.
Je ne trouve même pas trace d'une quelconque tricherie ...
Et le pire c'est que je ne sais même pas à quelle adresse envoyer mon mail d'insultes.
http://www.google.fr/search?hl=fr&q=raydium&btnG=Recherche+Google&meta=
Nous étions passés premiers depuis la dernière "Google dance", et là paf, à nouveau cette boite de merde (nan mais regardez moi ce site) repasse devant, avec rien. Zéro contenu, zéro liens.
Je ne trouve même pas trace d'une quelconque tricherie ...
Et le pire c'est que je ne sais même pas à quelle adresse envoyer mon mail d'insultes.
16 commentaires, dernier de eastwitch.
Le retour du pack d'applis 3D Raydium : Revenge
Jeudi 4 août 2005 à 19 h 58
Avec l'aide de l'ami remouk (grand merci !), je me suis rendu compte que le dernier pack de binaires win32 avait quelques problèmes. J'ai tenté de corriger le tir en y rajoutant les fichiers PHP qui manquaient à l'appel, et j'en ai aussi profité pour y coller une assez grande partie des données pour vous éviter de trops longues attentes au lancement des applis, même si le pack est du coup plus gros.
http://raydium.cqfd-corp.org/data/binary_packs/raydium-win32-binary-full.zip (15 Mo)
Pour ceux qui aiment les images avant de télécharger un truc, y'en a plein ici : http://raydium.yoopla.org/wiki/RaydiumMedia
Quelques rappels (gros et honteux copier/coller) :
- Si vous vous mangez une erreur "openal32.dll" ou un truc du genre, lancez l'installation de l'installeur OpenAL, je l'ai laissé dans le répertoire (ça dure 2 secondes) : OpenALwEAX.exe
- Les applis sont gavées d'arguments sur la ligne de commande, si vous en avez besoin (ce qui me vient en tête, c'est déjà le "--fullscreen").
- Si vous avez déjà touché à PHP, vous devez avoir moyen de vous marrer un peu (cf la console [touche ²] qui est un interprèteur PHP, par exemple)
- 99% de ces applis fonctionnent en réseau, mais le pack ne propose par le serveur. Si vous deviez en avoir besoin, dizez le !
Là encore, si vous rencontrez quelque problème que ce soit, n'hésitez pas à m'en faire part.
http://raydium.cqfd-corp.org/data/binary_packs/raydium-win32-binary-full.zip (15 Mo)
Pour ceux qui aiment les images avant de télécharger un truc, y'en a plein ici : http://raydium.yoopla.org/wiki/RaydiumMedia
Quelques rappels (gros et honteux copier/coller) :
- Si vous vous mangez une erreur "openal32.dll" ou un truc du genre, lancez l'installation de l'installeur OpenAL, je l'ai laissé dans le répertoire (ça dure 2 secondes) : OpenALwEAX.exe
- Les applis sont gavées d'arguments sur la ligne de commande, si vous en avez besoin (ce qui me vient en tête, c'est déjà le "--fullscreen").
- Si vous avez déjà touché à PHP, vous devez avoir moyen de vous marrer un peu (cf la console [touche ²] qui est un interprèteur PHP, par exemple)
- 99% de ces applis fonctionnent en réseau, mais le pack ne propose par le serveur. Si vous deviez en avoir besoin, dizez le !
Là encore, si vous rencontrez quelque problème que ce soit, n'hésitez pas à m'en faire part.
2 commentaires, dernier de remouk.