IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

DirectX Discussion :

Rendre une primitive


Sujet :

DirectX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations forums :
    Inscription : Juin 2002
    Messages : 256
    Par défaut Rendre une primitive
    Bonjour,

    Dans la fonction Update de notre jeux, nous avons modifié le code afin de n'effectuer qu'un seul appel à ID3DXSprite::Begin() / End() par frame. C'était évident, mais nous n'y avions pas pensé avant...

    Tout est bien rendu, à une exception près : les primitives. En effet, il semblerait qu'il ne soit pas possible de rendre de primitive avec IDirect3DDevice9:rawPrimitive à l'intérieur d'un bloc Begin/End de ID3DXSprite. Pourriez-vous confirmer ?

    Du coups, je suis obligé d'appeler ID3DXSprite::End() avant DrawPrimitive, et Begin après. Savez-vous s'il est possible, via un flag ou une autre méthode, de dessiner mes primitives sans appeler End au préalable ? Si non, y'a-t-il un moyen quelconque de savoir si ID3DXSprite::Begin a été appelé à un instant donné (ça m'éviterait d'appeler End() alors que Begin n'aurait pas été appelé)?

    Merci

    Cordialement

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Tout est bien rendu, à une exception près : les primitives. En effet, il semblerait qu'il ne soit pas possible de rendre de primitive avec IDirect3DDevice9:: DrawPrimitive à l'intérieur d'un bloc Begin/End de ID3DXSprite. Pourriez-vous confirmer ?
    C'est fort possible. La doc devrait te confirmer ça.

    Il n'y a pas de miracle, il faut essayer de regrouper tous les rendus de sprite d'un côté et les rendus de primitives de l'autre. Et quand tu es obligé de caler une primitive entre deux sprites, tu dois appeler End() puis de nouveau Begin().

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations forums :
    Inscription : Juin 2002
    Messages : 256
    Par défaut
    Je croyais un peu à un miracle

    Merci quand même

    Cordialement

Discussions similaires

  1. [MFC] rendre une boite de dialogue inactive
    Par Vestaproman dans le forum MFC
    Réponses: 8
    Dernier message: 22/01/2004, 14h09
  2. Rendre une disquette illisible par d'autres que moi
    Par kivoch dans le forum x86 16-bits
    Réponses: 8
    Dernier message: 26/12/2003, 22h49
  3. [TP]rendre une unité avec l'extension tpu
    Par mmm dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 28/10/2003, 20h09
  4. Rendre une page d'un TPageControl invisible
    Par DevelOpeR13 dans le forum Composants VCL
    Réponses: 5
    Dernier message: 10/06/2003, 11h26
  5. Rendre une fenêtre modale non modale
    Par Smortex dans le forum Composants VCL
    Réponses: 2
    Dernier message: 30/03/2003, 17h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo