Partage
  • Partager sur Facebook
  • Partager sur Twitter

Test mah library?

    15 mai 2010 à 13:18:21

    Salut, j'ai une demande un peu particulière : j'ai commencé à écrire une librairie pour interagir avec les canvas HTML5. J'ai implémenté des fonctionnalités basiques, et avant de continuer j'aimerais bien avoir un peu de feedback. Voir des rapports de bug, même si ça, j'aime moins :p

    En théorie, la librairie est adaptée pour des petites applis qu'on ferait en flash autrement, comme des jeux. D'ailleurs, des connaissances en ActionScript peuvent aider à comprendre la logique de fonctionnement.

    Pour vous faciliter la tache :

    La librairie se télécharge la.
    Il y a une documentation, faite à l'arrache est pas tout à fait à jour ici.
    J'ai fais une petite démo ici.

    En espérant que vous aurez le temps de jouer avec et de me dire ce que vous en pensez :)
    • Partager sur Facebook
    • Partager sur Twitter
      16 mai 2010 à 3:46:07

      Juste un petit détail. Dans ta démo, sous FF 3.6.3, les coordonnées du clic sur le canvas sont faussées si tu descends le scroll.

      Pas eu le temps de regarder plus pour l'instant.
      • Partager sur Facebook
      • Partager sur Twitter
        16 mai 2010 à 14:22:06

        Les liens sont morts non ? o_O
        • Partager sur Facebook
        • Partager sur Twitter
          16 mai 2010 à 16:05:17

          @Golmote : yep, c'est corrigé, merci :)

          @xavierm : ba euh non, pas chez moi en tout cas :o
          • Partager sur Facebook
          • Partager sur Twitter
            16 mai 2010 à 16:56:11

            J'ai rejeté un bref coup d'oeil. Dans le code de la démo, tu as oublié un bon paquet de var devant tes variables dans les fonctions.

            Si les variables sont censées être globales, elles devraient être déclarées avec les autres, au début.
            (Par exemple background qui semble locale... et canvas qui semble globale)

            Aussi, tu devrais créer un objet pour y placer tes différents constructeurs. Parce que là, tu pollues vachement l'espace global.

            Utilise disons une variable Cannon, de sorte à appeler :

            canvas = new Cannon.Canvas('canvas');
            var background = new Cannon.Sprite(['fond'], 0, 0, 500, 300);
            


            etc.


            Tu pourrais aussi proposer une méthode simple pour "augmenter" tes objets. Quelque chose qui te permettrait d'écrire
            if(balle.vsCircle(bombs[j]))

            au lieu de
            if(circleVsCircle(balle, bombs[j]))



            En fait, tu pourrais carrément faire une gestion intégrée des collisions entres objets :D
            • Partager sur Facebook
            • Partager sur Twitter
              17 mai 2010 à 9:59:05

              Moui, la démo n'est pas très soignée, je l'ai faite un peu rapidement :p

              Citation : Golmote


              Aussi, tu devrais créer un objet pour y placer tes différents constructeurs. Parce que là, tu pollues vachement l'espace global.



              Pas faux, jvais faire ça comme ça. Avec une option pour copier les constructeurs en global, perso ça m'emmerde de rajouter Cannon. devant tout.

              Citation : Golmote


              En fait, tu pourrais carrément faire une gestion intégrée des collisions entres objets :D



              Ba euh ouais, c'est dans mes todo, mais...

              /*
              @TODO
              - add more event data everywhere
              - color tween
              - bitmap setter and getter on specific colors
              - all basic context changes (compositing, mitterlimit, ...)
              - static class extending
              - point2d
              - set globalize through url param
              
              @TODO  - Classes
              
              Math : collision, pathfinding
              Geom : matrix
              Display : pixel?, .fxg, shape, text
              Media : video, sound
              Com : websocket, XML, JSON
              Misc : Color, Gradient
              ??? : KeyListenning, EventWrapper?, Unit Testing, ErrorLog
              
              Later : components, cursor, Filter, Shadow, 3d
              */
              


              Entre ça et la doc, il va y en avoir pour un moment :(

              Merci pour les retours en tout cas :)
              • Partager sur Facebook
              • Partager sur Twitter
                17 mai 2010 à 13:44:19

                Pour le tween, tu pourrais aussi ajouter les trucs d'easings classiques.


                Ah, et j'aime beaucoup l'idée du Sprite. ;)

                Bref, bonne continuation ;)
                • Partager sur Facebook
                • Partager sur Twitter
                  17 mai 2010 à 20:36:55

                  De quel sprite du parles ? :-°
                  Et à part ça, ça l'air pas mal (pas le temps de regarder en détail) sauf que c'est pas des classes, c'est des constructeurs.
                  Fût un temps où tu te serais limite fais injurier :-°
                  • Partager sur Facebook
                  • Partager sur Twitter
                    17 mai 2010 à 22:56:00

                    Ptain les fautes de frappe dans la doc' xD
                    Pour les constructeurs, je sais bien, mais comme jles utilise comme des émulations de classes, j'ai trouvé ça plus intuitif de les appeler comme ça... quitte à froisser les puristes :p

                    En tout cas merci beaucoup pour les retours, c'est encourageant :)
                    • Partager sur Facebook
                    • Partager sur Twitter
                      18 mai 2010 à 2:24:55

                      Sans parler de "purisme", c'est surtout que c'est une façon de penser concrètement différente.

                      Je t'invite à lire ces deux articles.

                      Le premier a été écrit à une époque où l'auteur (Douglas Crockford) tentait de simuler l'héritage classique en JS. Le deuxième a été écrit lorsqu'il s'est rendu compte que ce n'était pas du tout dans l'esprit du JavaScript.

                      http://javascript.crockford.com/inheritance.html

                      http://javascript.crockford.com/prototypal.html
                      • Partager sur Facebook
                      • Partager sur Twitter
                        18 mai 2010 à 7:20:43

                        Sachant que c'est une des références niveau JS.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          18 mai 2010 à 9:21:21

                          Je me suis d'ailleurs basé sur le premier article pour mon implémentation, et je n'avais que survolé le second.
                          Mais oui, ça fais partie des spécifités javascript que je ne maitrise pas complétement, mais je n'ai pas encore eu l'occasion de travailler en profondeur sur ses aspects, ce qui est surement nécessaire pour bien les comprendre.
                          • Partager sur Facebook
                          • Partager sur Twitter
                            18 mai 2010 à 11:28:52

                            A ce sujet également, le libre Object-Oriented JavaScript est une merveille. ;)

                            http://www.amazon.com/Object-Oriented- [...] dp/1847194141
                            • Partager sur Facebook
                            • Partager sur Twitter
                              18 mai 2010 à 12:22:33

                              Ca fait pas partie des truc donc Tiller a "parlé" ?
                              • Partager sur Facebook
                              • Partager sur Twitter
                                18 mai 2010 à 13:00:09

                                Si, celui que j'ai dit qu'il était trop bien, et que t'as dit qu'il était bien aussi, et que tu m'as posé des questions dessus et tout (sur les astuces pour hériter comme ci ou comme ça ^^ ). :)
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  18 mai 2010 à 13:53:17

                                  <hs>
                                  Hoho ! vous avez quelque livre a me conseiller ?
                                  </hs>

                                  Je ferait quelque petit teste de ta librairie ce soir... :)
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    18 mai 2010 à 14:03:29

                                    Bah comme dit précédemment... Object-Oriented JavaScript est franchement bien. (Notamment en ce qui concerne l'OO ^^ )

                                    Sinon y'a évidemment JavaScript, The Definitive Guide, 5th Edition qui est un des meilleurs.


                                    (Ces deux livres sont en anglais hein... The Definitive Guide a été traduit en français, mais y'a rupture de stocks partout... et avec la fermeture d'O'reilly France (si j'ai bien suivi), il ne risque pas d'être réédité... :euh: )
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      18 mai 2010 à 15:00:45

                                      Merci pour ces livre ! je file commander !
                                      (QQQQQQQouua ? O'reilly France ferme ? :'( )
                                      • Partager sur Facebook
                                      • Partager sur Twitter

                                      Test mah library?

                                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                      • Editeur
                                      • Markdown