Game Develop 3

Game Develop 3 est disponible !

Nouveautés principales depuis la version 2 :

Création de jeux en HTML5 avec la plateforme Web.
Possibilité de créer également des jeux supportant la plateforme Web et la plateforme native habituelle.
Nouveaux automatismes "Objet déplaçable" et "Destruction à la sortie de l'écran"
Les propriétés des objets sont affichées dans une grille de propriétés.
Le redimensionnement des objets a été mis à jour : L'origine d'un objet reste fixe après redimensionnement.
Les fenêtres affichant les objets ou automatismes affichent également les objets/automatismes inutilisés en gris.
Amélioration de l'interface
Corrigé: Game Develop ne se lançait pas sur des ordinateurs avec certaines cartes graphiques.
Correction de beaucoup de bugs

La licence a légèrement changée : Game Develop est maintenant plus présenté comme un “Pay what you want software” ( Payez ce que vous voulez ). Vous pouvez donc toujours l’utiliser gratuitement ou donner la somme que vous souhaitez sur la page de don mise à jour : compilgames.net/donateFR.php
Une petite boite de dialogue est affichée au bout de 3 lancements pour rappeler à l’utilisateur qu’il peut donner de l’argent si GD lui est utile. Cette boite de dialogue peut soit être réaffiché au bout de 3 lancement ( Si on clique sur Plus tard ) soit bien évidemment ne plus être affichée.
Pour les plus programmeurs d’entre vous, la plateforme web est Open source : github.com/4ian/GDJS
Les extensions sont disponibles également sur GitHub : github.com/4ian/GD-Extensions

Magnifique version, un gros bravo!
Pour le développement web, le jeu est vraiment lancé à L’INTÉRIEUR de la page?! Si c’est le cas, ça offre des milliers de possibilités! :smiley:

Oui, oui, voici quelques démos :
compilgames.net/games/WebShoot/
compilgames.net/games/WebSoldier/
compilgames.net/games/EnhancedTutorial/

Il faut posséder un navigateur récent ( Firefox, Safari, Chrome qui est particulièrement rapide pour les jeux ) vu que les jeux en HTML5 sont une technologie relativement récente, mais c’est l’avenir. Ca marche aussi sur les mobiles assez récents, plus de support de ceux ci est à prévoir ( Génération d’applications, gestion du toucher ou des accéléromètres integrés… )

EDIT : J’avais également oublié de signaler les deux nouveaux automatismes “Objet déplaçable” et “Destruction à la sortie de l’écran” :slight_smile:

4ian,

Sincèrement félicitation un travail remarquable !!!

Oui, sacré boulot, c’est vraiment génial :slight_smile:

Notez quand même que les fonctionnalités HTML5 sont un peu moins développés que la plateforme native pour le moment, mais les conversions des extensions déjà existantes vont arriver, et/ou des fonctionnalités exclusives.
( Et on peut déjà faire pas mal de choses dans l’état actuel ! Ça me rappelle certains logiciels de création qui ont sorti leur version HTML5 avec moins de fonctionnalités que ce que propose actuellement GD :slight_smile: )

Après une petite heure à essayer la mise à jour, un bug a commencé à frapper.
Quel que soit le jeu dont je lance l’aperçu, le logiciel me rapporte que la compilation des événements a échoué… :frowning: (sur la plateforme native)

Poste le contenu du fichier indiqué par le message d’erreur. :wink:

Oui, envoie le fichier d’erreur ou alors affiche les outils C++ ( Ruban général > Outils C++ ) et fait une copie d’écran de ce qui est affiché dans l’onglet Messages de compilation. :slight_smile:

Sa m’est arrivé aussi, j’avais ouvert mon projet de la version 2 et sauvegarder en version 3, pas possible d’avoir d’aperçu erreur de compilation, la seule chose que j’ai faite c’est de mettre a jour tout les chemins de dossier dans les options/répertoires qui étaient resté au nom de l’ancien dossier que j’avais effacé du coup il trouver rien, j’ai sauvé, j’ai fermé le logiciel, j’ai ré-ouvert et tout fonctionner nikel :slight_smile:

Magnifique travail.
Les jeux web marche bien, hormis de gros ralentissements sur le deuxième (Websoldier) mais j’avais la même chose sur la version téléchargeable.

En tout cas, bravo à toi :slight_smile:

WebSoldier demande un peu plus de ressources en effet, chez moi ça tourne bien sur Chrome mais beaucoup moins sur les autres navigateurs.
Il y a surement encore de la marge question optimisation que ça soit du coté de la plateforme JS de GD ou coté navigateurs :slight_smile:

Magnifique travail. :smiley:

Sinon, je vais sûrement commencé à mettre à jour les extensions la semaine prochaine dès que j’aurais mon nouveau PC portable.

Salut,

Depuis que je suis parti GD a évolué c’est dingue, cette version 3 avec le support de l’HTML 5 c’est juste le détail qui va faire sortir GD du lot. Énorme travail, continue !

j’ai fais un don , je supporte 4ian pour ton travail …

Merci, j’apprécie toujours et c’est très encourageant ! :slight_smile:

Désolé de mon retard, je n’avais plus accès à internet :confused:
Le contenu du fichier .txt: [spoiler]collect2: ld returned 53 exit status[/spoiler]

Salut salut (ouai ça fais un bail >< mais je suis toujours là héhé)

Superbe mise à jour, vraiment !

J’aurais euh… 2 question techniques et quelques remarques.
Tu me diras que j’aurais pu avoir la réponse en lisant le code dans le git, mais du peu que j’ai regardé je ne suis pas certain de l’affirmer (puis peut être un moyen de s’échanger des connaissances à ce niveau).

Au final l’export du code, c’est un peu comme du J2E non ? (code natif compilé en code web)
Pour le port HTML5, je crois pas que tu sois passé par le process “asm.js” qui à été poussé par Firefox ?
J’ai pas trouvé le code de GD, ou alors tu l’a compilé avec Pixi un gros “toutenun” ?

Sinon côté remarques:

  • Dommage d’utiliser jQuery pour un onload et une requête ajax (à mon sens) bien que je n’ai pas vue l’appel de la lib jQuery (intégrée dans Pixi ?)

  • Le code dans le dom direct boaf, c’est mieux dans un js à part surtout pour le port sur les plateformes en encapsulé (w8 et autres).

  • Il manque un titre dans la balise title :stuck_out_tongue:

  • Le fait de faire une requête ajax sur un serveur empêche que ce soit un jeu client (donc releasable sur plateformes mobiles / native à cause de ça) sachant que certaines plateformes l’interdise (w8).

  • Dommage de faire un xml quand on sait le json plus rapide et plus adapté au web mais le xml marche très bien (d’ailleurs gg pour la façon dont tu à géré ça, j’aime beaucoup).

  • et dernier, euuuh, avec PixiJS tu as de si mauvaises performances ? Oo (genre soldier qui prends des coups de lag dans la FF nightly), je veux dire, petit canvas petite réso et petites images, normalement sans webGL c’est censé tourner à balle… Faut vraiment que j’essaye soit voir si c’est pas le renderer webGL qui fracasse tout… (oui je fais des jeux en canvas2D à 60fps globalement).

Si tu veux parler en détails de certains points hésites pas à me mp ou mail ^^

Et bonne continuation comme d’hab, je suis de près ce que tu fais :slight_smile:

Le code n’est pas compilé pour la plateforme web, Game Develop écrit juste un script contenant les événements qui seront donc exécutés en boucle, ce n’est en aucun cas du C++ compilé en JS, c’est du JS pur.

4ian a déjà apporté des modifications sur le dépot git pour que GDJS utilise du JSON à la place du XML.

Le code JS est généré directement depuis les évènements ( ça ne passe pas pas du code natif qui est retraduit ou ça, y a juste une seule étape de traduction ). ( C’est la grosse classe EventsCodeGenerator de la plateforme JS qui s’occupe de ça )

Non, asm.js c’est plus à destination de compilateurs plus bas niveau genre emscripten qui fait de la traduction C++ vers JS. J’avais regardé emscripten d’ailleurs, mais j’ai préféré faire une plateforme “clean” javascript plutôt qu’une plateforme qui ferait genre Evenements → C++ → JS.

J’ai largé jQuery pour la prochaine version, ça servait uniquement à la requête Ajax en effet et au xml. :slight_smile:

Au pire y a trois fois rien dans index.html, c’est juste à encapsuler quelque part.

Ces deux remarques sont aussi “corrigée” pour la prochaine version. Je me suis basé sur du XML pour des questions de facilité, mais pour la prochaine version, les données seront enregistrées en JSON ( en reprenant la structure du XML avec quelques modifs mineures ) et donc plus besoin de faire une requête pour récupérer le fichier ( et question performance, les données du jeu seront directement en mémoire stockée sous forme d’un objet Javascript donc potentiellement plus rapide ).

Non Pixi.js c’est très performant au contraire. Je sais que Web Soldier lag pas mal chez moi sur Firefox, par contre sur Chrome je tourne à 60 fps avec une chute à 45 au départ dû au chargement du son et au fait que ça tire dans tous les sens.
Je suis entrain d’améliorer la gestion de la mémoire également, le fait que le garbage collector soit appelée fréquemment est souvent signe de ralentissement en Javascript.

EDIT : Grillé par Victor, mais en effet les derniers modifs ont permis de se passer de jQuery et d’utiliser du JSON direct :slight_smile: