Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Actualités


Index du Forum » Actualités » La revue des projets – 230
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

La revue des projets – 230

Posté le 08/05/2022 19:05

Bonsoir à tous, et bienvenue dans cette revue des projets qui s'annonce fascinante quoi qu'un poil technique. SlyVTT vient d'achever nombre de ports de bibliothèques utiles, et on va voir ensemble de quoi il retourne. Mais avant ça, on attaque doucement avec le jeu de la semaine !


Frozen Frenzy 2 (Massena)

On commence donc avec un platformer. Il faut remonter au CPC #28 pour trouver Frozen Frenzy, la participation de Massena qui avait remporté le concours. Un jeu très solide mais apparemment pas assez pour Massena, qui veut maintenant le détrôner avec un successeur encore meilleur.

Quelques images et informations tombaient par miettes sur #projets depuis quelques temps, mais on a cette semaine un topic concret, et même une version jouable avec un niveau de test, ci-dessous en vidéo !


Il suffit de jouer quelques secondes pour sentir qu'on a bien plus de contrôle sur δ que dans le premier opus (pour mon plus grand plaisir). Et le programme met l'eau à la bouche :

Massena a écrit :
  • Des graphismes et des environnements urbains et industriels entièrement conçus par mes soins.
  • Un gameplay travaillé, qui se veut plus précis, flexible et simple d'accès que le premier.
  • Une grande variété de pièges, mécaniques centrées autour du feu et de la glace, ainsi que différents objectifs de niveaux (tout geler, mais aussi fuir, s'infiltrer, aller chercher un pancake et revenir...)
  • Un level design intelligent où s'entremêlent voies simples d'accès et passages hardus mais récompensant les speedrunners.
  • Un système à la Celeste/Super Meat Boy avec des niveaux optionnels plus complexes et remplis de pics !
  • Une mini bande-dessinée dont chaque fragment est dévoilé en début de chapitre, racontant l'odyssée de δ.

On le suivra attentivement !


Bibliothèques SDL, SDL_image, libPNG, libJPEG et zlib (SlyVTT)

SlyVTT a récemment porté beaucoup de bibliothèques pour la PRIZM et Graph 90+E. Ces bibliothèques permettent trois choses : utiliser la SDL sur Graph 90+E, charger des images PNG/JPG, et enfin compresser des données dans un add-in.

Le port de la SDL permet d'écrire des programmes avec l'API SDL 1.2 (l'ancienne) sur Graph 90+E, avec l'avantage majeur que plein de gens connaissent cette API et que les programmes écrits ainsi peuvent être compilés trivialement pour l'ordinateur en plus de la Graph 90+E.

Par exemple, voici un Tetris écrit par SlyVTT pour TI-Nspire avec la SDL 1.2, qui marche nickel sur notre machine CASIO (SDLTetris.g3a):


Ce port supporte le module vidéo (seulement en 396x224 16-bit), les timers, le clavier, ainsi que les fichiers (modulo les world switch qui vont bien dans gint). En gros il supporte tout ce qui est utilisé couramment.

Sauf peut-être que la SDL toute seule ne sait charger que des images BMP, qui sont un peu nulles. D'où la suite ; SlyVTT a aussi porté la bibliothèque SDL_image qui permet d'utiliser plein d'autres formats, dont PNG, JPG, et PNM.

Mais quitte à supporter les fichiers PNG et JPG (ainsi que la méthode de compression/décompression des PNG), SlyVTT nous fournit au passage de quoi les utiliser hors de la SDL, via un port de la libPNG et un port de la libJPEG9d (pas encore de topic à ce jour, mais ça vient).

Grâce à ces outils, il est possible d'utiliser des images PNG et JPG dans un add-in sans les pré-convertir comme on le fait par exemple avec fxconv. Il est possible de les charger depuis la mémoire de stockage, ce qui offre beaucoup d'opportunités pour des packs de textures et autres options de customisation.

Mais ce n'est pas tout ! En effet, le format PNG utilise sur une méthode de compression générique qui est implémentée par zlib. Puisque SlyVTT a porté zlib pour avoir libPNG, il nous montre aussi comment utiliser zlib tout seul dans un add-in, pour compresser des données et des fichiers. Les résultats sont assez parlants, car il y a pas mal de choses qu'on peut compresser :


Nul doute que cela aiderait à alléger les add-ins et les terribles temps de transfert.

Si vous êtes perdus, voici un résumé des bibliothèques. Chaque sous-liste représente une dépendance (par exemple SDL_image utilise libPNG qui utilise zlib) :

  • SDL 1.2 : une lib classique pour programmer applications et jeux
  • SDL_image : une extension SDL pour charger des images
    • libPNG : implémentation de référence du format PNG
      • zlib : outil de compression de fichiers (notamment utilisé par PNG
    • libJPEG : implémentation de référence du format JPG

Sinon, n'hésitez pas à demander des précisions !

C'est tout pour cette fois. La semaine prochaine ce sera probablement un Press Shift, auquel cas on se retrouve dans deux semaines.

Et à bientôt sur Planète Casio !

Un seul programme a été posté depuis la dernière RdP :
Eigenvalues de TheBigBadBoy

Lire la RdP précédente : La Revue des Projets – 229
Besoin d'aide ? Une idée ? Un projet ? Un article !


-florian66- Hors ligne Ancien rédacteur Points: 2384 Défis: 20 Message

Citer : Posté le 08/05/2022 19:21 | #


Bravo Slyvtt pour ton travail, je pense que l'on est entrain de revoir complètement la façon de coder les addins
In Arch, I trust ! And you ?
Slyvtt Hors ligne Maître du Puzzle Points: 2389 Défis: 17 Message

Citer : Posté le 08/05/2022 21:33 | #


Merci -florian66-
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Massena Hors ligne Ancien rédacteur Points: 2244 Défis: 11 Message

Citer : Posté le 08/05/2022 23:00 | #


Sympa le nouveau format, c'est effectiverment plus organisé et plus aéré. Bien joué.
Bonne chance SlyVTT, j'ai le sentiment que ça va permettre de faire des trucs pétés
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 08/05/2022 23:47 | #


Content que ça te plaise. L'idée principale c'est de faire les titres un peu "mastoc" avec tous les liens dedans, à la fois pour bien connecter les sujets/programmes/builds liés et pour distinguer visuellement chaque partie. Le reste c'est une reprise du style léger de quand on a introduit le @ RDP, plus efficace à mon avis que de citer en bloc.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Thebigbadboy Hors ligne Maître du Puzzle Points: 455 Défis: 16 Message

Citer : Posté le 10/05/2022 12:08 | #


Mdr je viens seulement de remarquer la beauté de la thumbnail de cette RdP

Merci pour l'article
Un problème sans solution est un problème mal posé — Albert Einstein

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 127 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd