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 - Projets de programmation


Index du Forum » Projets de programmation » Personnalisation de caractères en sprites
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Personnalisation de caractères en sprites

Posté le 22/11/2014 15:24

Comme je l'avais dit ici j'ai pu modifier les caractères de l'OS, j'ouvre donc ce topic pour en discuter





Il est donc possible d'avoir des caractères personnalisés et de les utiliser comme des sprites dans les programmes en basic
Les jeux pourraient simplement avoir une version normale et une spéciale sprites.
Si on arrive à mettre en place un add-in pour gérer ça on peut même envisager des fichiers de sprites qui seraient joints aux jeux.

Mais il reste à voir plusieurs choses :
- Si cela intéresse beaucoup de monde
- Comment procéder (changer l'OS fonctionne, mais à voir avec un Add-in)
- Si c'est faisable, quels sprites intégrer (les créer et se mettre d'accord)



Quelques infos supplémentaire :

Image du 1er essais
Image du 1er essais


Manière dont sont codés les sprites :
Mode texte
Mode texte
- un caractère fait 6x8 pixels, la colonne de gauche et la ligne du bas étant vides pour la plupart des caractères.
- chaque ligne de pixels du caractère est codée sur un octet
- les deux derniers bits de cet octet sont inutilisés, donc des 0

