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 :

c# directx managed traitement face avant, face arrière


Sujet :

DirectX

  1. #1
    Membre habitué

    Profil pro
    Consultant Business Intelligence
    Inscrit en
    Novembre 2005
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant Business Intelligence

    Informations forums :
    Inscription : Novembre 2005
    Messages : 284
    Points : 186
    Points
    186
    Par défaut c# directx managed traitement face avant, face arrière
    Bonjour,
    J'ai fait une maison dont les mur sont composé de triangles strip, j'aimerai savoir si ils possible de créer différement les faces arrière et avant du mur.
    Mon but est de mettre un couleur verte pour les faces intérieures des murs, et que les faces extérieures réagissent à une lumière qui trournent autour de la maison.
    En openGL j'utilisait GL_FRONT et GL_BACK est-ce qu'il existe quelque chose de similaire en directx managed?
    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 : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Le plus simple serait encore d'avoir deux murs réellement distincts au niveau de la géometrie.

  3. #3
    Membre expérimenté

    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
    Points : 1 679
    Points
    1 679
    Par défaut
    Citation Envoyé par t-die
    En openGL j'utilisait GL_FRONT et GL_BACK est-ce qu'il existe quelque chose de similaire en directx managed?
    Merci
    GL_FRONT et GL_BACK n'ont pas d'équivalent dans d3d, ceci dit, tu peux émuler leur comportement avec le culling pour pouvoir réutiliser la même géométrie.
    Cela nécessite d'envoyer deux passes, l'une avec les front faces passante et l'autre avec les back faces passantes et en changeant les couleurs ou le materiel ou le shaders entre les deux passes.

    Avec les shader model 3.0 tu peux écrire un shader qui lit le registre vFace qui t'indique si le triangle te fait face ou pas, ce qui permet de réduire le nombre de passe à une seule, mais nécessite un nouveau pixel shader 3.0 qui ne tourne que sur du hardware récent. De plus si tu utilises le branchement dynamique à l'intérieur du pixel shader, tu réduiras d'autant ta performance.

    LeGreg

    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

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/08/2008, 09h06
  2. Réponses: 4
    Dernier message: 28/02/2008, 10h09
  3. [LabView 8.2] Définir la position d'une face avant
    Par Gaorr dans le forum LabVIEW
    Réponses: 10
    Dernier message: 04/01/2008, 18h32
  4. Interface Labview (changement des faces avant)
    Par felben dans le forum LabVIEW
    Réponses: 4
    Dernier message: 26/06/2007, 09h10
  5. Fichier md2 et face avant/arrière
    Par casafa dans le forum OpenGL
    Réponses: 1
    Dernier message: 31/08/2006, 14h47

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