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



Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

Citer : Posté le 24/11/2014 22:07 | #


Darkysun a écrit :
Juste pourquoi on a pas le droit de diffuser son OS ?

Propriété de Casio. De plus, la licence interdit la rétro-ingénierie.
Darkysun Hors ligne Membre Points: 1747 Défis: 52 Message

Citer : Posté le 24/11/2014 22:09 | #


Mais alors pourquoi trouve-t-on des OS pour mettre des add-ins sur le site ?
Si je ne réponds pas à un post depuis trop longtemps : envoyez-moi un message pour me le rappeler !




Btl Hors ligne Ancien modérateur Points: 3879 Défis: 107 Message

Citer : Posté le 24/11/2014 22:25 | #


Bah normalement, on ne les trouve pas.

Sérieusement, si on voulait être totalement dans la légalité, il ne devrait pas y avoir d'OS casio sur le site.
Un excellent tuto video qui vous explique comment transférer des fichiers de l'ordinateur vers la calculatrice et vice versa ma chaine youtube
mes jeux
mes jeux

Jouez à 6 sur une seule calto : Curve Fever
Un die and retry qui vous fera bieeeen rager Test Andropov
un très bon sokoban
le seul vrai jeu de foot en basic : FIFA 12
Ca c'est ce que j'appelle un jeu de reflexion jewel master
Qui vaincra l'intelligence artificielle de cet othello
Le célèbre pacman
Et tant d'autres BTL's games

Le jeu du mois de Novembre et award du jeu le plus dur de l'année 2013 MultiTask, testez-le
Intelligide Hors ligne Membre de CreativeCalc Points: 49 Défis: 5 Message

Citer : Posté le 25/11/2014 08:20 | #


@darkysun où est ce que tu as vu un OS hébergé sur le site? omg
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 25/11/2014 17:54 | #


Remiweb a écrit :
Si cela intéresse beaucoup de monde

+1
Super projet ! :aaah:

Ajouté le 25/11/2014 à 18:03 :
Eltoredo a écrit :
Il n'y a qu'a regarder le jeu de Silaxe (Hungry Monster), il est vraiment magnifique !

Merci
C'est vrai que pour le coup en mode texte avec des caractères modifiés cela peut envoyer du lourd!
Une petite vidéo serait bien pour voir ce que cela rend.
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 26/11/2014 20:22 | #


Ok j'essaierai de faire une vidéo en testant quelques idées de sprite dessus.

Il n'y a personne pour essayer de voir comment ça se passe avec la RAM ?
(côté add-in je ne peux malheureusement rien faire...)
Tweaks : ||||| ||||
Lephenixnoir En ligne Administrateur Points: 24145 Défis: 170 Message

Citer : Posté le 26/11/2014 20:52 | #


Ben non, on n'a pas accès aux zones mémoire et l'émulateur n'émule pas tout...
Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 26/11/2014 20:54 | #


Ce qui est bien si ce projet abouti c'est d'avoir rapidité et joli graphismes.
Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message
Gollum Hors ligne Membre Points: 1262 Défis: 2 Message

Citer : Posté le 26/11/2014 22:56 | #


Je plussoie le projet !

Et ça ferais tellemnt classe de pouvoir spritiser le basic ( clonelab, zelda, calcraft )

Propositions de sprites :
1 joueur
1 explosion
1 mur
1 toit
(des monstres)
je ferais des exemples dès que j'aurais 2 minutes... donc demain je pense
https://telegram.me/BrokenClock
Je suis de l'autre coté de la manche maintenant. Yay.
Smashmaster Hors ligne Ancien modérateur Points: 4561 Défis: 253 Message

Citer : Posté le 26/11/2014 23:07 | #


Impressionnant
Par contre je que j'aime beaucoup moins c'est ça :
Remiweb a écrit :
l'OS modifié n'est pas le plus pratique, il faudrait voir comment faire avec un Add-in
Même avec un add-in ce c'est pas très convivial, car l'add-in devrait-être exécuté avant (pour modifier l'OS) et après l’exécution du programme Basic (pour remettre l'ancien OS) ... :/
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 27/11/2014 07:50 | #


@Smashmaster :
Pour moi ça reste le mieux, si on met en place le système de fichiers les jeux n'auraient pas besoin de 2 versions.
Ils pourraient simplement avoir un fichier "sprites" joint pour ceux qui veulent changer les caractères utilisés dans le jeu pour le rendre plus joli. Çà permettrait d'avoir quelque-chose de vraiment personnalisé et adapté au jeu.

Et puis si on ne fait pas d'Add-in la seule solution est de flasher l'OS non ? Donc ça limite les possibilités, on modifierait seulement les caractères très peu utilisés et ce serait les mêmes sprites pour tout le monde.

@Lephenixnoir :
Mais l'adresse que je t'ai donné c'est pour l'OS, tu es allé voir quoi exactement en mémoire ? On ne sait pas si les caractères sont chargés dans la RAM ?

Ajouté le 27/11/2014 à 07:51 :
Par contre comment se fait-il que je ne puisse plus modifier mon sujet ? (j'ai pas le bouton pour)
Tweaks : ||||| ||||
Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 27/11/2014 12:35 | #


Mince j'avais pas vu la faute dans la balise, du coup ça a prit le reste avec ^^'
Merci.
Tweaks : ||||| ||||
Lephenixnoir En ligne Administrateur Points: 24145 Défis: 170 Message

Citer : Posté le 27/11/2014 18:44 | #


@Remiweb
Je doute sincèrement qu'ils soient chargés en RAM. On pourrait désassembler la fonction getGlyph() pour voir mais... j'ai tenté de lire/écrire dans la zone mémoire que tu m'as passée : en fait c'est même pas de la mémoire physique, si je me souviens bien c'est le MMU qui gère ça et te redirige du coup, impossible de savoir où c'est vraiment !
Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

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


Ok, c'est vraiment dommage

Je viens quand même de préparer 25 sprites pour faire une courte démo technique, je vais coder un peu et je posterai la vidéo dans la soirée
Tweaks : ||||| ||||
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

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


Je l'attends avec impatiente !
Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

Citer : Posté le 29/11/2014 12:10 | # | Fichier joint


Alors voilà pour te faire patienter (ou pas ) :

J'ai eu beaucoup de mal à refaire certains sprites en 6*8, notamment Mario mais je trouve que ça rend bien.
Tweaks : ||||| ||||
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

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


:aaah:

Et en plus j'imagine que c'est rapide
Pour les nuages le sprite est séparé en plusieurs caractères ?
Je crois qu'on a tous envie de faire un mario.
Ce qui est bien en plus c'est qu'on a 20 pictures pour faire un magnifique menu (avec scrolling si on veut ).

Remiweb Hors ligne Membre de CreativeCalc Points: 1040 Défis: 32 Message

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


Pour la rapidité j'en sais rien je suis seulement en train de coder les sprites, mais ça devrait l'être
Oui les nuages (et les tuyaux) sont séparés en plusieurs sprites. Ça fonctionne comme pour le jeu original : en les combinant on peu agrandir les tuyaux ou faire des doubles nuages comme sur l'image.
Tweaks : ||||| ||||
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

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