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

Développement 2D, 3D et Jeux Discussion :

Le rendu de l'herbe et textures similaires.


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Membre confirmé Avatar de LapinGarou
    Homme Profil pro
    R&D Developer
    Inscrit en
    Octobre 2005
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : R&D Developer
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2005
    Messages : 341
    Points : 479
    Points
    479
    Par défaut Le rendu de l'herbe et textures similaires.
    Bonjour à tous.

    Maintenant que j'ai terminé mon manager de textures, j'aimerai résoudre un problème qui commence à me prendre la tête : les textures avec une transparence comme l'herbe par exemple. (J'utilise un canal alpha)

    Comment on organise ça pour l'affichage du plus lointain au plus proche par rapport à la caméra ? Est ce ma classe de geomipmapping qui doit gérer ça avec ses patches (pas convaincu sur ce point)? Je suppose qu'il faut utiliser ce même principe pour les systèmes de particules comme les explosions par exemple.
    Ou bien je stocke ça dans un tableau séparément, et je checke tout en calculant la distance herbe->caméra pour chaque brin ? Ca peut vite devenir très long à chaque frame, il n'y aura pas que 10 brins d'herbe.

    J'ai lu plusieurs articles sur les répartitions de poisson pour l'herbe, billboarding, etc, mais je n'ai rien trouvé sur l'organisation, ça ne parle que de la technique, pas de la mise en place dans un programme.
    Faut-il que je me fasse une classe SceneGraph pour gérer ça ?

    J'avoue que je suis un peu perdu, sur plusieurs site, il y a tout et son contraire.

    Merci si quelqu'un peut m'éclairer sur une voie.

  2. #2
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    D'abord il faut distinguer les textures "translucides" (qui modifie la lumière qui les traverse) comme une vitre, et "transparentes" (à trous) comme un brin d'herbe.

    Les surfaces contenant les premières sont difficiles à gérer, puisqu'effectivement, il faut impérativement les dessiner de l'arrière-plan vers le premier-plan (alpha channel non associatif).

    Les secondes (alpha-testing) sont comme des surfaces normales, aucun besoin de les dessiner dans un ordre précis.

    Mais comme toujours, il peut être utile de les dessiner de l'avant vers l'arrière, donc de toute façon nécessiter un z-sort. Mais dans ce cas, on le fait par "patch" (chaque patch de 1000 brins d'herbes est organisé en Z, mais pas chaque brin à l'intérieur). De toute manière cette approche est nécessaire pour ne pas invoquer 10000 draw à chaque frame.
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  3. #3
    Membre confirmé Avatar de LapinGarou
    Homme Profil pro
    R&D Developer
    Inscrit en
    Octobre 2005
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : R&D Developer
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2005
    Messages : 341
    Points : 479
    Points
    479
    Par défaut
    Ok, je comprends mieux là. (Pour des nuages, translucides ou transparentes les textures ?)
    J'ai une autre question : je suis tombé sur une démo nVidia de rendu de sol herbeux. Cette démo utilise les shaders pour le rendu de l'herbe. C'est quoi le mieux finalement ? Que ce soit le processeur ou la carte3d qui gère ça ?

    (http://developer.nvidia.com/object/nature_scene.html
    et
    http://developer.nvidia.com/object/c...l#Grass%20Demo)

Discussions similaires

  1. [FBO+GLSL]rendu dans plus d'une texture à la fois
    Par Kurisu dans le forum OpenGL
    Réponses: 4
    Dernier message: 20/06/2008, 18h53
  2. Directx 8 Probleme avec setrenderTarget pour un rendu du monde sur une texture
    Par zerailkiller dans le forum Développement 2D, 3D et Jeux
    Réponses: 7
    Dernier message: 14/01/2007, 13h50
  3. Réponses: 10
    Dernier message: 13/04/2006, 15h54
  4. Réponses: 1
    Dernier message: 06/04/2006, 17h04
  5. Rendu sans textures !
    Par Francky033 dans le forum DirectX
    Réponses: 5
    Dernier message: 23/09/2004, 05h03

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