Forum Le CBNA

Le Forum du CBNA a pour but de vous aider dans l'utilisation de GameMaker. Premier forum Francophone sous GameMaker, vous trouverez des .gmd, .gm6, .gmk, scripts, logiciels et d'autres ressources sur Le CBNA.
 
AccueilAccueil  ­FAQFAQ  ­RechercherRechercher  ­S'enregistrerS'enregistrer  ­MembresMembres  ­ConnexionConnexion  
Poster un nouveau sujet   Répondre au sujetPartager | 
 

 draw_sprite_general

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
gosc
Utilisateur confirmé: Rang *****


Nombre de messages: 1836
Localisation: Dans le nord, pourquoi ?
Projet Actuel: se lancer dans le C++

En cours :
What (22/100)
~Tisane~ (1/100)

En Pause :
What 2, 3 et 4 (2/100)
Monk Escape (1/100)
Puppet Magique (50/100)

Avancement:
8 / 1008 / 100


MessageSujet: draw_sprite_general   Mar 20 Oct - 17:54

Salut ! pourriez vous m'aider ? j'ai un problème de centre avec la fonction :

Code:
draw_sprite_general


je dois attribuer un centre de sprite au centre du sprite, merci d'avance Smile

le code que j'utilise :

Code:
with(idlm) {
sprite_set_offset(spr,22,17)
draw_sprite_general(spr,0,0,0,44,34,x,y,1,1,perso.image_angle+180,c_white,c_white,c_white,c_white,1) //tete
if perso.dp[1]=1 {sprite_set_offset(spr,65,17)
draw_sprite_general(spr,0,61,0,8,34,x,y,1,1,perso.image_angle+150,c_white,c_white,c_white,c_white,1)} //main1
if perso.dp[2]=1 {sprite_set_offset(spr,65,17)
draw_sprite_general(spr,0,61,0,8,34,x,y,1,1,perso.image_angle-150,c_white,c_white,c_white,c_white,1)} //main2}


le centre du premier est égal à 0;0, et pas à 22;17 :/

_________________
http://gosc-file.c.la/ | | http://willhostforfood.com/?Action=PublicDirectory&u=769

Projet Mario . . . . . . . . . . . de Topaze 22 || Tower Defense . . . . . . . . .de Nicoulas
Sonic BAII . . . . . . . . . . . .de Ablationner || Beside Of War. . . . . . . . de Wargamer
Dimension at War . . . . . . . de Al_Tanner || Les Mondes de Kraessor . . de Ombre
Shrapnel . . . . . . . .. . . . . . de zebdal . . . || Warfront . . . . . . . . . . . . . de morgan
Revenir en haut Aller en bas
http://willhostforfood.com/?Action=PublicDirectory&u=769
shikor
Très bonne participation


Nombre de messages: 153
Localisation: REIMS
Projet Actuel: Saint Seiya : La Légende des Chevaliers
Avancement:
0 / 1000 / 100


MessageSujet: Re: draw_sprite_general   Mer 21 Oct - 11:52

si j'ai bien compris

sprite_set_offset : sert à redéfinir un centre de positionnement

mais tu écris
Code:
draw_sprite_general(spr,0,0,0,44,34,x,y,1,1,perso.image_angle+180,c_white,c_white,c_white,c_white,1) //tete


C'est que tu positionnes le coin haut-gauche (0,0) à la position x,y

mais tu veux que ce soit le centre (22,17) qui soit en x,y c'est cela ?

ne devrais- tu pas mettre à la place
Code:
draw_sprite_general(spr,0,22,17,44,34,x,y,1,1,perso.image_angle+180,c_white,c_white,c_white,c_white,1) //tete


Je ne sais pas, c'est une suggestion, je suis encore débutant gnii
Revenir en haut Aller en bas
gosc
Utilisateur confirmé: Rang *****


Nombre de messages: 1836
Localisation: Dans le nord, pourquoi ?
Projet Actuel: se lancer dans le C++

En cours :
What (22/100)
~Tisane~ (1/100)

En Pause :
What 2, 3 et 4 (2/100)
Monk Escape (1/100)
Puppet Magique (50/100)

Avancement:
8 / 1008 / 100


MessageSujet: Re: draw_sprite_general   Mer 21 Oct - 12:12

bah la fonction fait que le 0,0 c'est l'endroit ou je commence à couper le sprite, et les deux variables, la largeur et longueur à couper Smile

_________________
http://gosc-file.c.la/ | | http://willhostforfood.com/?Action=PublicDirectory&u=769

Projet Mario . . . . . . . . . . . de Topaze 22 || Tower Defense . . . . . . . . .de Nicoulas
Sonic BAII . . . . . . . . . . . .de Ablationner || Beside Of War. . . . . . . . de Wargamer
Dimension at War . . . . . . . de Al_Tanner || Les Mondes de Kraessor . . de Ombre
Shrapnel . . . . . . . .. . . . . . de zebdal . . . || Warfront . . . . . . . . . . . . . de morgan
Revenir en haut Aller en bas
http://willhostforfood.com/?Action=PublicDirectory&u=769
shikor
Très bonne participation


Nombre de messages: 153
Localisation: REIMS
Projet Actuel: Saint Seiya : La Légende des Chevaliers
Avancement:
0 / 1000 / 100


MessageSujet: Re: draw_sprite_general   Mer 21 Oct - 12:32

Donc si tu dessines une partie du sprite en x,y. Je ne vois pas l'utilité de sprite_set_offset question

pourquoi as-tu besoin de redéfinir une centre d'origine question
Revenir en haut Aller en bas
gosc
Utilisateur confirmé: Rang *****


Nombre de messages: 1836
Localisation: Dans le nord, pourquoi ?
Projet Actuel: se lancer dans le C++

En cours :
What (22/100)
~Tisane~ (1/100)

En Pause :
What 2, 3 et 4 (2/100)
Monk Escape (1/100)
Puppet Magique (50/100)

Avancement:
8 / 1008 / 100


MessageSujet: Re: draw_sprite_general   Mer 21 Oct - 12:59

bah j'essaye de voir comment attribuer un centre au sprite coupé que je draw, car faut que mes sprite soit centré pour user l'image angle comme je l'use :/

Citation:
draw_sprite_general(sprite,subimg,left,top,width,height,x,y,xscale,yscale,rot,c1,c2,c3,c4,alpha) La fonction d'affichage la plus générale pour les sprites. Elle dessine la sous-image indiquée subimg (-1 = image courante) du sprite en plaçant le coin supérieur gauche de cette image à la position (x,y) mais en utilisant aussi une mise à l'échelle, un angle de rotation, une couleur pour chacun des quatre vertices (haut-gauche, haut-droit, bas-droit et bas-gauche) et une valeur de transparence alpha. Veuillez noter que la rotation s'effectue à proximité immédiate du coin supérieur gauche de la sous-image.


c'est pas réglable avec ma solution, je dois utiliser la trigonometrie :/

_________________
http://gosc-file.c.la/ | | http://willhostforfood.com/?Action=PublicDirectory&u=769

Projet Mario . . . . . . . . . . . de Topaze 22 || Tower Defense . . . . . . . . .de Nicoulas
Sonic BAII . . . . . . . . . . . .de Ablationner || Beside Of War. . . . . . . . de Wargamer
Dimension at War . . . . . . . de Al_Tanner || Les Mondes de Kraessor . . de Ombre
Shrapnel . . . . . . . .. . . . . . de zebdal . . . || Warfront . . . . . . . . . . . . . de morgan
Revenir en haut Aller en bas
http://willhostforfood.com/?Action=PublicDirectory&u=769
shikor
Très bonne participation


Nombre de messages: 153
Localisation: REIMS
Projet Actuel: Saint Seiya : La Légende des Chevaliers
Avancement:
0 / 1000 / 100


MessageSujet: Re: draw_sprite_general   Mer 21 Oct - 13:30

Mais la partie que tu dessines n'est pas un sprite donc sprite_set_offset ne sert à rien.

Il faudrait faire une formule gnii comme tu le dis.
Revenir en haut Aller en bas
gosc
Utilisateur confirmé: Rang *****


Nombre de messages: 1836
Localisation: Dans le nord, pourquoi ?
Projet Actuel: se lancer dans le C++

En cours :
What (22/100)
~Tisane~ (1/100)

En Pause :
What 2, 3 et 4 (2/100)
Monk Escape (1/100)
Puppet Magique (50/100)

Avancement:
8 / 1008 / 100


MessageSujet: Re: draw_sprite_general   Mer 21 Oct - 13:34

oui, mais j'ai fait un test car ça en prend du temps des fois de résoudre un bug du genre XD

_________________
http://gosc-file.c.la/ | | http://willhostforfood.com/?Action=PublicDirectory&u=769

Projet Mario . . . . . . . . . . . de Topaze 22 || Tower Defense . . . . . . . . .de Nicoulas
Sonic BAII . . . . . . . . . . . .de Ablationner || Beside Of War. . . . . . . . de Wargamer
Dimension at War . . . . . . . de Al_Tanner || Les Mondes de Kraessor . . de Ombre
Shrapnel . . . . . . . .. . . . . . de zebdal . . . || Warfront . . . . . . . . . . . . . de morgan
Revenir en haut Aller en bas
http://willhostforfood.com/?Action=PublicDirectory&u=769
shikor
Très bonne participation


Nombre de messages: 153
Localisation: REIMS
Projet Actuel: Saint Seiya : La Légende des Chevaliers
Avancement:
0 / 1000 / 100


MessageSujet: Re: draw_sprite_general   Mer 21 Oct - 13:45

Oui je sais, je suis toujours sur mon bug pour pousser mon obstacle rire2

pour le x,y ; tu peux mettre des variables:

width=largeur à découper
heigth=hauteur à découper

tu fais :
Code:
draw_sprite_general(spr,0,0,0,width,height,x-width/2,y-heigth/2,1,1,perso.image_angle+180,c_white,c_white,c_white,c_white,1) //tete
Revenir en haut Aller en bas
gosc
Utilisateur confirmé: Rang *****


Nombre de messages: 1836
Localisation: Dans le nord, pourquoi ?
Projet Actuel: se lancer dans le C++

En cours :
What (22/100)
~Tisane~ (1/100)

En Pause :
What 2, 3 et 4 (2/100)
Monk Escape (1/100)
Puppet Magique (50/100)

Avancement:
8 / 1008 / 100


MessageSujet: Re: draw_sprite_general   Mer 21 Oct - 16:02

seulement ça permet pas de faire tourner le sprite avec image angle Smile

il sera décalé et ne pourra pas tourner comme si il était centré, donc je dois utiliser la trigonométrie, mais là je vois pas comment faire X(

_________________
http://gosc-file.c.la/ | | http://willhostforfood.com/?Action=PublicDirectory&u=769

Projet Mario . . . . . . . . . . . de Topaze 22 || Tower Defense . . . . . . . . .de Nicoulas
Sonic BAII . . . . . . . . . . . .de Ablationner || Beside Of War. . . . . . . . de Wargamer
Dimension at War . . . . . . . de Al_Tanner || Les Mondes de Kraessor . . de Ombre
Shrapnel . . . . . . . .. . . . . . de zebdal . . . || Warfront . . . . . . . . . . . . . de morgan
Revenir en haut Aller en bas
http://willhostforfood.com/?Action=PublicDirectory&u=769
 

draw_sprite_general

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Programmation :: Aide débutants-
Poster un nouveau sujet   Répondre au sujet