Accueil > Forum > > > > deformation de terrain
deformation de terrain
mardi 6 septembre 2011 à 19:04:02 |
deformation de terrain

nancyM
|
bonjour
j'espere que quelqu'un pourra me guider.
voila je souhaiterais réaliser une déformation de terrain (fait de triangle_strip ou de glCylinder je sais pas tout a fait) pour faire un effet de relief.
je sais qu'il faut utiliser les niveaux de gris d'une heigthmap, j'ai aussi regarder le displacement mapping, mais mon plus gros pb est que, en utilisant les niveaux de gris de ma heightmap cela ne fonctionne pas comme je le souhaite.
je me demande si c'est dans mon "fichier.vert (le vertex shader) qu'il faut que je lise le tableau des niveaux de gris, parce que je le fais directement dans la creation de mes triangles et c'est cela qui ne me semble pas correct. 
et la je stagne vraiment   !!!!
j'espere que quelqu'un pourra au moins me donner une piste.
merci
|
|
mercredi 7 septembre 2011 à 14:03:55 |
Re : deformation de terrain

buno
|
Hello,
Heightmap est, comme son nom l'indique, une map destiné à recenser les différentes hauteur de ton terrain.
L'idée est la suivante:
- la taille de ta heightmap correspond à la taille de ton terrain
- pour chaque point de ton terrain, tu va cherchers dans ta heightmap, la hauteur correspondante (la coordonnée Y, si tu es resté dans un repère standard)
- si ton point tombe entre des valeurs, il te vaudra extrapoler
@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
mercredi 7 septembre 2011 à 16:03:12 |
Re : deformation de terrain

nancyM
|
ok, je sais que la heightmap c'est un tableau de haurteur comme tu dis, mais ce que je n'arrive pas à comprendre c'est justement comment la lire de telle sortes qu'elle agisse sur le terrain en question.
je m'explique, j'ai charge une texture, et j'ai une fonction loadBMP qui lit le fichier image.bmp.
le truc c'est que dans un programme .c je dessine le terrains avec ds triangles et tout. mais ce qui me bloque la c'est que je ne vois pas comment recureperer les niveaux de gris de la heigtmap pour les appliquer a la hauteur de mes triangles.
merci  
|
|
mercredi 7 septembre 2011 à 16:24:06 |
Re : deformation de terrain

buno
|
Ta heightmap correspond à ton image.bmp?
Si oui, à la suite du loadBMP, les valeurs des pixels de ton image correspondent à tes hauteurs.
Du coup, pour accéder à la hauteur du point (I,J), tu dois faire quelque chose du style
Code C/C++ : hauteur = monImage[I][J];
Bien évidemment, tu vas certainement "tombé à côté", dans le sens où ta matrice n'a pas de représentation continue mais discrète (dans le sens mathématiques). Il te faut donc extrapoler la valeur à partir des plus proches voisins (voir interpolation bilinéaire par exemple)
@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
jeudi 8 septembre 2011 à 10:20:33 |
Re : deformation de terrain

nancyM
|
merci pour tes reponses,
j'ai une derniere question pour voir si j'ai tout bien compris,
qd je recupere les valeurs (i,j) de l'image, ces valeurs corresponde aux triangles de mon sol?ou pas, et du coup pour elever les triangles de sol je fais comment apres avoir recuperes les valeurs.
merci
|
|
jeudi 8 septembre 2011 à 10:32:59 |
Re : deformation de terrain

buno
|
Je ne connais pas la granularité de ton terrain (grille régulière ou non?) mais, en règle générale, il n'y a pas concordance entre les points de ton terrain et ta map.
D'ailleurs, la manip se fait dans l'autre sens: c'est quand tu construis tes triangles que tu va regarder la hauteur des sommets correspondants, et non au chargement de ta map.
@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
jeudi 8 septembre 2011 à 10:33:43 |
Re : deformation de terrain
|
jeudi 8 septembre 2011 à 10:41:50 |
Re : deformation de terrain

buno
|
Tu dessines des cylindres pour tes montagnes? Avec gluCylinder? (je ne connais pas glCylinder...)
Dans ce cas, tu peux récupérer la hauteur du centre du cylindre...
@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
jeudi 8 septembre 2011 à 11:20:32 |
Re : deformation de terrain

nancyM
|
oui c'est gluCylinder je me suis trompe, mais le pb avc gluCylinder est que la texture se plaque sur chaque cylindre, qu coup ca marche pas comme il faut.
|
|
vendredi 9 septembre 2011 à 16:22:23 |
Re : deformation de terrain

LA_Tupac
|
Il faut effectivement utiliser une heightmap via un vertex shader et fusionner la heightmap avec une autre qui correspond au cratère que tu veux ajouter. Mais il faut partir d'un plan ... pas d'un cylindre...
|
|
Cette discussion est classée dans : deformation, niveaux, gris, terrain, espere
Répondre à ce message
Sujets en rapport avec ce message
Coder une image niveaux de gris en RGB [ par gilimcce ]
Il semblerait que mes problèmes de texture soit liée à cela :je charge une image en niveau de gris, alors que ma fonctionchargeant l'image attend une
Creation d'une Bitmap en niveaux de gris (256 ou 65536) [ par carolivier ]
Bonjour,Je cherche un bout de code me permettant de creer (pour l'affichage, pasbesoin) une Bitmap en 256 (ou 65536) niveaux de gris. a chaque fois, j
Creation d'une Bitmap en niveaux de gris (256 ou 65536) [ par carolivier ]
Bonjour,Je cherche un boutb de code me permettant de creer (pour l'affichage, pasbesoin) une Bitmap en 256 (ou 65536) niveaux de gris. a chaque fois,
Besoin d'un algorithme de reconstruction d'images en niveaux de gris [ par mahdouch1 ]
Bonjour,Est ce que quelqu'un peut m'aider je suis à la recherche d'un code en C qui fait la reconstruction d'une image en niveau de gris suivant l'alg
algorithme de squelettisation en niveau de gris [ par dadou846 ]
salut,j'ai besoin d'un programme en c++ qui permet de réaliser la squelettisation d'une image en niveau de gris. j'espère que quelqu'un peut m'aider.m
visualisation en openGL [ par Lutin31 ]
Bonjour, J'ai un programme en C qui me crée un fichier de données comme ceci : 0 0 7 1 0 -2 2 0 8 3 0 5 etc... Je fais ensuite lire ce fichier dans
Surface Bezier Collision [ par Bestnk ]
Bonjour à tous le monde, J'espère que mon topic suscitera des réponses afin de m'aider car là je suis vraiment vraiment vraiment coincé. J'ai crée m
Segmentation d'une image par région en C [ par Minou09 ]
Bonjour, J'espère que j'ai créé mon sujet dans la bonne catégorie. Voila mon problème, je cherche à créer un programme en C permettant de segmenter u
segmentation d'image niveau gris en région [ par joud07 ]
Bonjour à tous je veux connaitre comment segmenter une image en niveau de gris en région? plutot, espérant de m'envoyer un code source m'explique co
multi texturing [ par colonelfr ]
Salut,Voila mon nouveau probleme :J'ai un terrain avec deux textures differentes (herbe clair et herbe foncé). Le mélange des deux n'est pas tres reus
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|