On peut ainsi faire des sprites collables les uns aux autres (pas d'espace entre) comme la pierre sur l'image au dessus.

Mode graphique
Mode graphique
Pour les caractères les moins larges (ex : A,B,C) :
- un octet code pour 2 lignes, on a donc 4 bits par ligne
- un caractère fait 4x6 pixels (on a encore une ligne vide sur le coté et en dessous)

Pour les quelques caractères plus larges (ex: M,Q,W) :
- chaque ligne est codée sur un octet
- un caractère fait 6*6 ?
A vérifier si ça fonctionne bien comme ça pour tous les caractères larges...


Les idées proposées pour les sprites :
liste des idées
liste des idées

- 1 ou 2 personnages
- monstre(s)
- explosion
Blocs :
- brique
- mur
- toit
- herbe
- arbre/plante
+ un bloc quelconque



Scientifix Hors ligne Membre Points: 762 Défis: 30 Message

Citer : Posté le 29/11/2014 12:36 | #


ça rend vraiment super bien Je suis impressionné là ...
JE SERAI ABSENT POUR 2 ANS A+

Je suis fan de Mathématiques et de Sciences en général (d'où mon nom ). Consultez mes programmes en rapport avec les Maths
--------------------------------------------------------

Calculatrice : Graph 75
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 29/11/2014 12:40 | #


Tu peux aussi faire les tortues qui avancent en boucle grâce au str .
Enfin après, toi le pro des Str. Ce qui n'est pas vraiment mon cas car je me suis vite lassé de programmer des jeux en Locate.

Ajouté le 29/11/2014 à 12:42 :
Pour la rapidité si on overclock la calculatrice c'est limite on voit pas le personnage se déplacer il se téléporte
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 29/11/2014 13:21 | #


Mais comment arrives-tu à assurer la continuité ? Il devrait y avoir des espaces... c'est du 5*7 à la base !
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 29/11/2014 13:40 | #


Nop, c'est du 6*8 à la base mais les caractères de casio ont tous une ligne de pixels vidé à gauche et en dessous des caractères (sauf 2 spéciaux qui utilisent celle à gauche, mais je n'en ai vu aucun utiliser celle du dessous)

Ajouté le 29/11/2014 à 13:42 :
Je viens de rentrer mes 25 sprites avec succès
C'est bizarre comme les caractères sont stockés, ils sont par petits paquets avec autre chose ou un caractère vide entre les paquets...
Tweaks : ||||| ||||
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 29/11/2014 13:42 | #


Oh, en voilà une bonne nouvelle
Du coup on peut accéder à la ligne et à la colonne habituellement inaccessibles ?

Au passage, tu devrais mettre ta dernière création dans le post principal, ça fait sacrément envie :3

Ajouté le 29/11/2014 à 13:44 :
Au fait, est-ce que tu pourrais m'indiquer grossièrement les adresses de début et de fin de la zone mémoire où on trouve lesdits caractères ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 29/11/2014 13:45 | #


Pour les rentrer tu as du enlever l'os "normal" et mettre l'os avec les caractères modifiés ?
Il faut pas trop se gourer lors de la création des sprites parce que cela prend du temps de changer d'os.
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 29/11/2014 13:51 | # | Fichier joint


@Lephenixnoir :
Oui on peut accéder à la ligne et à la colonne habituellement inaccessibles
Je mettrai tout ça dans le post quand j'aurai fait la vidéo.

Pour les adresses je regarde selon le caractère que je veux modifier, donc je ne sais pas encore où chacun se situe...

@Silaxe :
Quand j'ai modifié l'OS j'ai vérifié chaque caractère que je changeais, et apparemment j'ai bien fait puisqu'ils ne sont pas tous à la suite (ils sont rangés bizarrement).

Voilà ce que j'ai obtenu :

Il ne me reste plus qu'à coder un petit Mario.
Tweaks : ||||| ||||
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 29/11/2014 13:55 | #


Bon courage pour le programmer(après avoir fait minecraft cela ne doit pas être très compliqué )
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 29/11/2014 13:55 | #


Franchement... ça envoie du lourd !
Par contre faut pouvoir le remettre à la normale après, sinon pas moyen de réutiliser l'OS après...
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 29/11/2014 14:02 | #


lephenixnoir a écrit :
sinon pas moyen de réutiliser l'OS après...

Je ne pense pas que ces caractères soit indispensables.
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 29/11/2014 14:04 | #


Disons que l'OS ou un add-in risque de les ressortir ensuite...
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 29/11/2014 14:11 | #


Comment ? (ca devient trop compliqué pour moi )
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 29/11/2014 14:16 | #


Ben, si jamais à un moment l'OS essaie de l'afficher à l'écran tu auras un morceau de sprite ou un Mario... et s'ils ne sont que peu utilisés dans l'OS, ce n'est pas le cas dans les programmes en Locate !
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Matt36230 Hors ligne Membre Points: 1888 Défis: 0 Message

Citer : Posté le 29/11/2014 19:06 | #


OMG :aaah: comment ça rend méga super trop bien GG !
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 30/11/2014 12:14 | #


Je viens de filmer et j'attaque le montage.
Par contre j'hésitais à montrer ça dans la revue des projets, il y a déjà beaucoup de contenu pour l'édition de cette semaine ?

Edit :

Tweaks : ||||| ||||
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 30/11/2014 13:43 | #


:aaah:
Ca rend super bien !
Eltoredo Hors ligne Modérateur Points: 4301 Défis: 35 Message

Citer : Posté le 30/11/2014 13:50 | #


Omg et tu l'a codé toi même ? Franchement bravo, dit moi comment avoir le même sur ma calto avec les caractères stp, ça m'aide à coder un truc tout joli !
La procrastination est une vertu. (voir ma description pour comprendre mon raisonnement)
Ninestars Hors ligne Membre Points: 2462 Défis: 24 Message

Citer : Posté le 30/11/2014 15:28 | #


Super ! c'est impressionnant
Matt36230 Hors ligne Membre Points: 1888 Défis: 0 Message

Citer : Posté le 30/11/2014 15:41 | #


Ouuuiiiin je suis tellement trop dégouté j'ai mis trop de temps à faire un Mario tout pourri et t'en fais un super en 2sec. Bien joué ! Je suis admiratif !
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 30/11/2014 15:43 | #


Eltoredo a écrit :
Omg et tu l'a codé toi même ? Franchement bravo, dit moi comment avoir le même sur ma calto avec les caractères stp, ça m'aide à coder un truc tout joli !

Bah oui je l'ai codé moi même
Pour les caractères il faut flasher un OS spécial que j'ai modifié...
Le but au final c'est bien de faire des sprites pour avoir des jeux joli.

@Matt36230 : Il est pas "tout pourri" ton Mario... Et le mien a des bugs (il est fait pour fonctionner pour la démo, par pour jouer), mais on ne le voit pas
Tweaks : ||||| ||||
Matt36230 Hors ligne Membre Points: 1888 Défis: 0 Message

Citer : Posté le 30/11/2014 15:44 | #


Petit filou

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 154 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