CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Calcul de heightmap

isukthar
isukthar
Niveau 10
28 février 2010 à 16:46:15

Bonjour,

je participe au développement d'un jeu amateur avec Irrlicht et je réfléchissait à l'idée d'utiliser du parallax mapping. Le problème c'est que je ne sais pas comment obtenir les heightmap des objets.

Je dispose des fichiers de modèle en .obj et de l'image de texture. A partir de ça, comment puis-je extraire la heightmap?
J'ai testé ShaderMap CL mais les heightmap ne correspondent pas toujours.

Deeuxième question, est-il judicieux d'utiliser les parallax mapping niveau perfs et facilité d'utilisation? Une autre technique est-elle plus adaptée pour ce projet?

Merci pour vos conseils.

isukthar
isukthar
Niveau 10
01 mars 2010 à 23:40:32

Personne pour me conseiller?

pasdebol37
pasdebol37
Niveau 10
02 mars 2010 à 01:25:50

Pour obtenir ce que tu veux, réfère toi au chapitre qui concerne le "render to texture" dans l'aide du logiciel de modélisation 3D que tu utilises.

Peut-être que si tu précises le logiciel, certains pourront t'aider plus en détails concernant cette méthode (blender, Maya, 3DsMax, ...)

Vrox
Vrox
Niveau 7
02 mars 2010 à 01:28:53

Pour Irrlicht je sais pas, mais en gros je pense que tu devrais utiliser un log de modé 3D pour récupérer les maps dont tu as besoin. ou bien un log 2D, (si tu sais pas générer les maps il existe des plugins ou des petits logiciels qui le font automatiquement, quelques recherches google et tu devrais trouver bonheur...)

Sinon c'est super pour le JV le parallax mapping mais ça prend beaucoup de ressources donc non, c'est pas conseillé plus que ça. Le mieux est de s'en servir que quand c'est vraiment utile, et si possible, quand c'est possible il vaut mieux becker (regrouper plusieurs éléments d'un rendu en un seul) afin d'économiser les ressources.
Je sais pas si j'ai bien répondu à ta question mais je pense que ça devrait quand même t'aider un peu...

LGV
LGV
Niveau 28
02 mars 2010 à 12:05:20

les height et normal maps sont de l'information "en plus" que tu ne peux pas simplement "deduire" a partir du modele low-res ou des textures diffuse.

il te faut soit un modele high-res, qui servira a generer les normal maps (il y a des outils nvidia pour ca notamment), soit il faut qu'un artiste te les "peigne". En general, on utilise un modeleur classique pour le low-poly, et ensuite on passe sous ZBrush ou similaire pour creer une version high-poly. On compile les ressources pour generer low poly + lods + nmaps + etc.

si tu n'as QUE ce que tu decris, tu ne pourras pas mettre en oeuvre cette technique

Lapintade
Lapintade
Niveau 30
02 mars 2010 à 14:16:54

est-il judicieux d'utiliser les parallax mapping niveau perfs

Aucune idée. Mais par contre ce ne sera pas compatible avec toutes les cartes je pense.

et facilité d'utilisation ?

Visiblement c'est pas facile puisque tu patauge

Une autre technique est-elle plus adaptée pour ce projet?

Tout n'as pas vraiment decrit pour quoi tu voulais l'utiliser. Si tu donne plus de precisions peut etre qu'on pourra te conseiller.

isukthar
isukthar
Niveau 10
02 mars 2010 à 19:26:25

Merci pour vos réponses. En fait nous utilisons Blender pour la partie 3D et The Gimp pour les textures.

Côté programmation, le parallax mapping est géré par Irrlicht donc ça n'a pas l'air très complexe. C'est plus la partie gérée par les artistes qui m'intrigue (moi je suis codeur).

Si j'ai eu l'idée d'utiliser cette technique, c'est avant tout pour gagner en perfs. Par exemple, un de nos modélisateur 3D a créé une porte avec des barres cloutées dessus. Et il a modélisé en 3D le bout des clous (demi-sphères). Donc c'est dans ce genre de cas que je pensait virer la géométrie et utiliser un effet sur la texture.

En fait, je ne sais pas trop s'il faut partir des modèles 3D ou des textures, car ces tutos que j'ai trouvé n'ont pas la même manière de procéder:
http://www.mti.epita.fr/blogs/2009/07/16/le-normal-mapping-creer-et-utiliser-des-normal-maps-sous-blender/
http://wteamoblivionmod-for.forum2jeux.com/les-textures-f6/le-parallax-mapping-t1446.htm

PS: est-ce que quelqu'un peut me dire si la texture nécessaire au normal mapping est la même que pour le parallax mapping ?

Merci à vous.

Lapintade
Lapintade
Niveau 30
02 mars 2010 à 19:30:57

Le normal map te sert a remplacer une géométrie au niveau de la lumière. Tu obtiens un éclairage au pixel. C'est pratique sur les persos qui ont beaucoup de details. Il faut partir d'un object 3D avec beaucoup plus de polygones pour generer la normal map.
Pour le parallax mapping, je crois que ca donne un effet de relief (donc ca peut en effet remplacer ton clou) mais j'en sais pas plus. J'imagine qu'il faut aussi partir du mesh avec plus de polys.

En gros, tu prends ta porte avec tout modeliser. Tu generer une texture pour l'effet choisit. Ensuite tu vire tous les polygones et tu affiche une porte avec une seule face (j'exagere), la texture avec tous les elements et la textures avec les details/Effet.

Lapintade
Lapintade
Niveau 30
02 mars 2010 à 19:31:25

D'un autre coté, si c'est pour gagner 300 faces, ca vaut pas la peine.

isukthar
isukthar
Niveau 10
02 mars 2010 à 19:41:37

Faut que je vois ça avec les modélisateurs alors. Ils ne sont pas très expérimentés, tout comme je ne suis pas très expérimenté dans le domaine de la 3D. Pour le moment la porte en question fait plus de 20 000 poly ce que je trouve énorme.

Paulop
Paulop
Niveau 12
02 mars 2010 à 20:19:51

Cette source me parait assez intéressante pour faire du Parallax Mapping :

http://cowboyprogramming.com/2007/01/05/parallax-mapped-bullet-holes/

Mais juste là, je pense qu'il y à un soucis, une porte ne devrait pas faire 20 000 polys pour le model low poly :)

Je te conseille une autre technique, utiliser le normal mapping (tu as déjà résolu un problème :) ), avec une porte réduite à son plus simple appareil, genre 2 polys, ensuite faire la version 20 000 polys sous Zbrush par exemple pour extraire la normal map.

Tu auras déjà un jolie effet, et en plus, tu gagnes 19 998 polys :)

Vrox
Vrox
Niveau 7
02 mars 2010 à 22:07:05

En fait pour répondre à ta question du choix de la façon d'aborder les choses, il faut générer une normal map pour chaque texture.
Autrement dit tu prend ta texture de base et tu la passe dans un log 2D pour la convertir en normal map. (comme je le disais, si tu sais pas le faire toi même il existe des plugins ou des logiciels qui font cela automatiquement.)
Ensuite (là dessus je vais sans doute rien t'apprendre mais je le dis quand même...), dans ton moteur il faut appeler ta normal map avec une fonction de parallax mapping (ou plusieurs fonctions définissant tout un tas de paramètres pour gérer comme il se doit ton parallax ou steep mapping...)
... Et voilà...
Note : Il vaut mieux effectivement partir sur du hight poly, en extraire une normal map, puis repasser le model en low poly et lui réappliquer la normal map...
Note 2 : Et comme je le disais, pour gagner en ressources (car tout cela prend pas mal de temps de calcul), pour bien il y a plein de manips à faire (comme le fait de becker ou de bien régler les paramètres), à voir avec tes graphistes...
Mais bon, si tout ça c'est juste pour une porte, je crois que tu peux te lâcher...

Lapintade
Lapintade
Niveau 30
02 mars 2010 à 23:18:02

En effet, faut voir le mal à la base.

Une porte de 20 000 polygones, c'est pas normal.

Ca ira plus vite de faire comprendre a l'artiste qu'il faut réduire le nombre de poly pour les petits éléments, que toi d'essayer de tout compenser avec des ruses de code (ce que tu n'arrivera jamais à faire).

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment