Bonjour Nal,
Je t'écris pour te faire part des évolutions de mon projet Newton Adventure.
Le projet
Un jeu de plate-forme 2d où le joueur peut parcourir les niveaux soit de façon classique en faisant courir et en sauter le héros, soit changer la direction de la gravité pour le faire tomber lui ou ses ennemis et obstacles.
Sous licence BSD pour le code et CC-BY-SA pour les données, il est disponible pour Linux, MacOS X et Windows ou tout OS avec Java et OpenGL.
Nouvelles versions
La dernière fois où je t'en ai parlé, il me semble qu'il s'agissait de la version 1.2. Voici les nouveautés qu'ont apportés les dernières:
1.3
- Les manettes de jeu USB sont gérées et configurables dans le menu "Options".
- Dans les niveaux les plus grands, il est possible de collecter deux objets, une carte et une boussole, qui permette de débloquer la vue d'une mini-carte très utile pour se repérer.
- Une nouvelle quête composée de 5 niveaux, hades, est disponible et propose de nouveaux éléments de jeu tels que les téléporteurs ou les serrures.
1.4
- une sauvegarde de la progression et un menu pour voir et choisir les niveaux.
- de nouveaux niveaux "0.5" de difficulté intermédiaire pour ne plus rebuter les joueurs.
- quelques bugs en moins et optimisations en plus.
Certaines nouveautés sont invisibles, mais destinées à une prochaine refonte graphique:
- l'intégration de nanim.
- la possibilité d'animer n'importe quel élément du décor.
- la gestion de plusieurs couches de décors.
1.5
Cette nouvelle version est destinée à corriger beaucoup de bugs trouvés ces derniers temps:
- affichage des pommes et des explosions limité à un élément.
- blocage de la clé par les haches tournantes dans certains niveaux.
- lags du clavier et de la souris.
- impossible d'aller dans les niveaux bonus.
Portage sur Android
Grâce au très généreux don d'un HTC Magic par Allucard, j'ai pu commencer le portage sur Android.
Pour l'instant je ne fournis pas de binaires pour cette plate-forme, car la version actuelle est trop lente pour être jouable (1 ou 2 fps max).
J'ai d'ailleurs beaucoup de mal à trouver comment optimiser, je n'ai pas l'impression de surcharger, mais les mobiles sont des petites choses fragiles et il ne faut sans doute pas trop leur en demander!
Futur
Le projet va continuer d'évoluer:
- j'espère pouvoir finir le portage Android, si la puissance du HTC me le permet!
- une refonte graphique est en cours.
- j'étudie de nouvelles idées: mode deux joueurs, générateur de niveaux, nouveaux pièges…
Contribuer
Quand j'ai commencé le développement de Newton Adventure, je ne pensais pas recevoir de contribution, mais petit à petit je reçois une aide précieuse de plusieurs personnes. Le fait de beaucoup parler de mon travail et de développer des outils réutilisables ( http://devnewton.bci.im/projects/nanim , http://devnewton.bci.im/projects/libtiled-android et http://devnewton.bci.im/projects/scoreserver) aide certainement!
Si d'autres personnes souhaitent donner un coup de main, j'ai commencé un gros travail de documentation sur le wiki du jeu: http://devnewton.bci.im/projects/newton_adventure/wiki?name=Contribute
La première et la plus simple des contribution est bien sûr de jouer!
Liens
Annonce et téléchargement de la dernière version: http://devnewton.bci.im/blog/index.php?post/2012/05/24/Newton-Adventure-1.5
Dépôt source Fossil: http://devnewton.bci.im/projects/newton_adventure
# Dépêche
Posté par barmic . Évalué à 5.
Pourquoi ne pas l'avoir poster comme dépêche ?
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Dépêche
Posté par devnewton 🍺 (site web personnel) . Évalué à 10.
Pour pouvoir dire bonjour à Nal!
D'une manière générale, je trouve que l'ambiance est plus sympathique dans la section "journaux" de linuxfr.
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: Dépêche
Posté par Maxime (site web personnel) . Évalué à 3.
Sans vouloir manquer de respect au dev de ce jeu, je ne pense pas que cela mérite une dépêche. Ou alors il faudrait une dépêche pour tous les petits jeux open source et franchement, ça serait pénible.
En revanche, c'est exactement le genre d'informations que je recherche lorsque je regarde les journaux.
[^] # Re: Dépêche
Posté par j_m . Évalué à 7.
Quand c'est un développeur du jeux qui fait la dépêche et participe aux discussions dans les commentaires, c'est différent. J'aime bien parceque les discussions deviennent un peu technique et je trouve que c'est l'aspect de linuxfr qui a le plus besoin d'être encouragé en ce moment.
[^] # Re: Dépêche
Posté par Maxime (site web personnel) . Évalué à 4.
Moi aussi j'aime bien, c'est pour ça que j'aime voir ce genre d'info dans les journaux. La vraie question est sans doute : qu'est-ce qu'on met dans les dépêches et qu'est-ce qu'on met dans les journaux. Pour moi, les journaux ne sont pas juste des dépêches pas assez mûres ou qui n'intéressent pas assez de monde mais aussi des informations plus ouvertes ou plus communautaires (ex: je dev un jeu, j'ai envie d'en parler et d'en discuter).
[^] # Re:Dépêche
Posté par Juke (site web personnel) . Évalué à 2.
Pourquoi ?
[^] # Re:Dépêche
Posté par Maxime (site web personnel) . Évalué à 3.
Cela deviendrait long de lire toutes les dépêches et on passerait à côté des informations les plus importantes. Les journaux sont faits pour ça selon moi. Et si tu mets trop de choses en dépêches, plus personne ne lira les journaux.
[^] # Re:Dépêche
Posté par coïn . Évalué à 2.
Faudra revoir la ligne éditorial quand il y aura 20 dépêches par jours. Mais là, le rythme est de 1 ou 2 par jour. on a de la marge je pense.
Perso, je serais pour la suppression des dépêches, la suppression des forums, et des karmas. Le système de tags permettrait à chacun de se faire sa ligne éditoriale.
Bref, de libéraliser la création de contenu pour redonner de la vie au site qui est en train de dying.
[^] # Re:Dépêche
Posté par devnewton 🍺 (site web personnel) . Évalué à 4.
Il faut quand même une bonne ligne éditoriale par défaut pour les nouveaux visiteurs.
Aujourd'hui les dépêches mélangent des articles originaux avec des revues de presse et des annonces d'apéro à Perduville.
Dans les journaux, on sait que l'on va trouver des articles qui tiennent à coeur à leurs auteurs.
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re:Dépêche
Posté par barmic . Évalué à 2.
Ça pourrait être intéressant de commencer par tager tout les contenus en « dépêche », « journaux » et « forum » ainsi chaque page actuelle ne serait qu'une même page qui affiche les derniers contenus d'un tag donné.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
# HTC Magic et performance
Posté par Jux (site web personnel) . Évalué à 10. Dernière modification le 25 mai 2012 à 19:40.
J'avais à l'époque développé un jeu de tank en 2D qui tourne bien sur un HTC Magic :
https://play.google.com/store/apps/details?id=net.fhtagn.zoob_demo
Les sources sont dispo sur github :
https://github.com/julienr/zoob
Un petit retour pour que ça tourne sur un Magic :
- J'ai utilisé C++ plutôt que Java. Le Magic n'a pas de JIT (trop peu de mémoire) et Java est donc super lent sur ce téléphone qui n'est déjà pas rapide…
- Quitte à rester en Java, il vaut mieux éviter Canvas et Drawable et travailler directement en OpenGL. Ca permet d'être plus fin dans ce qu'on veut et on gagne des perfs.
- Y'a tout un tas de petit "tips" pour écrire du code Java performant sur Android. Ca passe par l'utilisation de static final lorsque c'est possible, éviter les getter, etc :
http://developer.android.com/guide/practices/design/performance.html
- Mais si tu veux vraiment des bonnes perfs sur des téléphones bas de gamme, je crois que passer par C++ est nécessaire. C'est assez facile de faire du JNI sous Android. Pour mon jeu de tank, j'avais fais l'interface en Java et tout ce qui est jeu en C++.
Bonne chance !
[^] # Re: HTC Magic et performance
Posté par devnewton 🍺 (site web personnel) . Évalué à 3.
Je cherche à faire un portage simple, pas une réécriture. De plus si d'accord pour dire que C++ reste le meilleur langage pour les jeux, la génération de binaire pour toutes les combinaisons kernel/distribution/hardware est trop consommatrice de temps pour un projet que je fait sur mon temps libre.
Tu veux dire Android?
A ce propos j'ai vu que le processeur du HTC Magic propose une accélération de l'exécution du bytecode Java, mais je me demande si du fait de l'utilisation de dalvik, elle est utilisée…
Je vais regarder ça, mais j'ai l'impression que c'est surtout la rasterisation qui ralentit tout.
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: HTC Magic et performance
Posté par Jux (site web personnel) . Évalué à 2.
Pour le JIT, oui je voulais dire Android. Enfin, Android 1.6 sur Magic n'a pas de JIT. Si je me souviens bien, le JIT est apparu avec la version 2.X, mais même en installant ça sur un Magic (cyanogenmod par exemple), le JIT est désactivé car le téléphone n'as pas assez de RAM.
[^] # Re: HTC Magic et performance
Posté par devnewton 🍺 (site web personnel) . Évalué à 2.
Arg, ça veut dire que le jeu ne sera jamais fluide sur ce téléphone, car le moteur physique doit bien bouffer du CPU d'autant plus que le HTC n'a pas de FPU…
J'ai consacré pas mal de temps à ce portage, mais je ne sais pas si je vais pouvoir continuer :-(
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: HTC Magic et performance
Posté par Jux (site web personnel) . Évalué à 2.
L'autre solution, c'est de viser un téléphone plus récent qui a du JIT, un FPU, etc…
Mais ouais, faire tourner un jeu avec moteur physique sur un Magic, c'est un gros challenge je pense :-)
[^] # Re: HTC Magic et performance
Posté par devnewton 🍺 (site web personnel) . Évalué à 2.
J'ai ajouté ton jeu à https://linuxfr.org/wiki/jeux_libres_linuxfr
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.