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 - Autres questions


Index du Forum » Autres questions » Graphisme picture en basic
Massena Hors ligne Ancien rédacteur Points: 2219 Défis: 11 Message

Graphisme picture en basic

Posté le 16/06/2018 17:21

Bonjour,
Je me demande comment faire pour afficher une picture à des coordonnées précises.
Genre pour faire défiler une picture qui représente un personnage...
A noter que c'est en basic...
Help !!


Drak Hors ligne Rédacteur Points: 1925 Défis: 40 Message

Citer : Posté le 16/06/2018 17:25 | #


Tu ne peux pas vraiment. En fait, tu peux, au mieux, simuler un scrolling vertical avec des pictures. Cette technique est assez pointue. Tu pourras en savoir davantage en lisant la description du programme de Purobaz : Picture 1024. Ce projet ce Remiweb est aussi concerné par cette technique. N'hésite pas à me poser des questions plus précises si tu as besoin
Eon the Dragon : version 1.2
Let's have a look!
Marre de ces RPGs qui t'imposent des classes, des compétences et des sorts ? Crée tes propres capacités sur Eon the Dragon ! Des monstres, des dragons et des combats aussi épiques que difficiles t'attendent !
Un RPG unique et immense t'attend ! Joue dès maintenant à Aventura, le Royaume Poudingue !
Vous aussi, soyez swag et rejoignez Planète Casio !
Ninestars Hors ligne Membre Points: 2461 Défis: 24 Message

Citer : Posté le 16/06/2018 17:47 | #


En basic il n'est pas possible d'afficher des images, en dehors des images de 128x64 pixels.
Dans ton cas, tu as besoin du Super DrawStat : lien
Massena Hors ligne Ancien rédacteur Points: 2219 Défis: 11 Message

Citer : Posté le 16/06/2018 20:18 | #


Ok, dommage...
Pour ma part, je ne m'estime pas encore prêt à utiliser le drawstat ( même si j'ai envie ) et je refuse d'utiliser l'add-in picture 1024.
Merci !
Drak Hors ligne Rédacteur Points: 1925 Défis: 40 Message

Citer : Posté le 16/06/2018 20:20 | #


Pourquoi pas ?
Et puis, BIDE de Zezombye te permet également de faire ce que fait Picture 1024, avec plus de simplicité.
Eon the Dragon : version 1.2
Let's have a look!
Marre de ces RPGs qui t'imposent des classes, des compétences et des sorts ? Crée tes propres capacités sur Eon the Dragon ! Des monstres, des dragons et des combats aussi épiques que difficiles t'attendent !
Un RPG unique et immense t'attend ! Joue dès maintenant à Aventura, le Royaume Poudingue !
Vous aussi, soyez swag et rejoignez Planète Casio !
Zezombye Hors ligne Rédacteur Points: 1756 Défis: 13 Message

Citer : Posté le 16/06/2018 20:22 | #


Massena a écrit :
Ok, dommage...
Pour ma part, je ne m'estime pas encore prêt à utiliser le drawstat ( même si j'ai envie ) et je refuse d'utiliser l'add-in picture 1024.
Merci !


Faire du super drawstat manuellement c'est assez chaud, mais avec BIDE t'as qu'à dessiner le sprite, tu copies colles le code généré et tu changes juste les coordonnées x et y
Divers jeux : Puissance 4 - Chariot Wars - Sokoban
Ecrivez vos programmes basic sur PC avec BIDE
Massena Hors ligne Ancien rédacteur Points: 2219 Défis: 11 Message

Citer : Posté le 16/06/2018 20:28 | #


Ah bon ?
Cooooooooool !
Demain je teste.
Lephenixnoir Hors ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 16/06/2018 23:03 | #


Faire du super drawstat manuellement c'est assez chaud, mais avec BIDE t'as qu'à dessiner le sprite, tu copies colles le code généré et tu changes juste les coordonnées x et y

Quelle méthode utilises-tu pour générer du DrawStat du coup ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Zezombye Hors ligne Rédacteur Points: 1756 Défis: 13 Message

Citer : Posté le 17/06/2018 06:40 | #


Le drawstat je gère pas (et de toute façon c'est dépassé).

Pour le super multi drawstat (je les confonds tout le temps ) je génère juste la représentation des vecteurs par rapport au coin en haut à gauche du sprite, enfin le tuto de Ninestars l'explique assez bien.

Si tu veux le code, c'est par ici : https://git.planet-casio.com/Zezombye/BIDE/blob/master/src/zezombye/BIDE/MultiDrawstatGenerator.java

public void updateResult() {
        String list1 = "";
        String list2 = "";
        
        //get minimum x and y
        int minX = 127, minY = 63;
        for (int i = 0; i < lines.size(); i++) {
            if (lines.get(i).x0 < minX) minX = lines.get(i).x0;
            if (lines.get(i).x1 < minX) minX = lines.get(i).x1;
            if (lines.get(i).y0 < minY) minY = lines.get(i).y0;
            if (lines.get(i).y1 < minY) minY = lines.get(i).y1;
        }
        
        for (int i = 0; i < lines.size(); i++) {
            list1 += getOptimizedCoord(lines.get(i).x0-minX, lines.get(i).x1-minX);
            list2 += getOptimizedCoord(lines.get(i).y0-minY, lines.get(i).y1-minY);
            if (i < lines.size()-1) {
                list1 += ", ";
                list2 += ", ";
            }
        }
        result.setText("Graph(X,Y)=(xSprite+{"+list1+"}, ySprite+{"+list2+"})");
        result.setCaretPosition(0);
    }

Divers jeux : Puissance 4 - Chariot Wars - Sokoban
Ecrivez vos programmes basic sur PC avec BIDE
Lephenixnoir Hors ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 17/06/2018 08:56 | #


Mais si je comprends bien ton code, ton utilisateur trace les lignes dans l'éditeur, et toi tu génères le Multi DrawStat associé, c'est bien ça ?

Je pensais que tu prenais que le bitmap et que tu cherchais toi-même des lignes efficaces.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Zezombye Hors ligne Rédacteur Points: 1756 Défis: 13 Message

Citer : Posté le 17/06/2018 10:03 | #


Ouaip, la conversion bitmap -> drawstat il me faudrait un algo efficace (que je suis pas en mesure de faire).
Divers jeux : Puissance 4 - Chariot Wars - Sokoban
Ecrivez vos programmes basic sur PC avec BIDE

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