Animation de sprites 3D

Partagez votre expérience de PureBasic avec les autres utilisateurs.
Anonyme

Animation de sprites 3D

Message par Anonyme »

Voici une méthode montrant comment animé un sprite3D en changeant les Coordonées UV de se sprite :

j'utilise cet image :

Image

Code : Tout sélectionner

InitSprite() : InitSprite3D() : InitKeyboard()
OpenScreen(800,600,32,"")


Structure vertex
    sx.f
    sy.f
    sz.f
    rhw.f
    Color.l
    specular.l
    tu.f
    tv.f
EndStructure

Structure PB_Sprite3D
     Texture.l         
     Vertice.vertex[4]
     Width.w
     Height.w
EndStructure



UsePNGImageDecoder()
LoadSprite(0,"Ring.png",#PB_Sprite_Texture|#PB_Sprite_AlphaBlending)
CreateSprite3D(0,0)







FrameU.f = 0


Repeat
ClearScreen(0)
  ExamineKeyboard()


Start3D()
*S.PB_Sprite3D = IsSprite3D(0)



*S\Vertice[0]\sx=0
*S\Vertice[0]\sy=0

*S\Vertice[1]\sx=64
*S\Vertice[1]\sy=0

*S\Vertice[2]\sx=0
*S\Vertice[2]\sy=64

*S\Vertice[3]\sx=64
*S\Vertice[3]\sy=64



*S\Vertice[0]\tu=FrameU
*S\Vertice[0]\tv=0

*S\Vertice[1]\tu=1/4+FrameU
*S\Vertice[1]\tv=0

*S\Vertice[2]\tu=FrameU
*S\Vertice[2]\tv=1

*S\Vertice[3]\tu=1/4+FrameU
*S\Vertice[3]\tv=1






If T.l < ElapsedMilliseconds()
T = ElapsedMilliseconds()+50
FrameU + 1/4
EndIf 


If FrameU>1
FrameU=0
EndIf


DisplaySprite3D(0,0,0)
Stop3D()



  FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
Dernière modification par Anonyme le mer. 11/juil./2007 12:25, modifié 1 fois.
wolfjeremy
Messages : 1202
Inscription : sam. 31/déc./2005 23:52

Message par wolfjeremy »

OUai pas mal pour un sonic :P

Par contre faut remplacer stop3d() par start3d() (le premier)
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Re: Animation de sprites 3D

Message par beauregard »

:D
intéressant, et merci !
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Re: Animation de sprites 3D

Message par beauregard »

Encore une fois, j'ai planché sur ton code comme ce n'est pas mentalement permis, et je n'ai toujours rien compris.

pourrai-tu s'il te plait faire une modification du code, afin d'afficher seulement les 3 premières images, pour que je puisse avoir un élément de comparaison.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Animation de sprites 3D

Message par Backup »

Cpl.Bator a écrit :Voici une méthode montrant comment animé un sprite3D en changeant les Coordonées UV de se sprite :

j'utilise cet image :

Image
le lien est mort :)
Anonyme

Message par Anonyme »

problème avec purestorage...
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Re: Animation de sprites 3D

Message par beauregard »

Dobro a écrit :
Cpl.Bator a écrit :Voici une méthode montrant comment animé un sprite3D en changeant les Coordonées UV de se sprite :

j'utilise cet image :

Image
le lien est mort :)
4 images de 64*64, que l'on peut faire soit même, c'est pas grave.

pourrait modifier ton code pour animer seulement les 3 premières images, pitié Cpl.Bator !
Anonyme

Message par Anonyme »

FrameU + 1/4
par
FrameU + 1/3
:D
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Message par beauregard »

Cpl.Bator a écrit :
FrameU + 1/3
merci.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Animation de sprites 3D

Message par Ar-S »

L'image n'est plus dispo mais donc j'en déduis que c'était une image "planche" fond transparent de 256 x 64 avec 4 anneaux (de 64) représentant l'animation ?
j'ai bon ?
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
flaith
Messages : 1487
Inscription : jeu. 07/avr./2005 1:06
Localisation : Rennes
Contact :

Re: Animation de sprites 3D

Message par flaith »

Ar-S a écrit :L'image n'est plus dispo mais donc j'en déduis que c'était une image "planche" fond transparent de 256 x 64 avec 4 anneaux (de 64) représentant l'animation ?
j'ai bon ?
héhé, les anneaux sont là : http://www.purebasic.fr/french/viewtopic.php?f=6&t=7049 :D
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Re: Animation de sprites 3D

Message par Le Soldat Inconnu »

je n'arrive pas à le faire fonctionner ...
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Animation de sprites 3D

Message par Ar-S »

J'ai trouvé un très bon exemple d'animation de sprite/sprite3D ici : http://www.flashpulse.com/purebasic/AnimateSprite.zip
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
Le psychopathe
Messages : 764
Inscription : jeu. 03/mars/2005 19:23

Re: Animation de sprites 3D

Message par Le psychopathe »

pas mal l'exemple, faut que je pige ^^
Répondre