Salut
Je suis sur un ptit projet en ce moment et je cherche a créé une image a partir d'un assemblage de sprite, sans passer par un screen(grabsprite() ), qui limite la taille a celle de l'ecran et empeche de créé des image plus grande. j'aurais voulu savoir si quel'un avait une idée comment faire, ou si il est possible de mettre des sprite directement sur une image ?
Merci d'avance de vos reponce
a+
Scaraber
Créé une image a partir de sprite, sans screen ? [Résolu]
regarde la commande UseBuffer(), tu peux afficher tes sprites sur un gros sprite, et ensuite tu enregistres le sprite, tu auras ton image.
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Salut,
J'ai essayer UseBuffer() mais je pence que je ne l'utilise pas comme il faut...
Voici le code qui genere l'image a enregistrer.
Est-ce que quelqu'un peu m'aider ?
Dois-je utililiser UseBuffer pour le sprite 1 ou pour le 2 ? ou pour les deux ? et a quelle moment placer cette commande ?
Voila tout
Merci d'avance de vos reponces
++
Scaraber
J'ai essayer UseBuffer() mais je pence que je ne l'utilise pas comme il faut...
Voici le code qui genere l'image a enregistrer.
Code : Tout sélectionner
ClearScreen(RGB(0,0,0))
;On créé la map
TransparentSpriteColor(1,RGB(Val(GetGadgetText(#R)),Val(GetGadgetText(#G)),Val(GetGadgetText(#B))))
For CaseX=0 To X
For CaseY=0 To Y
ClipSprite(1,Map(CaseX,CaseY)\CoucheBasseX*16,Map(CaseX,CaseY)\CoucheBasseY*16,16,16)
DisplayTransparentSprite(1,CaseX*16,CaseY*16)
ClipSprite(1,Map(CaseX,CaseY)\CoucheHauteX*16,Map(CaseX,CaseY)\CoucheHauteY*16,16,16)
DisplayTransparentSprite(1,CaseX*16,CaseY*16)
Next
Next
;On sauvegarde le rendu sous forme d'image
GrabSprite(2,0,0,(X+1)*16,(Y+1)*16)
UsePNGImageEncoder()
SaveSprite(2,Enregistre$,#PB_ImagePlugin_PNG)
FlipBuffers()
Dois-je utililiser UseBuffer pour le sprite 1 ou pour le 2 ? ou pour les deux ? et a quelle moment placer cette commande ?
Voila tout
Merci d'avance de vos reponces
++
Scaraber
Code : Tout sélectionner
;Tu sélectionnes l'affichage sur ton gros sprite
UseBuffer(#MonGrosSprite)
;Tu affiches tes sprites ici ils seront copiés directement dans ton gros sprite
DisplaySprite(#MesSprites,x,y)
;Quand tu as fini tu reviens à l'affichage sur écran
UseBuffer(-1)
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.