Wild factor

Posted by
Hercule
on
Tuesday 08 February 2011 - 11:28:28
::
Read/Post Comment: 3

Je viens d'ouvrir le site Wild Factor qui va regrouper mon activité de développement durant mon temps libre.
J'ai même déposé la marque au US !
Concernant mon jeu Iphone: j'ai ajouté de nombreux patterns, et j'ai mis en place les 70 première seconde de Gameplay!
Je me suis aperçu que pour se caler sur des rythmes exotiques de la guitare il va falloir que je fasse un petit outil pour me faciliter la vie.
Sinon j'ai développé deux sites internet:
- Zimra , le site de ma copine dessinatrice. Elle vient de signé un album chez Glénat !
- Et je suis en train de travailler sur un autre site internet: Institut Cœur Paris Centre
J'ai l'habitude de travailler sérieusement, mais pas sur un projet dont le sujet est aussi sérieux..
PS: je ne suis Webdesigner qu'à mes heures perdues.
Rendez-vous donc sur Wild Factor !!!

Posted by
Hercule
on
Sunday 02 January 2011 - 05:05:09
::
Read/Post Comment: 0

Mon entreprise de jeux vidéo vient de déposer le bilan ( White birds production ) snif. Je souhaite bonne chance à tous les membres de l'équipes White Birds.
J'ai déjà trouvé un nouveau boulot!
Je rejoins l'équipe Kylotonn toujours sur le projet PlayAll pour l'instant. Cela me permettra de finir mon travail sur la partie réseau de PlayAll, appelé PlayOnline.
Entre la fin de mon Contrat chez White Birds et le début de mon contrat chez Kylotonn, j'ai eu quelques jours de liberté.
J'en ai profité pour bosser quelques jours sur mon jeu Iphone.
//------------------------------------------------------------------------------------
Mes avancées sur le projet:
- Gestions des inputs Iphone en intégrant les astuces glanés sur le forum de Unity pour augmenter la fiabilité de la détection des Touch. Mais il me reste à le tester sur un iphone. Pour l'instant c'est mappé sur les click de la souris.
- Rework du système de sprites click/drag/slice en rythme par le joueur, pour qu'il soit plus flexible. La base du jeu est de proposer plusieurs Gameplay assez différents sur une même musique pour ce démarquer d'un produit comme TapTap revenge.
Mon système doit être très facile à utiliser et flaxible, pour qu'un Game Designer ajoute facilement une richesse dans le GamePlay sur chaque musique.
J'essaie d'utiliser au maximum les coroutines pour plus de performance, mais ce n'est pas évident à utiliser.
- Ajout des éléments que le joueur doit faire glisser le long d'un path.
- Calcul du score, et exposition des tous les paramètres permettant de régler la difficulté du jeu.
- Notation du joueur par un GOOD, GREAT ou PERFECT, sur chaque "tap" ou "slide" du joueurs.
J'ai acheté d'occase un ipod touch V3 ce qui me permettra de faire des tests comme sur un iphone 4 sans devoir en acheter un.
Ce qu'il me reste à faire pour pouvoir commencer à le faire tester:
- Intégrer la première musique avec les "tap" et "slide".
- Tutorial
- Affichage du score.
Je dois bosser sur la nouvelle version du blog de ma copines dessinatrice de BD ( Blog ).
Elle a un peu d'exposition en févriers ( interview, salons etc...). Et ça serai bien que le nouveau blog soit en place avant.
Le projet de jeu, sera sans doute en hibernation pour 1 ou deux mois.

Posted by
Hercule
on
Monday 22 November 2010 - 00:44:36
::
Read/Post Comment: 0

Bilan de ce week-end:
- Je place les marqueurs sous Audacity, que je peux exporter en txt. C'est long et fastidieux d'ajuster chaque marqueur, mais j'arrive à me caler pile poil sur le batteur pour compenser son imprécision ( c'est pas un robot ).
- Je les réimporte dans Unity à l'aide d'un petit outil que j'ai fait. Il me génère un tableau C# que je réintègre dans le code. Bilan le jeu démarre 10 fois plus vite que si je lis le fichier original directement ( tricks old school ).
- Les éléments à cliquer ont plusieurs états ( Start, hit, missed ).
- J'ai amélioré la qualité graphique et l'animation des hauts parleurs qui bougent au rythme de la musique ( lissage des mouvements, réduction de la latence de l'analyse de spectre ). J'ai réussit à trouver la formule qui me permet de savoir ce que le spectrumdata de fmod me renvoit.
- J'ai fait un peu d'optim sur les drawvcall ( que 3 draw call ).
- Un peu d'optim sur les allocations. Comme le garbage collector semble provoquer des ralentissements, il faut éviter tout allocation durant le jeu: Il faut éviter d'allouer des strings temporaires, et il faut créer une liste d'objets pré-alloués, qu'on utilise à la demande.
Ce qu'il me reste à faire:
- Finir le gameplay ( pouvoir régler des patterns de rythme facilement, au moins un autre type d'interaction )
- 2 screens qui exlique le fonctionnement du jeux.
Web démo la semaine prochaine si tout va bien.
Proto

Posted by
Hercule
on
Monday 15 November 2010 - 00:37:49
::
Read/Post Comment: 0

J'ai bien avancé sur le proto ce week-end. Il y a des objets qui bougent, on peut clicker dessus. J'ai même un habillage graphique correcte :)
Enfin j'ai surtout bien compris les concepts de programmation C# sous Unity. J'ai mis en place un canvas de jeu à peu près correcte.
J'ai découvert quelques bugs du moteur que je vais devoir compenser, mais rien de grave.
J'ai encore quelques problème de syncro avec la musique. Je pensais que c'était pas trop compliqué de trouver la pulsation BPM ( battement par minutes) et de l'utiliser comme repère sur toute la chanson. Mais c'est un vrai calvaire.
Il peut être bon pendant 1 minute 30 et puis ça se décale très légèrement...
C'est sur les musiciens sont pas des robots non plus, et garder le rythme parfaitement de bout en bout, doit être impossible.
Ça me rappelle mes cours de musique, où mon prof n'arrêtait pas de me dire que je ralentissais mon tempo entre le début et la fin d'un morceau.
Il va falloir que je trouve une solution pour compenser ce décalage ( battre la mesure à la main, et enregistrer ça ? placer des marques dans un logiciel d'édition audio ? ).
En tout cas j'avance bien, et je pense tenir mon objectif d'avoir un premier proto jouable dans 15 jours.

Posted by
Hercule
on
Monday 01 November 2010 - 10:15:04
::
Read/Post Comment: 0

J'ai fait une grosse Update de la liste de mes travaux et de mon CV ( rubrique CV ).
J'ai également corrigé le formulaire contact.
Game design

Posted by
Hercule
on
Monday 01 November 2010 - 03:14:38
::
Read/Post Comment: 9
Trouver une idée de jeu:
J'ai passé ces dernières semaines, le plus clair de mon temps à chercher une idée de jeu qui soit facile à mettre en place et qui me plaise.
J'ai donc acheté/joué à plein de jeux flash/iphone pour trouver une idée qui me semble commercialement bonne.
J'ai donc au final, deux idées qui se dégagent du lot:
Jeu de rythme
- Ma première idée est un jeu musical/rythme type rock band. C'est relativement facile à mettre en place, et j'ai trouvé de la musique de bonne qualité à prix raisonnable pour une licence de jeux.
J'avais une idée de gameplay que je pensais un poil originale par rapport aux autres jeux de musiques ( j'avais écumé les 2/3 des jeux de dance/rythme de la page wikipedia soit une bonne 100ène de jeux musicaux ). Mais je suis tombé hier sur un jeu sorti il y a 1 an 1/2 sur ce principe. Arghh. A force de chercher on trouve.
C'est pas grave, mon univers est complètement différent, et ça valide le fait que mon idée est bonne, ce dont je doutais encore :)
Je vais rajouter 2-3 éléments nouveaux, et ça devrait être du tout bon pour un premier jeu.
Idée secrette
- La deuxième idée reste secrète pour l'instant. Elle correspond à ce que je sais faire de mieux sur mobile, et sur PC.
De plus je pense que commercialement elle a un très bon potentiel. Et que le jeu peut convenir à la fois sur PC et sur iphone
On dit que tout le monde peut avoir une bonne idée de jeu, et que dans le jeu vidéo, c'est surtout l’exécution qui est importante ( Bon level Design, bon graphisme, bon marketing ).
Mais bon, je préfère malgré tout ne rien dire, en attendant le premier proto.
Je ne commence pas directement par cette dernier idée, puisqu'elle me demandera sans doute 3 X plus de travail que le jeu de rythme.
Le planning pour mon jeu de musique/rythme:
J'espère doc de GameDesign dans 1 semaine, et premier proto testable dans 1 mois ( je bosse encore la journée, et j'ai une copine.. ).
Il faut aussi que je me fasse une petite estime des tâches, ce qui va bien me prendre 1 ou 2 jours de travail.
Unity

