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 :

Cache de commandes directx


Sujet :

DirectX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de titoine1978
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2005
    Messages : 132
    Par défaut Cache de commandes directx
    Bonjour,

    Je me posais une question. Est-ce qu'il est possible avec Directx d'enregistrer toutes les commandes faites entre un BeginScene et EndScene ? et pourquoi pas les réinjecter à nouveau dans un BeginScene/EndScene pour regénerer la même frame. Une fonction qui ferait un genre de cache d'instructions dx.

    Merci.

  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
    Tu peux utiliser les stateblocks, qui sont très bien décrits dans la doc du SDK.

  3. #3
    Membre confirmé Avatar de titoine1978
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2005
    Messages : 132
    Par défaut
    Merci pour la réponse Loulou.
    Je viens de regarder un peu sur la SDK, et j'ai l'impression que ca ne sauve que les paramètres lumière, brouillard, etc.
    Est-ce que les vertex/index buffer, rotations etc. sont aussi sauvés ?

  4. #4
    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
    Est-ce que les vertex/index buffer, rotations etc. sont aussi sauvés ?
    Tout ça est bien sauvegardé, oui.

    Citation Envoyé par La doc
    Vertex state (see Saving Vertex States With a StateBlock).
    Pixel state (see Saving Pixel State With a StateBlock).
    Each texture assigned to a sampler.
    Each vertex texture.
    Each displacement map texture.
    The current texture palette.
    For each vertex stream: a pointer to the vertex buffer, each argument from SetStreamSource, and the divider (if any) from SetStreamSourceFreq.
    A pointer to the index buffer.
    The viewport.
    The scissors rectangle.
    The world, view, and projection matrices.
    The texture transforms.
    The clipping planes (if any).
    The current material.

  5. #5
    Membre confirmé Avatar de titoine1978
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2005
    Messages : 132
    Par défaut
    Ok, je n'avais pas vu cette partie.
    La seule chose ennuyeuse c'est que ce sont les pointeurs qui sont sauvées, et je les delete au fur et à mesure. Les stateblocks ont quand même l'air super utiles.
    Merci encore.

  6. #6
    Membre Expert

    Profil pro
    Programmeur
    Inscrit en
    Août 2002
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Programmeur

    Informations forums :
    Inscription : Août 2002
    Messages : 1 091
    Par défaut
    Cela n'enregistre pas les commandes, juste les "états".
    Et cele sauve l'"état courant" pour les renderstates indiquées et non pas la succession des commandes SetRenderstate. Ceci dit la plupart du temps cela n a pas trop d'importance puisque seul le dernier SetRenderstate compte..

    Si tu veux enregistrer des commandes de tracés comme DrawPrimitive, ou Clear, tu ne peux pas. Tu peux bien entendu faire une couche par dessus DirectX dans ton moteur de jeu qui enregistre les commandes et les rejoue à volonté mais c'est la responsabilité de ton code et pas celui du driver ou celui de DirectX.

    Mon site web | Mon blog | Mes photos | Groupe USA
    > BONJOUR, JE SUIS NOUVEAU SUR CE FORUM
    > presse la touche caps lock, stp
    > OH.. MERCI C EST BEAUCOUP PLUS FACILE COMME CA

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 08/04/2013, 17h40
  2. Commande sous Linux (afin de vider le cache ARP)
    Par Kartchak dans le forum Réseau
    Réponses: 9
    Dernier message: 10/07/2012, 16h37
  3. commande tar et fichier caché
    Par metfan dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 21/06/2008, 13h08
  4. OpenGL ou DirectX
    Par Nadir dans le forum DirectX
    Réponses: 6
    Dernier message: 02/05/2002, 12h48
  5. Documentation DirectX dans C++Builder 3
    Par srvremi dans le forum DirectX
    Réponses: 1
    Dernier message: 26/04/2002, 09h59

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