Journal intégrer flash dans un jeu

Posté par  (site web personnel) .
Étiquettes :
0
15
juin
2005
Bonjour,

Actuellement, je travaille sur le développement d'un moteur de jeu libre. Enfin, on peut plus appeler ça "méta moteur" car en fait, on travaille en grosse partie sur une API unifié permettant de brancher derrière des moteurs déjà existant pour tirer parti du travail déjà effectué dessus.

Un truc intéressant dans les jeux, c'est que pour créer les interface / frontend, il n'existe en fait rien du tout. Même au niveau professionnel, il n'existe pas de middleware qui gère ça. C'est-à-dire qu'il n'existe pas d'éditeur de menu permettant d'éditer les changements de pages, les évenements, les sons des menus, etc...

Il y a un eu travail là-dessus depuis peu par le middleware "renderware" qui intègre un systeme de menu basé sur flash... Et depuis cette année, il y a "Menus Master" qui vient de se lancer sur ce marché et qui a présenté son produit à l'E3 (développé par une entreprise francaise qui vient de se monter.. Des anciens de delphine software pour ceux qui connaissent)

Donc, pour un moteur libre il existe rien.. et pour un moteur propriétaire, il n'existe pas grand chose.

-----------------------------

Pour notre moteur, je pensais qu'on pouvait utiliser flash car c'est un produit que les artistes connaissent assez bien, et qui permet de gérer les transisitons de pages, les évenements, etc.

Après, la question qui se pose c'est comment intégrer un lecteur et utiliser un éditeur libre ?
pour le lecteur j'ai vu que gplflash permettait de le faire :
http://gplflash.sourceforge.net/(...)
C'est marche par exemple sur freebsd pour faire tourner flash dans firefox, est-ce que certains connaissent et savent si cette lib est viable ?

Pour l'édition, c'est plus compliqué. J'ai trouvé E-Anim en GPL http://www.phildes.com/(...) qui permet de faire de l'édition assez basique.
et pour les scripts, il y a un compilateur de scripts libre GPL qui existe aussi (MTASC) : http://www.mtasc.org/(...)

Est-ce que vous avez déjà testé tout ça ?
Que pensez vous de l'idée ?

Je sais que Flash c'est pas libre, etc... Je serai preneur d'un systeme basé sur SVG + SMIL + Scripts DOM... mais bon. C'est pas gagné au niveau des lib libre pour SMIL par exemple... et au niveau de l'édition, c'est pas gagné non plus (il n'existe rien pour mixer ça, créer des évenements, lancer des son, ...).

Quel serait le danger d'utiliser Flash ? est-ce que génerer et lire du .swf sans payer de license c'est bien autorisé et légal ?

Merci petit journal :)

