RotateSprite3D(j(Ordre(4),i), 269, 0)
RotateSprite3D(j(Ordre(4),i), 269, 0)
Et oui, une rotation de 0 degré = rotation 269 sous PB... Illogique et angle meme pas rond !!

tu pourrais illustrer par un exemple ce que tu dis ? je ne comprends pas , j'ai testé par curiosité, et je ne vois rien d'anormal .
Code : Tout sélectionner
InitSprite()
InitKeyboard()
InitSprite3D()
OpenScreen(800,600,32,"Tut Sprite3D et Souris")
;Creation d'une texture
CreateSprite(0,64,64,#PB_Sprite_Texture)
StartDrawing(SpriteOutput(0))
Line(SpriteWidth(0)/2,0,SpriteWidth(0)/2,SpriteHeight(0),RGB(255,255,0))
Line(SpriteWidth(0)/2,0,-SpriteWidth(0)/2,SpriteHeight(0),RGB(255,255,0))
Line(0,SpriteHeight(0)-1,SpriteWidth(0),0,RGB(255,255,0))
FillArea(SpriteWidth(0)/2,SpriteHeight(0)/2,RGB(255,255,0),RGB(255,155,0))
Circle(32,6,3,RGB(255,0,0))
StopDrawing()
CreateSprite3D(0,0)
; Sprite3DQuality(1)
Repeat
FlipBuffers()
ClearScreen(0,0,100)
ExamineKeyboard()
If KeyboardReleased(#PB_Key_F1)
Angle - 10
ElseIf KeyboardReleased(#PB_Key_F2)
Angle + 10
EndIf
;Affiche le sprite 3D
If Start3D()
DisplaySprite3D(0, 400, 300)
RotateSprite3D(0,Angle,0)
Stop3D()
EndIf
StartDrawing(ScreenOutput())
DrawingMode(1)
FrontColor(255,255,255)
Locate(0,0)
DrawText("Touche [F1] décrémente l'angle")
Locate(0,20)
DrawText("Touche [F2] incrémente l'angle")
Locate(0,40)
DrawText("Angle : " + Str(Angle))
StopDrawing()
Until KeyboardPushed(#PB_Key_Escape)
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.
non chez moi ça marche bien !!
d'autre par la deformation est normal ! car les sprite purebasic sont des images !! pas des objets !!
si tu veut un sprite parfait pendant la rotation , il faut lui passer les 8 images precalculées , et afficher ces images en temps voulu !!
c'est plus lourd a gerer, mais ce sera parfait pour eviter les distortions !
d'ailleurs cette technique est employé dans tout les jeux, ou le personnage
est muni d'une animation !!
d'autre par la deformation est normal ! car les sprite purebasic sont des images !! pas des objets !!
si tu veut un sprite parfait pendant la rotation , il faut lui passer les 8 images precalculées , et afficher ces images en temps voulu !!
c'est plus lourd a gerer, mais ce sera parfait pour eviter les distortions !
d'ailleurs cette technique est employé dans tout les jeux, ou le personnage
est muni d'une animation !!


Au départ, il est comme ça, après une rotation complète dans un sens comme dans l'autre, il est comme ça aussi, et si on le tourne de 10 degrés dans un sens ou dans l'autre et qu'on ramène à 0, il est toujours comme ça.
Bref, quelle que soit la rotation qu'on lui applique, quand on le remet à 0, il reste conforme à l'original : Pointe en haut!

Tu devrais peut-être faire faire un quart de tour à ton moniteur

Envoie une capture d'écran, parce que je ne vois que deux solutions.
- Soit il n'y a que chez toi que ça ne fonctionne pas.
- Soit on n'a pas compris ce que tu voulais dire
Rajoute ces lignes à la fin de ton code, juste avant le Until.
Code : Tout sélectionner
If KeyboardPushed(#PB_Key_F12)
UsePNGImageEncoder()
ScreenShot = GrabSprite(#PB_Any,0,0,800,600,0)
SaveSprite(ScreenShot,"C:\Image.png",#PB_ImagePlugin_PNG)
EndIf
Et bin m.... ZUT !! Comment ca se fait que moi, avec un degré 0, je le vois pointe a droite ??????????????????????
http://xmas.free.fr/degre0.bmp
http://xmas.free.fr/degre0.bmp
Dernière modification par kelly le lun. 31/oct./2005 13:11, modifié 2 fois.
Essayons quelque chose : est ce que avec la compilation du code de comtois sur MA machine, vous voyez le triangle comme moi a l'angle 0 ?
reponse : http://xmas.free.fr/Angle0.exe
alors ?
reponse : http://xmas.free.fr/Angle0.exe
alors ?