Forum Casio - Vos tutoriels et astuces


Index du Forum » Vos tutoriels et astuces » [C][Basic][Lua][Prizm][G75/85/95] Sprite Coder
SmashmasterHors ligneAncien modérateurPoints: 4559 Défis: 253 Message

[C][Basic][Lua][Prizm][G75/85/95] Sprite Coder

Posté le 23/05/2013 21:45

Ce que je trouve vraiment dommage avec le codeur de sprite sur le site cemetech.net, c'est qu'il n'est pas possible de coder plusieurs sprites en même temps, par exemple dans mon jeu Zelda il y aura 300 sprites et coder 300 sprites est beaucoup trop long à faire...

Du coup j'ai programmé hier un programme en PHP qui permet de coder plusieurs sprites en même temps, sans limitation de taille, pour les calculatrices G75/85/95 et pour la cg-10/20, j'essayerai de l'adapter plus tard en C/C++.

>>Vous pouvez accéder à la V3 ici<< .

Installation - Cliquer pour dérouler
Installation - Cliquer pour enrouler

Vous pouvez aussi l'installer sur votre ordinateur pour l'utilisation offline
Télécharger puis installer sur votre ordinateur easyPHP (ou wamp, mais perso je préfère easyPHP).
Télécharger le .zip dans le fichier joint.
Décompresser le .zip dans le dossier "www" qui se trouve dans le dossier "easyPHP" .
Dans un navigateur web (Chrome de préférence), taper dans la barre d'adresse 127.0.0.1, puis cliquer sur le dossier spriteCoder


Ce que ce programme est capable de faire
Ce que ce programme est capable de faire

Ce programme est capable de :
Coder tous les images .PNG .GIF et .JPEG
Coder les sprites pour les G75/85/95 et Cg-20
Générer un tableau de pointeur, contenant les adresses de tous les sprites.
Coder les sprites en 8-bits ou en 16-bits pour la cg-20
Coder plusieurs feuilles de sprites en même temps


Dans une future mise à jour
Dans une future mise à jour

Dans une future màj il sera possible
de coder les sprites en 2-bits et 1-bit
de coder des sprites avec des niveaux de gris


Voilà, si vous avez des idées d'améliorations faites m'en part

dernière mise à jour : 16-03-2014 à 17:33
dernière version : 2.0b


Fichier joint


Pages : 1, 2, 3, 4, 5, 6, ... 9Suivante
ZiqumuHors ligneMembre d'honneurPoints: 2918 Défis: 9 Message

Citer : Posté le 23/05/2013 21:51 | #


Si ça te gène pas, pour que tout le monde puisse tester je l'ai mis sur mon serveur :
http://wiki.planet-casio.com/tools/SpriteCoder/
SmashmasterHors ligneAncien modérateurPoints: 4559 Défis: 253 Message

Citer : Posté le 23/05/2013 21:55 | #


Ok ça me va
Dark stormHors ligneMembre d'honneurPoints: 10765 Défis: 174 Message

Citer : Posté le 23/05/2013 22:15 | #


pas mal
Je suppose que les sprites seront compatible avec les nouvelles fx-CP400 ? (lorsqu'un sdk communautaire sortira)
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Páranÿe quetë Quendya
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 23/05/2013 22:16 | #


ben il suffira de faire une fonction compatible
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
Dark stormHors ligneMembre d'honneurPoints: 10765 Défis: 174 Message

Citer : Posté le 23/05/2013 22:24 | #


je parle au niveau des couleurs
la fx-CP400 en a autant que la Prizm, j'en déduit que le format sera identique (pas besoin d'encoder un pixel sur 3 octets, etc)
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Páranÿe quetë Quendya
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 23/05/2013 22:27 | #


