- MythendorMembre
- Nombre de messages : 50
Distinction : aucune
Date d'inscription : 14/02/2016
Bitmap et viewport.[résolu]
Lun 14 Mar 2016 - 19:35
Bonjour à tous!
J'ai essayé d'intégrer ce code en suivant les indications données sur ce site: Cliquez ici!
@myViewport = Viewport.new(0, 0, 640, 480)
@mySprite = Sprite.new(@myViewport)
@myBitmap = RPG::Cache.picture("test.png")
@mySprite.bitmap = @myBitmap
Le site ne précise pas si cela est compatible pour RPG Maker Vx Ace, et si c'est le cas, où est l'erreur?
Cordialement
J'ai essayé d'intégrer ce code en suivant les indications données sur ce site: Cliquez ici!
@myViewport = Viewport.new(0, 0, 640, 480)
@mySprite = Sprite.new(@myViewport)
@myBitmap = RPG::Cache.picture("test.png")
@mySprite.bitmap = @myBitmap
Le site ne précise pas si cela est compatible pour RPG Maker Vx Ace, et si c'est le cas, où est l'erreur?
Cordialement
Re: Bitmap et viewport.[résolu]
Lun 14 Mar 2016 - 21:01
J'ai vu pas mal de tuto pourris, mais celui-ci bat des records!!
Si tu veux savoir comment fonctionne les viewport, sprite et Bitmap, autant virer tous les scripts (si si tout) et de commencer a partir de rien. C'est à dire ça :
ça ouvre la fenêtre et ça attend l'appui sur le bouton servant d'annulation (Echap)
Maintenant, tu veux du viewport, du sprite et du bitmap, c'est très simple :
Si tu veux savoir comment fonctionne les viewport, sprite et Bitmap, autant virer tous les scripts (si si tout) et de commencer a partir de rien. C'est à dire ça :
- Code:
while !Input.trigger?(:B)
Graphics.update
Input.update
end
ça ouvre la fenêtre et ça attend l'appui sur le bouton servant d'annulation (Echap)
Maintenant, tu veux du viewport, du sprite et du bitmap, c'est très simple :
- Code:
Graphics.resize_screen(640, 480)
viewportGauche = Viewport.new(0, 0, 320, 480)
viewportDroit = Viewport.new(320, 0, 320, 480)
spriteBleu = Sprite.new(viewportGauche)
spriteBleu.bitmap = Bitmap.new(50,50)
spriteBleu.bitmap.fill_rect(0,0,50,50, Color.new(0,0,255))
spriteBleu.x = 0
spriteBleu.y = 0
spriteRouge = Sprite.new(viewportDroit)
spriteRouge.bitmap = Bitmap.new(50,50)
spriteRouge.bitmap.fill_rect(0,0,50,50, Color.new(255,0,0))
spriteRouge.x = 0
spriteRouge.y = 0
while !Input.trigger?(:B)
Graphics.update
Input.update
end
spriteRouge.bitmap.dispose
spriteRouge.dispose
spriteBleu.bitmap.dispose
spriteBleu.dispose
- MythendorMembre
- Nombre de messages : 50
Distinction : aucune
Date d'inscription : 14/02/2016
Re: Bitmap et viewport.[résolu]
Lun 14 Mar 2016 - 21:07
Merci de la réponse, j'essaierais ça dès que je peux.
Et je viens de tomber sur ton site ^^ : http://www.tonyryudev.com/joomla3/index.php/menu-mes-developpements/menu-cours-ruby-rgss/11-rgss-tuto-1-debuter-avec-le-rgss
Pas mal, on va voir ce que ça donne!
Et je viens de tomber sur ton site ^^ : http://www.tonyryudev.com/joomla3/index.php/menu-mes-developpements/menu-cours-ruby-rgss/11-rgss-tuto-1-debuter-avec-le-rgss
Pas mal, on va voir ce que ça donne!
Re: Bitmap et viewport.[résolu]
Lun 14 Mar 2016 - 21:11
Attention, par contre ces tuto sont orienté pour la version XP.
- MythendorMembre
- Nombre de messages : 50
Distinction : aucune
Date d'inscription : 14/02/2016
Re: Bitmap et viewport.[résolu]
Lun 14 Mar 2016 - 21:22
Uniquement ceux présents sur le site où également celui que tu viens de mettre sur ce post même?
Re: Bitmap et viewport.[résolu]
Mar 15 Mar 2016 - 7:53
celui sur ce topic, je l'ai fait directement sur VxAce
- MythendorMembre
- Nombre de messages : 50
Distinction : aucune
Date d'inscription : 14/02/2016
Re: Bitmap et viewport.[résolu]
Mar 15 Mar 2016 - 18:11
J'ai jeté un coup d’œil à ces quelques lignes de code, pour résumer en quelques mots:
-Le viewport sert à définir l'endroit, où l'on peut voir.
-Le bitmap, une image.
-Le sprite, une image quel l'on peut déplacer.
Si oui, j'ai vu qu'il y avait des dimensions à leur donner, dans le script, mais si l'image importée, a déjà des dimensions prédéfinis comme un personnage de 20 px x20 px (exemple). Est-il nécessaire de lui donner des dimensions? Cela ne risque pas de zoomer sur lles pixels, et le rendre moche?
J'ignore si la question est bien posée. ^^
-Le viewport sert à définir l'endroit, où l'on peut voir.
-Le bitmap, une image.
-Le sprite, une image quel l'on peut déplacer.
Si oui, j'ai vu qu'il y avait des dimensions à leur donner, dans le script, mais si l'image importée, a déjà des dimensions prédéfinis comme un personnage de 20 px x20 px (exemple). Est-il nécessaire de lui donner des dimensions? Cela ne risque pas de zoomer sur lles pixels, et le rendre moche?
J'ignore si la question est bien posée. ^^
Re: Bitmap et viewport.[résolu]
Mar 15 Mar 2016 - 18:43
Fais le test du script, c'est très simple :
Le viewport défini une zone d'affichage.
Le sprite est un objet d'affichage, modifiable, déplaceable, déformable.
Le bitmap est la texture que l'on pose sur le sprite.
Regarde le fichier d'aide fourni avec le logiciel et fait des tests sur ces classes, tu en apprendras beaucoup plus.
Le viewport défini une zone d'affichage.
Le sprite est un objet d'affichage, modifiable, déplaceable, déformable.
Le bitmap est la texture que l'on pose sur le sprite.
Regarde le fichier d'aide fourni avec le logiciel et fait des tests sur ces classes, tu en apprendras beaucoup plus.
- MythendorMembre
- Nombre de messages : 50
Distinction : aucune
Date d'inscription : 14/02/2016
Re: Bitmap et viewport.[résolu]
Mer 16 Mar 2016 - 19:06
Je pense avoir compris le système, pour l'essentiel, sauf pour les images importées:
Bitmap.new(filename)
Loads the graphic file specified in filename and creates a bitmap object.
Also automatically searches files included in RGSS-RTP and encrypted archives. File extensions may be omitted.
Aurais-tu un petit exercice, à me faire faire, pour que je me teste? Par exemple, me demander un carré jaune, ou je ne sais quoi?
Merci par avance!
Bitmap.new(filename)
Loads the graphic file specified in filename and creates a bitmap object.
Also automatically searches files included in RGSS-RTP and encrypted archives. File extensions may be omitted.
Aurais-tu un petit exercice, à me faire faire, pour que je me teste? Par exemple, me demander un carré jaune, ou je ne sais quoi?
Merci par avance!
Re: Bitmap et viewport.[résolu]
Mer 16 Mar 2016 - 19:14
un petit exercice :
Afficher dans un même viewport, 3 sprites superposés :
- 1 en dessous de taille 50*50 de couleur bleu, et alpha 128
- 1 au milieu contenant un battler quelconque d'une opacité 128
- 1 au dessus de taille 100*100 de couleur orange et alpha 64
Afficher dans un même viewport, 3 sprites superposés :
- 1 en dessous de taille 50*50 de couleur bleu, et alpha 128
- 1 au milieu contenant un battler quelconque d'une opacité 128
- 1 au dessus de taille 100*100 de couleur orange et alpha 64
- MythendorMembre
- Nombre de messages : 50
Distinction : aucune
Date d'inscription : 14/02/2016
Re: Bitmap et viewport.[résolu]
Mer 16 Mar 2016 - 20:14
Voilà ce que ça donne, si je ne me suis pas trompé:
- Code:
Graphics.resize_screen(640, 480)
spriteFairy = Sprite.new
spriteFairy.bitmap = Bitmap.new("Graphics/Battlers/Fairy")
spriteFairy.x = 0
spriteFairy.y = 0
spriteFairy.z = 2
spriteBleu = Sprite.new
spriteBleu.bitmap = Bitmap.new(50,50)
spriteBleu.bitmap.fill_rect(0,0,50,50, Color.new(0,0,255,128))
spriteBleu.x = 30
spriteBleu.y = 30
spriteFairy.z = 1
spriteorange = Sprite.new
spriteorange.bitmap = Bitmap.new(100,100)
spriteorange.bitmap.fill_rect(0,0,100,100, Color.new(255,125,0,64))
spriteorange.x = 0
spriteorange.y = 0
spriteFairy.z = 3
while !Input.trigger?(:B)
Graphics.update
Input.update
end
spriteorange.bitmap.dispose
spriteorange.dispose
spriteFairy.bitmap.dispose
spriteFairy.dispose
spriteBleu.bitmap.dispose
spriteBleu.dispose
Re: Bitmap et viewport.[résolu]
Mer 16 Mar 2016 - 21:02
Presque le sans fautes, manque juste la propriété opacity du sprite du battler.
Exercice suivant :
juste un sprite 10*10 rouge, mais que l'on peut bouger dans tous les sens, sans qu'il sorte de l'écran.
Ces fonctions retournent vrai si le bouton correspondant est appuyé :
Input.repeat?(:DOWN)
Input.repeat?(:UP)
Input.repeat?(:RIGHT)
Input.repeat?(:LEFT)
La procédure Input.update vérifie les boutons appuyés et met à jour le tableau interne correspondant. La vérification des touches doit donc se faire après cette appel.
Exercice suivant :
juste un sprite 10*10 rouge, mais que l'on peut bouger dans tous les sens, sans qu'il sorte de l'écran.
Ces fonctions retournent vrai si le bouton correspondant est appuyé :
Input.repeat?(:DOWN)
Input.repeat?(:UP)
Input.repeat?(:RIGHT)
Input.repeat?(:LEFT)
La procédure Input.update vérifie les boutons appuyés et met à jour le tableau interne correspondant. La vérification des touches doit donc se faire après cette appel.
- MythendorMembre
- Nombre de messages : 50
Distinction : aucune
Date d'inscription : 14/02/2016
Re: Bitmap et viewport.[résolu]
Jeu 17 Mar 2016 - 20:47
J'ai beau me creuser la tête, je ne vois pas ce qu'il cloche, pourtant, l'exercice a l'air simple:
- Code:
Graphics.resize_screen(640, 480)
spriterouge = Sprite.new
spriterouge.bitmap = Bitmap.new(10,10)
spriterouge.bitmap.fill_rect(0,0,10,10, Color.new(255,0,0))
spriterouge.x = 0
spriterouge.y = 0
while !Input.trigger?(:B)
Graphics.update
Input.update
spriterouge_down if Input.repeat?(:DOWN)
spriterouge_up if Input.repeat?(:UP)
spriterouge_right if Input.repeat?(:RIGHT)
spriterouge_left if Input.repeat?(:LEFT)
end
@spriterouge.bitmap.dispose
@spriterouge.dispose
Re: Bitmap et viewport.[résolu]
Jeu 17 Mar 2016 - 21:39
Avec quelques modifications
- Code:
Graphics.resize_screen(640, 480)
spriteRouge = Sprite.new
spriteRouge.bitmap = Bitmap.new(10,10)
spriteRouge.bitmap.fill_rect(0,0,10,10, Color.new(255,0,0))
spriteRouge.x = 315
spriteRouge.y = 235
vitesse = 6
while !Input.trigger?(:B)
Graphics.update
Input.update
spriteRouge.x += vitesse if Input.press?(:RIGHT)
spriteRouge.x -= vitesse if Input.press?(:LEFT)
spriteRouge.y += vitesse if Input.press?(:DOWN)
spriteRouge.y -= vitesse if Input.press?(:UP)
spriteRouge.x = 0 if spriteRouge.x < 0
spriteRouge.x = 630 if spriteRouge.x > 630
spriteRouge.y = 0 if spriteRouge.y < 0
spriteRouge.y = 470 if spriteRouge.y > 470
end
spriteRouge.bitmap.dispose
spriteRouge.dispose
- MythendorMembre
- Nombre de messages : 50
Distinction : aucune
Date d'inscription : 14/02/2016
Re: Bitmap et viewport.[résolu]
Jeu 17 Mar 2016 - 21:49
Effectivement, je n'avais pas assez creusé la question, merci des informations et des exercices!
- MythendorMembre
- Nombre de messages : 50
Distinction : aucune
Date d'inscription : 14/02/2016
Re: Bitmap et viewport.[résolu]
Jeu 17 Mar 2016 - 22:32
Histoire de compléter l'exercice, j'ai mis la vitesse à valeur égale de la taille du sprite, pour avoir un déplacement par à coup, comme pour un jeu RPG-tactics (bien que je ne sache pas si c'est la bonne méthode):
Bon, j'ai compris, à peu de choses près, l'essentiel sur les bitmaps et viewports, merci et à bientôt sur un autre post!
- Code:
Graphics.resize_screen(640, 480)
spriteRouge = Sprite.new
spriteRouge.bitmap = Bitmap.new(20,20)
spriteRouge.bitmap.fill_rect(0,0,20,20, Color.new(255,0,0))
spriteRouge.x = 315
spriteRouge.y = 235
vitesse = 20
while !Input.trigger?(:B)
Graphics.update
Input.update
spriteRouge.x += vitesse if Input.repeat?(:RIGHT)
spriteRouge.x -= vitesse if Input.repeat?(:LEFT)
spriteRouge.y += vitesse if Input.repeat?(:DOWN)
spriteRouge.y -= vitesse if Input.repeat?(:UP)
spriteRouge.x = 0 if spriteRouge.x < 0
spriteRouge.x = 630 if spriteRouge.x > 630
spriteRouge.y = 0 if spriteRouge.y < 0
spriteRouge.y = 470 if spriteRouge.y > 470
end
spriteRouge.bitmap.dispose
spriteRouge.dispose
Bon, j'ai compris, à peu de choses près, l'essentiel sur les bitmaps et viewports, merci et à bientôt sur un autre post!
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|