Posted by
Hercule
on
Monday 01 November 2010 - 02:22:34
::
Read/Post Comment: 0
Unity
Comme mon entreprise ne va plus avoir assez d'argent pour me payer ( licenciement économique ), je vais donc avoir un peu de temps libre, si je ne suis pas réembauché trop rapidement par une autre entreprise :)
Et comme je suis incapable de rester sans rien faire, je vais me lancer dans le développement d'un petit jeu avec Unity.
Pourquoi Unity ( comparaison Shiva 3D, et PlayAll ) ?
Unity
Avantages déterminants:
- Ergonomie Fantastique! Depuis des années je rêve de faire un outil comme ça, et Unity l'a fait!!
- Communauté très active ( Au risque d'avoir un phénomène de "Fanboy" ). A dispo j'ai des scri pts certes payant, mais qui vont me faire gagner beaucoup de temps sur des tâches par très sexy ( intégration facebook par exemple ).
- Je peux prendre comme langage de scri pt du C# ( mon C# est rouillé.. ça me permettra de me remettre dans le bain )
Défaut:
- Unity est très cher si on veut une licence pro:
1500$ pour la pro PC, on rajoute 1500$ pour l'iphone pro ( 3000$ en tout! ), et 1500$ pour la version android.
Et je ne parle pas des licences 360 / PS3 dont le prix est proche des moteurs grosses prods.
La licence de base est par contre très abordable ( indie PC gratuite, 400$ Iphone ), et suffit largement pendant le début du développement.
- Unity n'es pas orienté 2D. Il n'y a rien de convenable pour faire de la 2D, et même de simples menus.
- Unity est orienté petite équipe ( on ne peut pas travailler à plusieurs sur le même niveau facilement )
- Le code source est inaccessible pour une licence classique + impossible de payer une correction de bug en "extra". Cela peut être anodin, mais le but d'avoir le source code, n'est pas forcément d'avoir la possibilité d'étendre les fonctionnalités du moteur. Cela permet aussi de ne pas être à la merci de Unity pour pouvoir corriger un bug. On peut tomber sur un bug spécifique à notre projet, bloquant et sans "workaround". Etant le seul touché, les prog de unity vont placé ce bug déterminant pour vous, mais facultatif pour les autres, en bas des priorités...
Ceci peut être génant si on a des délais serrés.
Shiva 3D:
- Français ( cocorico )
- Pas cher 170 euros pour PC/Iphone/Ipad/Wii/Palm !!
- Rendu PC meilleur que Unity. La dernière démo du soldat de Unity est buggé, et décevante comparai à celle de shiva.
- Interface d'édition 2D.
Défaut:
- La communauté est beaucoup plus petite.
- Pour mon gout, l'interface est moins plaisant. Toutes les améliorations d'ergonomie que je n'ai pas pu mettre dans Playall faute des moyens consacrés aux outils, se retrouve sur Unity.. Je partage donc plus la philosophie Unity sur l'ergonomie.s
PlayAll:
Avantages:
- Qualité moteur de rendu. On obtient clairement mieux sur PlayAll que sur Unity (ou shiva ). Et des nouveautés très engine grosse prod arrivent sur le moteur de rendu.
- Très efficace pour prototyper malgré son orientation grosse prod. Mon équipe a réussit à monter des protos PS3 en temps record ( 2 mois pour une petite équipe de 2 graphiste3D + 2 programmeurs dont moi + 3 scri pteurs qui n'avait jamais utilisé le moteur, peu d’expérience next-Gen, avec seulement moi comme support/debuggueur/formateur)
On créé un composant C++ sans doute aussi facilement sous PlayAll qu'un scri pt sous unity ( avec le temps de compilation en +, mais les perf en + ).
- Taillé pour les grosses équipes: Intégration totale du versioning dans l'outil. On peut facilement travaillé à 10 simultanément sur le même niveau avec un minimum d'organisation ( impossible avec Unity!! ). Fonctionnalité, que mon équipe a mis en place :)
- Taillé pour le next-gen. Les fonctionnalités sont plus nombreuses sur PlayAll que sur Unity.
- Je connais le moteur sur le bout des doigts ( à part le chef PlayAll management actuel, je pense qu'il n'y a aucun autre programmeur PlayAll qui ne connaisse aussi bien le moteur que moi... )
Désavantages:
- Licence inaccessible pour moi ( orienté entreprise de jeux ).
- Taillé grosses équipes ( je suis tout seul ).
Donc mon choix s'est porté sur Unity qui me semble la meilleur solution à long terme pour moi, même si son prix le rend peut séduisant à court terme.
Unity n'est pas le meilleur dans l'absolu, mais il est le meilleur dans ma configuration de prod, et dans ce que je veux faire.
Donc en ce moment, je me gave de tutorial, je lis tout le forum Unity.
GAA

Posted by
Hercule
on
Saturday 16 October 2010 - 05:31:00
::
Read/Post Comment: 0

Houlala, ça fait un moment que je n'ai pas touché à mon site web!
Alors, je travaille en ce moment à Paris sur un projet mega cool depuis 3 ans PlayAll (bon le nom va surement changer...).
C'est un middleware qui permet de créer des jeux multiplate-forme Xbox360/PS3/PC ( comme l'Unreal /crytek engine ).
J'ai travaillé un peu sur toutes les parties ( surtout outils, rendu, Physics etc.. ).
Et en ce moment, je suis affecté à la programmation de la partie réseau ( matchmaking PS3, Actor management ).
Mais je ne sais pas si je vais pouvoir continuer sur ce projet :(
-------------------------------
SHADER ANTIALIASING:
-------------------------------
Je me décide enfin à ajouter une news pour parler de divers shaders sur lesquels je bosse durant mon temps libre :
Je vais commencer par parler d'un shader d'antialiasing qui est utilisé depuis quelques mois sur nos protos PS3.
Je voulais faire un algo ULTRA SIMPLE qui puisse donner de meilleurs résultats qu'un simple détection des contours aliasé + blur sur PS3/ Xbox36 mais qui soit peu gourmand.
Comment j'aime à penser "Simple is beautiful" !!
Mon algo est super simple, et grosso modoo en pseudo code:
- Calculer le Gradient de chaque pixels de mon image, et ainsi calculer "la pente" ( filtre de type sobel ou autre ).
- Mélanger la couleur de chaque pixels avec ses voisins en utilisant la direction de ce gradient.
Plus on prendra d'échantillonnage autour du pixel, plus la précision de la pente de notre gradient sera précise, et plus le résultat sur des pentes douces, sera meilleurs.

Je l'ai appelé GAA ( gradient Anti-Antialiasing )
Le résultat est correct et enlève sensiblement l'impression d'aliasing au joueur.
Il est aussi peu coûteux qu'une méthode détection edge + blur ( voir moins ).
A applique directement sur le rendu final comme un post process ( ultra simple à incorporé dans n'importe quel moteur de rendu )
Le problème non encore réglé est de trouver une méthode pour calculer la "pente" avec précision, sans devoir prendre trop de pixel voisin.
Il semble qu'il y est déjà un papier de recherche sur ce sujet pour ça ( il faut que je le retrouve dans mes bookmark ).
----------------------------------------------
Comparaison autres algos Anti-aliasing
----------------------------------------------
MLAA:
On peu le comparer ( avec modestie ) à l'algo MLAA de God of war 3
Le MLAA donne de bien meilleurs résultats puisqu'il détecte avec précision la pente et la position du pixels, (en déterminant la longueur des formes caractéristiques L ).
Mais il est très gourmand. Et la seul solution est d'utiliser la puissance du SPU sur PS3 pour obtenir de bonne performance ( merci sony d'avoir rendu public l'algo, ainsi qu'un sample d'exemple ).
- Que ce soit ma méthode ou le MLAA, cela ne donnera jamais un aussi bon résultat que les méthodes qui utilise un sur-échantillonage, c'est à dire qui calcule l'image dans une définition supérieure ( MSAA, antialiasing des cartes graphiques, etc.. )
Mais est-ce vraiment nécessaire pour que l’expérience du joueur soit meilleure ?
Temporal:
- On peu comparer aussi ma méthode avec un autre type de méthodes qui permet d'avoir les informations du sous pixel, sans avoir à sur-échantillonner.
On peut les appeler les méthodes de type "temporale".
Elle consiste à récupérer les information des sous pixels sur plusieurs frames en faisant "trembler la caméra".
Le principe ( grossièrement) frame 1 on calcule une image d'1/2 pixels de décalage vers le bas droit, frame 2 vers le bas gauche, frame 3 vers le haut droit, frame 4 vers le haut gauche.
à la frame 5 pour chaque pixels on a les informations des 4 sous pixels. Il suffit de les mixer pour obtenir le point anti-aliasé.
C'est comme si on avait calculé une image de dimension X4, mais en distribuant le calcul sur plusieurs frames.
Cette méthode est utilisée par exemple dans Halo 3.
Mais le gros point noir de cette méthode, c'est les artéfacts visuels qui surviennent lorsque la caméra bouge trop rapidement ( on peut compenser le mouvement de la caméra jusqu'à un certain point ) . On voit alors apparaître une sorte de trainéeé" sur l'image ( "ghost" ).
C'est tou pour le shader d'antialiasing.
-------------------------------
SSAO
-------------------------------
En ce moment je suis sur un nouveau type d'algo SSAO, très à la mode:
J'essaie de développer un algo toujours très simple. Pour l'instant il est encore trop gourmant sur une PS3.
Je dois l'optimiser, et je galère encore sur certains points pour améliorer ces perfs tout en gardant un rendu qui me satisfasse ( saloperie de bilatral-blur .. ).
Je publierai les CG dés que j'aurais fini :)
Coucou

Posted by
Hercule
on
Wednesday 15 August 2007 - 14:16:37
::
Read/Post Comment: 0

Après un looong moment de silence un petite news.
Je fais des jeux vidéo mobile. Le dernier en date commercialisé est "Larry the leisure suit" qui est l'adaption de la célèbre serie de jeux.
Il est pour l'instant assez bien noté dans les reviews.
Sinon si vous cherchez un moteur 3D pas trop cher, je conseille http://www.terathon.com/c4engine/index.php
C'est celui que j'ai choisi.
Le code manque de commentaire et de doc à mon goût, mais le code est claire, et les feature assez complètes.
Dés que je suis assez motivé, et surtout moins fatigué, je m'y remet...
Les copains parlent souvent de XNA.
Je n'ai pas tester moi même mais vu les echos, ca vaut sans doute le coup d'aller y jetter un d'oeil.
http://en.wikipedia.org/wiki/Microsoft_XNA
Après directX 10, c'est au tour d'OpenGL 3.0 de sortir
http://www.opengl.org/discussion_boards/ubb/ultimatebb.php?ubb=get_topic;f=3;t=015351
une petite élocultion du créateur du C++, sur les futur évolutions du langage:
http://csclub.uwaterloo.ca/media/C%2B%2B0x%20-%20An%20Overview.html
News de Strasbourg

Posted by
Hercule
on
Sunday 07 August 2005 - 02:59:44
::
Read/Post Comment: 0
Pas beaucoup de nouvelles ces temps-ci puisque je suis passé de Toulousain à Strasbourgeois. Je travaille maintenant dans une entreprise de création de jeux vidéos pour téléphone portable: http://www.mighty-troglodytes.com/. News en vrac: DirectX 9.0 SDK Aout 2005: http://msdn.microsoft.com/directx/sdk Opengl ES 2.0 (opengl pour des petits appareil, comme les téléphones portables) http://www.khronos.org/opengles/2_X/ Le format de fichier 3D Collada (utilisé par la PS3) rejoind le kronos group http://www.khronos.org/collada/
|