Page 1 sur 1

Probleme bizzare de Sprite 3D

Publié : dim. 03/sept./2006 17:35
par Twix
salut à tous,

dan mon code, je veu utiliser des Sprite 3D. J'ai donc écri ceci :
Global p_pnn=CreateSprite3D(#PB_Any,LoadSprite(#PB_Any,skdir+"pionN.bmp",#PB_Sprite_Texture))

plusieurs fois, avec a chaque fois des image differente. Bien sûr, l'image existe, le sprite tout seul se charge correctement et j'ai appelé InitSprite() et InitSprite3D() bien avant.

Et quand j'ai compilé, il a compilé, a affiché "Exécutable démarré" et puis après plus rien (alors qu'avant un écran d'intro s'affichait, puis l'interface principale, qui sont 2 images toutes bêtes)

Quan j'enlève toutes les lignes relatives au sprite 3D, ça marche...

Alors j'ai vérifié DirectX (j'ai la ver 9.0c et aucun problème détécté). Ma machine est neuve et à une ATI Radeon 6200, je crois, Pentium 4, 1024Mo de RAM.

J'ai bien essayé l'exemple sur les Sprite3D de PureBasic, et là, ca marche nickel...

Je ne vois rien dan mon code qui peu gener les sprite 3D pourtant...
Aurais-je involontairement réuni les conditions qui font buguer les SPrite3D ???

Code d'init :

If InitSprite()=0 : MessageRequester("Erreur","Erreur : Impossible d'initialiser DirectX") : End : EndIf
If InitSprite3D()=0 : MessageRequester("Erreur","Erreur : Impossible d'initialiser DirectX") : End : EndIf
If InitMouse()=0 : MessageRequester("Erreur","Erreur : Impossible d'initialiser DirectX") : End : EndIf

If OpenScreen(1024,768,32,"") : Else : MessageRequester("Erreur","Erreur : Impossible d'ouvrir l'écran") : End : EndIf


Voila, c'est bizzarre...

Publié : dim. 03/sept./2006 17:42
par Anonyme
Salut, t'es sprite on une longueur égale à la largeur ?
64x64
128x128
256x256
etc...

Publié : dim. 03/sept./2006 17:44
par Twix
Oui
et même si je laisse juste InitSprite3D(), ça ne marche pas...

Publié : dim. 03/sept./2006 17:49
par Anonyme

Code : Tout sélectionner

Global p_pnn=CreateSprite3D(#PB_Any,LoadSprite(#PB_Any,skdir+"pionN.bmp",#PB_Sprite_Texture)) 
je ne sais pas si cela fonctionne comme ca, j'ai pas tester

Essaye ca :

Code : Tout sélectionner

Loadsprite(#SPRITE,FILE$,#PB_Sprite_Texture)
CreateSprite3D(#SPRITE,#SPRITE)

edit :

tu as bien mis Start3D() et Stop3D() pour l'affichage ?

Publié : dim. 03/sept./2006 17:51
par Twix
lol ! Je n'ai pas eu le temps de faire l'affichage de ces sprites...
vé séparer comme tu dit

Publié : dim. 03/sept./2006 17:54
par Twix
non, rien à faire, ça veut pa marcher
vé écrire un bout de code à côté, sur les sprite 3D
comme ça on sera fixé sur l'origine du problème
-Soit de ma faute, dans ce cas le bout de code ne marchera pas
-Soit bug de pure...(je pense plutot à la première solution)