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#][DX9] Render to texture


Sujet :

DirectX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de funkydata
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 515
    Par défaut [C#][DX9] Render to texture
    Bonjour,
    je souhaite rendre un mesh dans une texture. Comment calculer les dimensions de la texture afin qu'elle soit proportionelle à la taille du mesh à l'écran ?

  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 calculer la taille de la boîte englobante de ton modèle à l'écran. En C++, il faut utiliser D3DXComputeBoundingBox pour calculer la boîte englobante, et D3DXVec3Project pour projeter un point 3D à l'écran.

  3. #3
    Membre éclairé
    Avatar de funkydata
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 515
    Par défaut
    Ok, j'ai calculé ma bounding box qui me retourne 1 vecteur min et un max...
    J'ai transformé ces 2 vecteurs grace à la fonction Vector3.Project en utilsant le viewport de mon device...
    Mais ensuite je suis bloqué. J'ai bien essayé tout un tas de manip sur les vecteurs de transformations mais aucune d'elle ne m'a donné un résultat satisfaisant.
    Quelle opération dois-je effectuer aprés la transformation des vecteurs pour obtenir la taille 2D de ma boundingbox a l'écran ?

  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
    Tu calcules la différence entre les coordonnées 2D min et max, et tu fais un max (ou un min selon tes besoins) entre X et Y.

  5. #5
    Membre éclairé
    Avatar de funkydata
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 515
    Par défaut
    Bon, ca fait 2 jours que je me prends la tête avec ce calcul est impossible de réussir à calculer les coordonnées écrans. Dés que je bouge la camera les resultats sont complétement abérants
    Si quelqu'un a un exemple concret je suis preneur
    Donc vu que je n'y arrive pas j'ai tenté de contourner le problème en rendant le postshader sur un mesh transparent légèrement plus grand que l'original. ca fonctionne bien mais le problème est que si je m'éloigne trop avec la caméra les faces du mesh transparent clignotent. Y'a-t-il un moyen d'éviter ce clignotement ?

  6. #6
    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
    Bon, ca fait 2 jours que je me prends la tête avec ce calcul est impossible de réussir à calculer les coordonnées écrans. Dés que je bouge la camera les resultats sont complétement abérants
    Tu peux nous montrer le code ?

    Donc vu que je n'y arrive pas j'ai tenté de contourner le problème en rendant le postshader sur un mesh transparent légèrement plus grand que l'original
    Tu cherches à faire quoi en fait ?

    ca fonctionne bien mais le problème est que si je m'éloigne trop avec la caméra les faces du mesh transparent clignotent. Y'a-t-il un moyen d'éviter ce clignotement ?
    Sûrement un problème de Z-Fight. Quels sont les paramètres de ta matrice de projection ?

Discussions similaires

  1. Render to Texture / couche alpha
    Par julien_v3ga dans le forum OpenGL
    Réponses: 8
    Dernier message: 15/11/2006, 11h10
  2. [DX9] Render To Texture + ZBuffer
    Par funkydata dans le forum DirectX
    Réponses: 7
    Dernier message: 19/08/2006, 12h45
  3. render to texture
    Par damienlann dans le forum OpenGL
    Réponses: 46
    Dernier message: 22/06/2006, 17h44
  4. Render to texture
    Par primuus dans le forum DirectX
    Réponses: 1
    Dernier message: 19/04/2006, 04h38
  5. Render to texture???
    Par sebh dans le forum OpenGL
    Réponses: 2
    Dernier message: 17/01/2004, 10h50

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