Problème de rotation de sprite en 3D [résolu] Hitskin_logo Hitskin.com

Ceci est une prévisualisation d'un thème de Hitskin.com
Installer le thèmeRetourner sur la fiche du thème



AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  
Le Deal du moment : -25%
PC Portable Gamer 16,1” HP Victus 16 – 16 ...
Voir le deal
749.99 €

 

 Problème de rotation de sprite en 3D [résolu]

Aller en bas 
2 participants
AuteurMessage
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyJeu 15 Fév 2007 - 19:45

Dans mon Mario Paper, j'utilise cela dans un draw :

d3d_transform_set_identity();
d3d_transform_set_rotation_y(turn)
d3d_transform_add_translation(x,y,depth)
draw_sprite_ext(sprite_index,-1,0,0,image_xscale,image_yscale,image_angle,c_white,image_alpha);
d3d_transform_set_identity();

Cela me permet d'avoir un effet feuille de papier avec pour centre, un axe vertical passant par le centre de mon Mario.compress
Le problème était que cela ne marche que losque la depth de mon Mario vaut zéro


Voici les propositions de Daminetreg et de [TDT] sur un topic similaire :


TheDarkTiger
d3d_transform_set_identity();
d3d_transform_add_rotation_z(angle);
d3d_transform_add_translation(x,y,0);
d3d_draw_block(-16,-16,-10, 16,16,100,(background3),1,1);
d3d_transform_set_identity();



Daminetreg
d3d_transform_set_rotation_axis(xa,ya,za,angle) Sets the transformation to a rotation around the axis indicated by the vector with the indicated amount.



J'ai fais divers teste et je ne suis pas parvenu à corriger ce problème qui dois être pas compliqué pour ceux qui ont bien compris le système des transformations (pas moi)

L'axe x est vers la droite
L'axe y est vers le bas
L'axe depth est vers le fond et négatif.
Mon but : Mario compress


Dernière édition par le Lun 26 Fév 2007 - 21:52, édité 3 fois
Revenir en haut Aller en bas
[TheDarkTiger]
Modérateur
[TheDarkTiger]


Messages : 7420
Localisation : Essonne

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyVen 16 Fév 2007 - 17:09

bha

d3d_transform_set_identity();
d3d_transform_add_rotation_z(angle);
d3d_transform_add_translation(x,y,0);
d3d_draw_block(-16,-16,-10, 16,16,100,(background3),1,1);
d3d_transform_set_identity();

n'affichera pas du tout ce que tu veux ...

il faudrait plutôt :

Code:
var tex;
tex=sprite_get_texture(sprite_index,image_single);
d3d_transform_set_identity();
d3d_transform_set_rotation_y(turn)
d3d_transform_add_translation(x,y,depth)
d3d_draw_wall(-16,-16,0, 16,16,0,tex,1,1);
d3d_transform_set_identity();

et ca devrait arche super
Revenir en haut Aller en bas
http://www.tdms.fr
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptySam 17 Fév 2007 - 10:49

Bon ba eu, j'ai essayé le code et voila ce qui se passe : tout est normal sauf que le Mario deviend invisible.
Il fallait bien tout mettre dans le draw ?


Bon, sinon ce code :
d3d_transform_set_identity();
d3d_transform_set_rotation_y(turn)
d3d_transform_add_translation(x,y,depth)
draw_sprite_ext(sprite_index,-1,0,0,image_xscale,image_yscale,image_angle,c_white,image_alpha);
d3d_transform_set_identity();

marche bien à condition que la depth de Mario reste égale à 0. Le truc c'est que comme parfois je veux simuler une plateforme 3D, il me faud faire varier la depth...

je t'envois par MSN un exe de mon Mario pour que tu vois ce qu'il se passe quand sa marche, et lorsque tu avanceras, la depth augmentera, à ce moment la, tu te retournes pour déclencher l'effet feuille de papier et tu véras qu'il ne marchera plus correctement...
Peu être que en voyant le problème, tu seras capables de trouver la solution, parsque trouver la solution ne urge pas, je peux faire plein d'autre truc en attendant, mais cela me retirerait une épine du pied...
Sa fait un moment que j'essais de bidouiller la dessus, mais je ne trouve pas de solution...


Merci encore une fois à [TheDarkTiger] pour tout le mal qu'il se donne
Revenir en haut Aller en bas
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyLun 19 Fév 2007 - 21:32

Je commence à desespérer...
:snif2:
Revenir en haut Aller en bas
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyLun 19 Fév 2007 - 22:26

[TheDarkTiger] a écrit:
bha

d3d_transform_set_identity();
d3d_transform_add_rotation_z(angle);
d3d_transform_add_translation(x,y,0);
d3d_draw_block(-16,-16,-10, 16,16,100,(background3),1,1);
d3d_transform_set_identity();

n'affichera pas du tout ce que tu veux ...

il faudrait plutôt :

Code:
var tex;
tex=sprite_get_texture(sprite_index,image_single);
d3d_transform_set_identity();
d3d_transform_set_rotation_y(turn)
d3d_transform_add_translation(x,y,depth)
d3d_draw_wall(-16,-16,0, 16,16,0,tex,1,1);
d3d_transform_set_identity();

et ca devrait arche super






