Tracés 2D et 3D

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Ollivier
Messages : 4197
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Message par Ollivier »

@Dobro

Ceci est la gueule de la gestion d'affichage dans une boucle principale d'un programme fini et performant (pas de saturation du CPU):

(Pour moi, ça ne me semble pas extrêmement lourd : AUCUN StartDrawing dans la boucle principale...)

Code : Tout sélectionner

Delay(1)

Usebuffer(spriteA)
DisplaySprite()
Etc...

Usebuffer(spriteB)
DisplaySprite()
Etc...

Usebuffer(#pb_any) ; Affichage à l'écran
DisplaySprite()

FlipBuffers()
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Message par beauregard »

KrisJNT a écrit :Euh... j'ai pas trop compris : où dois-je taper DirectX9 ?
Sinon, j'ai un peu de mal avec les log, mais je peux toujours essayer de le comprendre.
Menu/Compilateur/Options du compilateur...

...Bibliothèque sous système: là
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86
KrisJNT
Messages : 110
Inscription : ven. 31/oct./2008 16:51

Message par KrisJNT »

J'ai tapé DirectX9 : même résultat (on s'en sortira jamais ^^)
Voici le code qui Bug en me disant :
Line 5 : #Sprite not initialized

Code : Tout sélectionner

InitEngine3D()
InitSprite()
OpenScreen(1024, 768, 32, "")
CreateSprite(0, 100, 100)
Debug SpriteOutput(0)
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Message par djes »

Comme tu utilises Ogre (avec InitEngine3D()), tu dois t'assurer d'avoir mis, comme beauregard l'a dit, la bibliothèque sous-système DirectX9 dans les options. Tu dois ensuite vérifier le retour de chacune des fonctions que tu appelles. Si ça ne fonctionne toujours pas, c'est que tu as un souci avec DirectX9 (genre installation de pilotes, ou ta carte graphique non compatible)

Voici un petit code qui vérifie tout ça.

Code : Tout sélectionner

CompilerIf Subsystem("DirectX9")
  Debug "Compiling with the DirectX9 subsystem"
CompilerElse
  Debug "Not compiling with the DirectX9 subsystem"
  End
CompilerEndIf

If InitEngine3D()
  If InitSprite()
    If OpenScreen(800, 600, 16, "")
      If CreateSprite(0, 32, 32)
        Debug SpriteOutput(0) 
      Else
        Debug "Probleme avec CreateSprite"
      EndIf
    Else
      Debug"Probleme avec OpenScreen"
    EndIf
  Else
    Debug "Probleme avec InitSprite"
  EndIf
Else
  Debug "Probleme avec InitEngine3D"
EndIf
KrisJNT
Messages : 110
Inscription : ven. 31/oct./2008 16:51

Message par KrisJNT »

J'ai bien DX9, ça doit venir de la carte graphique parce que je tombe sur le cas où je ne peux pas compiler avec DX9. J'essaierai sur mon autre ordi (plus puissant) et je vous en dirai des nouvelles !
Juste pour info, on est réellement obligé de fournir cette bibliothèque ? Elle n'est pas compilée par défaut ?
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Message par djes »

Non, par défaut c'est DirectX7 qui est choisi, parce qu'il est plus compatible je pense. On a demandé une liste déroulante pour la prochaine version :)
Ollivier
Messages : 4197
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Message par Ollivier »

Salut KrisJNT,

Je vois que Djes a mis un code qui diagnostique bien: quelle message exact vois-tu apparaître grâce à ce code?

Ollivier
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Message par beauregard »

djes a écrit :On a demandé une liste déroulante pour la prochaine version :)
bonne idée :)
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86
Répondre