Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Autres questions


Index du Forum » Autres questions » programmeur en lua
-florian66- Hors ligne Ancien rédacteur Points: 2383 Défis: 20 Message

programmeur en lua

Posté le 19/03/2014 19:42

comme pas grand monde n'y connait

pour de plus amples informations sur le Lua :
Regardez ceci:
le lua en livre
le lua manuel ebook but it's in english et avec le traducteur ça donne ça
c'est pour ceux que ça interresse si vous voulez le télécharger voici le lien
un tuto est disponible et très instructif (merci Drac0300)
encore un (encore merci)
encore un tuto



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

Citer : Posté le 31/03/2014 18:41 | #


si veb² était encore actif, on lui demanderais
In Arch, I trust ! And you ?
Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 31/03/2014 18:47 | #


Non : ce n'est pas avec graydraw.map qui utilise encore un autre encodage et qui permet de remplir tout l'écran (à ce que j'ai compris), c'est avec une fonction au nom du style spritexy
La string contient une version compressée du code du sprite (c'est ce que fait char.unpack)
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.
-florian66- Hors ligne Ancien rédacteur Points: 2383 Défis: 20 Message

Citer : Posté le 31/03/2014 18:48 | #


il faut le lua sous windows pour le faire
In Arch, I trust ! And you ?
Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 31/03/2014 18:52 | #


Oui, c'est d'aileurs en partie ce que j'essaie de passer on-calc
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.
-florian66- Hors ligne Ancien rédacteur Points: 2383 Défis: 20 Message

Citer : Posté le 31/03/2014 18:58 | #


ah ok mais transformer ton image en string n'est pas une aussi mauvaise idée
In Arch, I trust ! And you ?
Lephenixnoir En ligne Administrateur Points: 22772 Défis: 149 Message

Citer : Posté le 31/03/2014 18:59 | #


Comment transformez-vous une image en String ?
Vous prenez simplement les caractères un par un ?
-florian66- Hors ligne Ancien rédacteur Points: 2383 Défis: 20 Message

Citer : Posté le 31/03/2014 19:00 | #


je sais pas sur ce point là
In Arch, I trust ! And you ?
Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 31/03/2014 19:12 | #


Alors, pour transformer une image en string, il faut la créer avec le Sprite Maker puis entrer le tableau dans le programme de Vebveb pour qu'il créée un fichier lua contenant la string.

Par contre, si quelqu'un le sait, il faut utiliser quel encodage sur sprite Maker ?
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.
Lephenixnoir En ligne Administrateur Points: 22772 Défis: 149 Message

Citer : Posté le 31/03/2014 19:21 | #


Tu peux envoyer des image en gif ou png.
-florian66- Hors ligne Ancien rédacteur Points: 2383 Défis: 20 Message

Citer : Posté le 31/03/2014 19:23 | #


ascii je croit
In Arch, I trust ! And you ?
Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 31/03/2014 20:29 | #


Non, je ne parle pas de l'encodage des caractères, (il sort du code C). En fait, au départ, il permet de Fortier des morceaux de code pour différentes libs G100 et ce sont ces codes (qui sont des tableaux de unsigned char) qu'on compresse en string (c'est peut être un peu confus, regarde la doc de Veb^2)

Ajouté le 31/03/2014 à 20:29 :
Non, je ne parle pas de l'encodage des caractères, (il sort du code C). En fait, au départ, il permet de Fortier des morceaux de code pour différentes libs G100 et ce sont ces codes (qui sont des tableaux de unsigned char) qu'on compresse en string (c'est peut être un peu confus, regarde la doc de Veb^2)
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.
Lephenixnoir En ligne Administrateur Points: 22772 Défis: 149 Message

Citer : Posté le 31/03/2014 20:39 | #


Drac0300 a écrit :
[...] ce sont ces codes (qui sont des tableaux de unsigned char) qu'on compresse en string [...]

Si j'ai bien lu, vous ne faites que concaténer les octets.
Donc un octet de valeur 65 sera codé "A" ( = code ASCII) dans la string ?
Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 31/03/2014 21:34 | #


Ben en fait, je ne sais pas, il faudrait voir la doc de la fonction char.unwrap mais j'ai la sensation que c'est plus compliqué que ça...

Je vais commencer par voir comment il fait ses tableaux de char (en regardant le code source du sprite Maker puis. Je regarderai ce que fait précisément la fonction lua qui créé les strings.
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.
Lephenixnoir En ligne Administrateur Points: 22772 Défis: 149 Message

Citer : Posté le 31/03/2014 21:43 | #


Tu as la source du codeur de Strings ?
Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 01/04/2014 13:38 | #


Je suis en train d'étudier la source du codeur de Sprites, ensuite je verrais pour le script qui code les strings
qui est :
foo = { /le code du sprite/ }
out = io.open("Prog.lua", "w") -- l'ancien fichier Prog.lua sera effacé
foo2=string.char(unpack (foo));
out:write(("sprite = %q"):format(foo2));
--Prog.lua contient la string associé au sprite.
out:close()

(il faut l'utiliser avec le lua pour windows. J'ai du enlever les commentaires pour l'executer car il ne les reconnaissait pas)


Au fait :
Moi a écrit :
Par contre, si quelqu'un le sait, il faut utiliser quel encodage sur sprite Maker ?

Je ne sais plus lire !
Vebveb (dans sa doc) a écrit :
Pour dessiner un sprite, utilisez le logiciel sprite maker en mode C/C++ gxlib10 sur pc.


pou la fonction unpack :

lua.org a écrit :
It receives an array and returns as results all elements from the array, starting from index 1:


et string.char permet de mettre tout ça dans une string selon les codes ascii
(en clair, ça fait ce que LePhénixNoir disait : ça prend les codes ASCII de chacun des éléments du tableau et les met dans une string.)
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.
Lephenixnoir En ligne Administrateur Points: 22772 Défis: 149 Message

Citer : Posté le 01/04/2014 15:18 | #


S'il ne s'agit que de ça, ce sera vraiment très facile !
Il suffit de convertir unsigned char en char.
Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 01/04/2014 16:16 | #


Oui, effectivement, ce n'est pas très dur ! Le problème, c'est qu'il faut obtenir ce tableau de uchar...
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.
Lephenixnoir En ligne Administrateur Points: 22772 Défis: 149 Message

Citer : Posté le 01/04/2014 16:29 | #


Mon programme est là pour ça, il est déjà complet.
En fait je m'attaquais à des outils de sélection, d'inversion de zones, etc, pour obtenir un outil vraiment puissant.
Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 01/04/2014 18:25 | #


Ah bon ? Je croyais que ton programme ne gérait que la partie graphique ?
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.
Lephenixnoir En ligne Administrateur Points: 22772 Défis: 149 Message

Citer : Posté le 01/04/2014 18:32 | #


Ben oui, mais pour afficher l'image sur l'écran, il faut bien qu'il la sorte de quelque part.
J'ai un tableau d'unsigned char en tant que variable dans mon programme, il me suffit donc de mettre
char *str = (char *)image;

Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 01/04/2014 19:12 | #


Ah oui, mais en fait, le LuaFX prend un format spécial : le format pour gxlib10.
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.

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 v42 © créé par Neuronix et Muelsaco 2004 - 2022 | Il y a 116 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