P.S : si des développeurs se sentent aussi partant pour créer un middleware de gestion de frontend basé sur des standards comme SVG, je pense que ca serait une super idée aussi :)
  • # Pas un trés bon choix...

    Posté par  (site web personnel) . Évalué à 3.

    Bon niveau libre, le flash c'est pas ce qu'il y a de mieux, le format flash n'est pas libre, pas de lecteur flash libre poussé, pas de logiciel de création d'anim flash poussé....

    Le lecteur gplflash a vu sont dévelopement arréter il y a fort longtemps (mais a ce qui parait c'est reparti...)Mais bon ca ne permet pas de gérer trés bien l'action script...

    Pour le logiciel E-Anim ce n'est pas trés poussé et flash pour pouvoir faire des truc sympa a donc besoin de pas mal d'options que je ne suis pas sure que tu puissent retrouver sur E-Anim


    Le point fort de flash selon moi est l'action script et si gplflash gère ca mal, ben c'est mal parti...

    donc je ne pense pas que ce soit une bonne solutions mais bon j'en ai pas d'autre en échange a te proposer donc bon.
    • [^] # Re: Pas un trés bon choix...

      Posté par  . Évalué à 1.

      Il me semble que le projet gplflash est reparti depuis quelques semaines suite à un appel de la FSF. A suivre donc !
    • [^] # Re: Pas un trés bon choix...

      Posté par  (site web personnel) . Évalué à 2.

      Pour avoir beaucoup utilisé flash, je peux dire qu'actuellement je ne connais aucu autre logiciel qui offre autant de puissance comparée à la facilité d'utilisation. En effet, pour les dernières versions Macromedia s'est concentré sur la partie action script, qui possède maintenant une API poussée. Ca reste juste l'enfer à débugger à cause du laxisme de action script.
      Mais... Flash c'est pas libre. Et ça existe pas sous linux. Etant plutot partisan de la philosophie du "que le technologiquement meilleur gagne", je serais prêt à utiliser flash sous linux. Mais si il y avait une alternative libre, ce serait super !
      Un projet mort dans l'oeuf apparemment est flash4linux, c'était pourtant très bien parti. Ah non ! Il renait : http://f4l.sf.net,(...) apparemment le developpeur travaille en collaboration avec gplflash.
  • # OSFlash.org

    Posté par  (site web personnel) . Évalué à 5.

    Ca bouge pas mal du côté des outils libres pour la plateforme Flash ces temps-ci ...

    Pour avoir un éditeur digne de ce nom tu peux te tourner du côté de SE|PY qui comme son nom l'indique est écrit en Python (et utilise wxPython) : http://www.sephiroth.it/python/sepy.php(...) . Apparement SE|PY n'est disponible que pour MS Windows.

    Mais le plus intéressant est de se tourner vers OSFlash.org qui fédère (et depuis peu, héberge) plusieurs projets libres. Tu cites l'excellent compilateur MTASC (développé en Objective CAML) ... OSFlash propose de le coupler d'une part à ASDT qui est plug-in ActionScript pour Eclipse et d'autre part à Flashout qui permet de tester et débugger efficacement une animation Flash depuis ce même Eclipse. Si tu rajoutes swfmill qui permer de créer des documents Flash et des bibliothèques à partir d'un descripteur XML tu obtiens alors une chaîne complète libre et multiplateforme pour créer des applications Flash. Il manque encore un toolkit complet, mais plusieurs projets sont déjà bien avancés tel ActionStep qui vise à créer un framework inspiré de NextStep.

    http://osflash.org/(...)
    http://actionstep.org/(...)

    Bon j'en profite pour signaler que Macromedia a rejoint récemment la fondation Eclipse et compte fournir un nouvel EDI pour les développeurs Flex basé dessus (ça s'appelera Zorn). Tiens en parlant de Flex, je suis obligé de parler de son concurrent libre, OpenLaszlo.

    http://www.macromedia.com/fr/software/flex/(...)
    http://www.laszlosystems.com/developers/platform/(...)

    C'est tout :)
  • # Delphine Software !

    Posté par  . Évalué à 4.

    Flashback, que de souvenirs :)
  • # Je suis très intéressé

    Posté par  . Évalué à 5.

    Bonjour,

    je suis l'auteur de E-Anim

    > je travaille sur le développement d'un moteur de jeu libre.
    > Enfin, on peut plus appeler ça "méta moteur" car en fait, on
    > travaille en grosse partie sur une API unifié permettant de
    > brancher derrière des moteurs déjà existant

    Ce qui m'intérresse, c'est le "moteur déjà existant"

    Vous vous posez des questions au sujet de Flash.
    Je m'intéresse au mécanisme de l'animation _interactive_ en informatique
    Quelles options ont été choisies pour le SWF de Flash ? Quelles peuvent en être les conséquences et les débouchés ? Et quels sont les contraintes de la licence propriétaire

    J'ai mis E-Anim en libre pour réaliser une interface et un player réellement "ouverts". C'est-à-dire, qui permet aux utilisateurs :
    - d'ajouter de nouveaux composant visuels (ex : objets 3D)
    - d'ajouter de nouveaux attributs de d'animations.
    ... et d'autres éléments de programmation un peu plus technique.

    L'idée de base : c'est une architecture ouverte sur laquelle on peut accrocher ce qu'on désire (dans le cadre du raisonnable ;-) )
    Actuellement, c'est une boîte quasi vide (4 classes de composants-visuels et 6 types d'attributs d'animation - c'est peu, et voyez ce qu'on peut déjà faire)

    C'est là que vous pouvez voir l'interêt du libre, ou chacun pourra ajouter ce qu'il désire sans avoir à demander l'accord de quiconque. Et puis le redistribuer sans risque de saute d'humeur du "propriétaire"

    Si vous désirez discuter de cela, je reste à votre disposition. Contacter-moi par e-mail.

    Phildes

    PS : Si des collaborateurs de Macromédia© lisent ces lignes, je suis aussi disponible pour en discuter avec eux :-)
    • [^] # Re: Je suis très intéressé

      Posté par  . Évalué à 4.

      Précision,

      "Je suis très intéressé"... pour en _discuter_ avec vous :
      non pas pour placer E-Anim qui à l'heure actuelle n'est pas d'un niveau suffisant un noyau-de-jeux-interactif.

      La question est :
      - Flash l'est-il ? Et sur le long terme ? (1)
      C'est pour cela qu'il faut bien le regarder "en profondeur" et voir l'avantage / inconvénient d'une licence propriétaire sur un produit pour lequel on espère un maximum de prérennité.
      Essayer d'évaluer les évolution futures....

      Il faut penser sur le long terme - Il y a quelques années, vous vous seriez posé la question pour Delphi, aujourd'hui pour Flash...

      --------------
      Il est important de bien évaluer le problème avec le maximum de cartes en main.
      - Définir les besoins, et évaluer la pertinence du choix en fonction des fonctionnalités et des comportements souhaités.
      --------------

      C'est pour cela que je suis intéressé d'en discuter avec vous de manière un peu plus approfondie .

      Bien cordialement

      Phildes

      PS : évidemment, il est aussi possible de trouver des solutions plus souples qui ne vous fige pas dans l'utilisation d'un seul "moteur"
      Il y a vraiment de quoi chercher ;-)

      (1) ceci ne met pas en cause Flash qui est un produit fabuleux pour certaines applications. En revanche, Il faut vérifier si il correspond au mieux à votre besoin.
      • [^] # Re: Je suis très intéressé

        Posté par  . Évalué à 3.

        moi aussi je suis interessé pour la discution sur les pros and cons de
        - l'utilisation de flash.
        - L'évolution de flash chez adobe/macromédia
        - La bataille flash /smill-svg (je suis plus pour la 2ème solution) car avec flash on ne maitrise pas le dev (supression d'objets par exemple). Mais smill/svg est un peu limité aujourd'hui.

        Si j'ai tout compris vous voulez faire un ODBC pour moteur de jeu ?

        hervé
        • [^] # Re: Je suis très intéressé

          Posté par  (site web personnel) . Évalué à 1.

          Merci pour toutes ces réponses.
          La liste des liens que vous avez tous donné est vraiment interessante.

          Ce qui est "amusant" finalement, c'est qu'autour de l'aspect flash il existe quand même un besoin et une demande, mais qu'il n'y a finalement aucun vrai équivalent dans le libre.
          J'aurais vraiment été interressé de participer au développement d'un projet d'une version flash "libre" qui soit basé sur des standards (SVG / SMIL, DOM ...) Mais je travaille actuellement sur ce moteur de jeu et je ne veux pas me disperser.

          Mais peut-être qu'il serait sérieux que des bonnes volontés se lancent dans un tel projet.

          Sinon, en ce qui concerne le moteur :

          Au départ, il était orienté jeux 2D. On voulait faire un jeu d'aventure style monkey-island 3. ( http://www.arcallians.org(...) ).
          Au fur et à mesure du développement, on s'est rendu compte que l'on pouvait créer un moteur beaucoup plus puissant que quelque chose cantoné aux jeux d'aventure... surtout qu'il en existe déjà plein. (adventure game studio, scumvm, ...)

          Le développement du jeu a donc été mis en stand by et on travaille désormais complètement sur un couple moteur de jeu / editeur.

          Etant donné que beaucoup de moteurs existent déjà, et qu'il est stupide de vouloir réinventer la roue, on a pris le parti d'essayer de réutiliser ce qu'il existe. En particulier au niveau des moteurs 3D qu'il est difficile de rattraper. (shaders dans Ogre, 10 de travaux sur crystal space...)
          Donc, on a mis en place une architecture fortement basé sur des plugins d'extension. On définit une API, et certains module du moteur doivent etre "dérivé" (enfin, implémenté car c'est en C), compilé en lib dynamique et peut etre chargé à la volée par le moteur.
          Par exemple, pour l'affichage 2D, le moteur utilise des fonctions pour dessiner des sprites, etc... mais l'implémentation relle derriere se fait par allegro, SDL, openGL. Il suffit juste d'ecrire le plugin correspondant. Le but état de pouvoir le porter sur un maximum de plateforme (dont GBA, PS2, XBox)...

          L'éditeur que l'on met en place permet d'éditer les donnés et les scripts du jeu (qui peuvent etre écrit en LUA et surement python... (c'est implémenté par plugins aussi)). Il permet d'éditer visuellement les animations, interactions, d'éditer les scripts...

          Et on réfléchissait récemment sur les interface des menus dans les jeux. Il y a un gouffre de ce coté, et on cherchait un moyen libre de le combler. On s'en rend d'autant plus compte que même au niveau professionel, ce manque n'est pas comblé.

          Donc, voilà. Je suis ravi de la réponse de phildes. Pour le moment, c'est l'éditeur qui semble le plus viable au niveau libre pour la gestion de menus. Je pense que dès que le développement se focalisera plus sur cette partie, on étudiera en détail le fonctionnement et on verra si on ne peut pas y contribuer aussi si des features nous manquent.
          • [^] # Re: Je suis très intéressé

            Posté par  . Évalué à 1.

            > c'est l'éditeur qui semble le plus viable au niveau libre pour la
            > gestion de menus
            Effectivement, pour la partie menu, E-Anim pourrait peut-être convenir.

            Je serais plus affirmatif quand j'aurais jeté un oeil sur vos spécifications ;-)

            Dès que vous aurez un script ou scénario un peu poussé, envoyez le moi, je verrais ce qu'on peut faire :-)

            A bientôt

            Phildes
  • # Pour les Jeux il existe GameSWF

    Posté par  (site web personnel) . Évalué à 3.

    C++, Windows, Mac OSX,d Linux, (GCC, MSVC).
    utilises OpenGL.
    Mais est prevu pour etre portable sur d'autre API. (separation nickel.)

    http://www.tulrich.com/geekstuff/gameswf.html(...)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.