ben de toute facon, cela ne serait pas trop difficile de corriger cela (une fonction qui changerait la palette de couleur pour l'agrandir)
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
SmashmasterHors ligneAncien modérateurPoints: 4559 Défis: 253 Message

Citer : Posté le 23/05/2013 22:32 | #


Oui ce n'est pas difficile de corriger ça, il suffit juste de modifié quelques lignes de codes

J'ai rajouté le lien dans la description.

Ajouté le 24/05/2013 à 00:12 :
Màj : il est maintenant possible de coder des images .gif et .jpeg

Ajouté le 24/05/2013 à 21:41 :
Quelqu\'un peut m\'expliquer comment fonctionne le système d\'encodage des sprites pour les G75/85/95? Je pourrais rajouter ça
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 24/05/2013 21:58 | #


ben tout les pixels sont regroupé en 8, et mis dans un octet

par exemple : {0,0,0,0,1,1,1,1} //une ligne de 4 pixels
devient : {0X0F}

et on fait ça pour chaque ligne, et quand un sprite est plus grand que 8 de longueur, chaque ligne est représenté par deux unsigned char


un autre exemple :
{1,1,1,0,0
,1,1,1,1,0
,1,1,1,1,1
,1,1,1,1,0
,1,1,1,0,0}
devient : unsigned char fleche[] = {0xC0, 0xE0, 0xF0, 0xE0, 0xC0};

Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
SmashmasterHors ligneAncien modérateurPoints: 4559 Défis: 253 Message

Citer : Posté le 24/05/2013 22:27 | #


Merci, et comment on fait si la longueur est inférieur à 8? Car je ne comprend pas trop ton deuxième exemple, 11100=00011100=0x1C or dans ton exemple ça donne 0xC0 donc j'ai fait quelque chose de faux.
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 24/05/2013 22:30 | #


si la longueur est inferieure a huit, on ne compte pas les dernier pixels

la doc de monochromeLib a écrit :
Pour un bitmap de largeur intérieure à 8, chaque ligne va tout de même prendre 1 octet. Les derniers bits de chaque octets seront simplement inutilisés.
Pour un bitmap d'une largeur supérieure à 8, mais non multiple de 8, ce sera pareil, les derniers bits du dernier octets de chaque ligne seront inutilisés.
Les fonctions ML_bmp appliquent un masque sur ces derniers bits pour qu'ils soient inactifs, quelque soit leur contenu.

Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
SmashmasterHors ligneAncien modérateurPoints: 4559 Défis: 253 Message

Citer : Posté le 24/05/2013 23:01 | #


D'accord, donc 11100<=> 11100000?
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 25/05/2013 08:36 | #


oui

Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
SmashmasterHors ligneAncien modérateurPoints: 4559 Défis: 253 Message

Citer : Posté le 25/05/2013 14:55 | #


Mise à jour, il est maintenant possible de coder des sprites pour les G75/85/95
Quelqu'un peut vérifier si le code générer est correct? Vous pouvez y accéder en cliquant ici
Normalement ça marche aussi avec des images qui ne sont pas monochrome.
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 25/05/2013 15:09 | #


c'est bon, ca marche (en tout cas pour le sprite 16*8 que j'ai testé)
et aussi pour l'image couleur de 102*37 pixels que j'ai testé
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
SmashmasterHors ligneAncien modérateurPoints: 4559 Défis: 253 Message

Citer : Posté le 25/05/2013 15:12 | #


Super et merci
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 25/05/2013 15:14 | #


merci a toi surtout, ton logiciel est beaucoup plus pratique que TilesCreator (enfin, de mon point de vue)
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
SmashmasterHors ligneAncien modérateurPoints: 4559 Défis: 253 Message

Citer : Posté le 25/05/2013 15:28 | #


Avec plaisir
Si vous avez des idées d'améliorations, ou si vous avez trouvé des bugs, faites m'en part ;).
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 25/05/2013 15:38 | #


peut être une idée d’amélioration (mais de l'ordre du détail) :
quand on génère le code, cela serait bien de pouvoir choisir la taille max des lignes.
en effet, moi j'aime bien avoir un sprite par ligne, je trouve cela plus condensé, mais je sais que d'autres n'aime pas trop.
il faudrait pouvoir laisser le choix entre :
une ligne par sprite, une ligne du sprite par ligne ,et un nombre max de caractere par ligne

exemple :

pouvoir genere ca :

unsigned char petit_orbe[] = {0x3C, 0x42,0xC1, 0xC1, 0xC1, 0xE1, 0x7E, 0x3C};//tout sur une ligne

unsigned char petit_orbe[] = {
0x3C,
0x42,
0xC1,
0xC1,
0xC1,
0xE1,
0x7E,
0x3C};//une ligne du sprite par ligne

unsigned char petit_orbe[] = {
0x3C, 0x42,
0xC1, 0xC1,
0xC1, 0xE1,
0x7E, 0x3C};//avec max 12 caractères par ligne

Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
SmashmasterHors ligneAncien modérateurPoints: 4559 Défis: 253 Message

Citer : Posté le 25/05/2013 15:42 | #


Ok, je vais essayer de faire ça :).
DodormeurHors ligneAncien rédacteurPoints: 3928 Défis: 82 Message

Citer : Posté le 25/05/2013 15:45 | #


et aussi pouvoir coder des feuilles de sprites, en mettant par exemple qu'un sprite est de 16*16 et puis tout mettre dans un tableau. ce sera plus pratique pour l'animation d'un personnage ou pour utiliser des sprites pris d'internet
Pokemon !!!!!! => pokemon stadium/battle

mes meilleurs jeux
Cliquer pour enrouler
un jeu avec des niveaux de gris mais compatible SH4 (mais en monochrome pour les SH4) => bomberman
envie de plonger dans la mer pour ramasser des tresors? => ballon sea
envie de sauver l'univers dans un jeu avec une longue durée de vie? => saviors of the future
un add-in addictif avec plein de secret et de trophées => evasion survival
un shmup bien dur et sadique => saviors 2

projets
Cliquer pour enrouler

pokemon
Cliquer pour enrouler



encodage des données de combat (sprite, attaques et nom)
   100%

systeme de combat
   100%

encodage des données de pokemon (niveau d'apprentisage et evolution)
   100%


moteur de la carte
   50%

level design
   1%

finition de pokemon jade
   42%

merci a tout le monde pour son soutien


projets que je soutiens
Cliquer pour enrouler
minecraft de limachi
zelda prizm de smashmaster (en esperant qu'il puisse le finir)
les tests de marmotti
un RPG de dark storm (dont je connais le nom, mais pas vous ) Arcuz !
Pages : 1, 2, 3, 4, 5, 6, ... 9Suivante

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2019 | Il y a 33 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