Le x et y d'origine sont au centre de Mario, ton code ok ?
Parsque sinon , je ne vois rien snif
Revenir en haut Aller en bas
[TheDarkTiger]
Modérateur
[TheDarkTiger]


Messages : 7420
Localisation : Essonne

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyDim 25 Fév 2007 - 16:52

hola garçon !
je revien seulement de vacances, et je tombe sur ce topic

si ca marchepas, essaye :

Code:
var tex;
tex=sprite_get_texture(sprite_index,image_single);
d3d_transform_set_identity();
d3d_transform_set_rotation_y(turn)
d3d_transform_add_translation(x,y,depth)
d3d_draw_wall(-16,0,-16,16,0,16,tex,1,1);
d3d_transform_set_identity();

super
Revenir en haut Aller en bas
http://www.tdms.fr
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyLun 26 Fév 2007 - 1:08

Je viends de tester, bon, le Mario semble très loin et minuscule, il fini meme par disparaitre... donc bon, et pour la rotation , il est trop petit alors je ne peux pas dire... :snif2:
J'ai encore testé des truc mais bon... Sans succès...

Je crois que je vais désactiver la feuille de papier en attendant de trouver une solution... C'est curieux ce problème de rotation en 3D...

Si tu as d'autre idées...
Merci pour ton aide
On en viendra bien a bout un jour :7_smiley:
Revenir en haut Aller en bas
[TheDarkTiger]
Modérateur
[TheDarkTiger]


Messages : 7420
Localisation : Essonne

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyLun 26 Fév 2007 - 12:50

yep, ya pas de blem happy1

si tu veux, envoi la source, mais si elle fait 25 Mo on va éviter...
Revenir en haut Aller en bas
http://www.tdms.fr
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyLun 26 Fév 2007 - 14:59

Le gm6 est léger, mais pour pouvoir compiler, il te faudrait un lecteur E, puis créer un dossier et mettre les DLL de GMphysique, Freememory et d'autre bref... Si tu as un lecteur E, je t'envérais le dossier par MSN puis le source...
Looool, tu vas peu être un peu aluciner en voyant le source...
Evidement, tu le gardes pour toi, tu es le seul autorisé à le voir...
Hat Le CBNA
Revenir en haut Aller en bas
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyLun 26 Fév 2007 - 15:28

PLUS SIMPLE

http://www19.rapidupload.com/d.php?file=dl&filepath=11718

Tu compiles ce GM6, puis tu te sert du débug mode pour taper objet_play.depth=100...

La , tu comprendras tout facilement happy1
Ca évite que tu t'enquiquines... (si le GM6 de mon projet t'interesses , il y a pas de pb...)
Revenir en haut Aller en bas
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyLun 26 Fév 2007 - 21:52

RESOLU
Bon, dans mon esprit, dans ma vision de GameMaker,
il existe x,y, depth
et aussi un x_offset , y_offset et un d3d_set_depth(depth_offset)
Ceux qui ont saisit à 100% le fonctionnement des transformations (c'est à dire pas moi) comprendront peut être un peu l'idée général...

Le problème venait de l'axe de rotation qui ne restait pas entre les deux pied de Mario quand celui ci avait une profondeur différente de zéro.
Il me manquait une valeur d3d_set_depth(0) à mettre à zéro...

Je répète, ne me demandez pas d'esplication...




Citation :
d3d_transform_set_identity();
d3d_transform_add_rotation_y(turn)
d3d_transform_add_translation(x,y,depth)
d3d_set_depth(0)
draw_sprite_ext(sprite_index,-1,0,0,image_xscale,image_yscale,image_angle,c_white,image_alpha);
d3d_transform_set_identity();

Un grand merci au Tigre tout sombre pour son aide
Revenir en haut Aller en bas
[TheDarkTiger]
Modérateur
[TheDarkTiger]


Messages : 7420
Localisation : Essonne

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyMar 27 Fév 2007 - 18:19

Tigre tout sombre ?

encore un pseudo :snif2:

mais bon, le problèmme est résolu, c'est l'essenciel super
Revenir en haut Aller en bas
http://www.tdms.fr
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] EmptyMar 10 Avr 2007 - 17:58

J'avais pas poster ma solution :honte:

Citation :
d3d_transform_set_identity();
d3d_transform_add_rotation_y(turn)
d3d_transform_add_rotation_z(zturn)
d3d_transform_add_translation(x,y,depth)
//d3d_transform_add_translation(0,x,depth)
d3d_set_depth(0)
draw_sprite_ext(sprite_index,-1,0,0,image_xscale,image_yscale,image_angle,c_white,image_alpha);
d3d_transform_set_identity();


Hat Le CBNA
Revenir en haut Aller en bas
Contenu sponsorisé





Problème de rotation de sprite en 3D [résolu] Empty
MessageSujet: Re: Problème de rotation de sprite en 3D [résolu]   Problème de rotation de sprite en 3D [résolu] Empty

Revenir en haut Aller en bas
 
Problème de rotation de sprite en 3D [résolu]
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [resolu]Probleme de sprite
» [Résolu] probleme animation sprite
» [RESOLU] problème sprite gif lors du déplacement
» [Résolu] Déplacement objet animé : problème sprite :'(
» [Résolu][Game maker]Probleme d'animation sprite

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide confirmés-
Sauter vers: