Bonjour à tous,
Je débute et je fais quelques essais de terrains avec Freeworld3d, Earthsculptor et L3DT...mais j'ai un peu de mal en ce qui concerne les textures
Dans Irredit, pas de soucis pour importer mon terrain en heightmap et ma texture globale du terrain mais par contre je n'ai pas trouvé comment importer les alpha map (je dis "les" car il m'en sort une en échelle de gris par layer c'est normal? je pensais qu'il n'y en avait qu'une avec une couleur par layer)
Autre chose, si j'importe ce même terrain en mesh, est-ce que je peux aussi appliquer des alpha map dessus?
Je vous remercie à l'avance pour votre aide, j'ai fait pas mal de recherche mais j'ai rien trouvé d'intéressant sur ce point
Julien
Hors ligne
t'as mal cherché sur le forum je pense ...
http://irrlicht-fr.org/viewtopic.php?id=1432
http://irrlicht-fr.org/viewtopic.php?id=1356
http://irrlicht-fr.org/viewtopic.php?id=1321
y en a quelques uns de topic comme ceux là ...
enfin peut-être ai-je mal compris ? je réfléchis pas beaucoup ces derniers temps ...
Hors ligne
merci pour ta réponse mais je me suis peut être mal exprimé
je n'ai pas de problème de transparence, j'avais juste quelques questions concernant le chargement d'alpha map pour les textures détailléeq dans Irredit
Hors ligne
uhm .... bon alors à mon souvenir on ne peut pas utiliser d'alpha map avec irredit, du moins avec le terrain, m'enfin je ne l'ai utilisé que quelques minutes ( donc une ancienne version )
mais je sais que sous irrlicht ça ne pose aucun soucis, que ce soit la détail-map, ou la color-map, ou autre chose
Hors ligne
merci pour ta réponse
en fait je voulais utiliser irredit uniquement pour tout ce qui est terrain, décor, bref tout ce qui est statique mais c'est vrai qu'au final, je pense peut être faire tout ça sous blender ou 3ds...(même si ça va faire un très gros mesh ^^)
par contre, j'aimerais quand même texturer ma map avec un terrain éditor (c'est quand même plus pratique...) mais je ne peux pas appliquer la méthode d'alpha map du coup?
Dernière modification par magikus59 (26-08-2010 00:41:48)
Hors ligne
si si tu peux utiliser l'aplha map, mais faudra que tu passes par un éditeur de terrain perso, ou, si tu veux quand même utiliser irredit, tu modifies ta "color map" après: gimp, inkscape ...
edit: le problème c'est pas irrlicht, mais Earthsculptor pour l'alpha sur la "color map" de celui-ci, à moins qu'il y ait une option ?
mais là je peux pas t'aider, je suis sous linux et il ne me semble pas qu'il y ait les source ou un précompilé en x86_64 ....
ps: le coup du gros mesh sous blender pour un terrain, évite ... ça sera tout sauf optimiser, et n'imagine même pas la taille qu'un fichier de 50Mo peut prendre en ram ... beaucoup plus !
Dernière modification par Magun (26-08-2010 00:58:24)
Hors ligne
oui je pense que tu as raison pour le gros mesh ^^
bon du coup je vais utiliser des heithmaps classiques, j'ai un peu de mal pour le moment avec les alpha map
en fait c'est bon, j'arrive à les exporter avec Freeworld mais j'arrive pas encore à les intégrer à irrlicht
EDIT:
voici un exemple en XML de ce que me sort Freeworld, c'est ça en gros que je voudrais integrer à Irrlicht mais je sais pas comment déclarer ces alphamaps
<Freeworld3D Version="2.0"> <Environment> <Viewport Color="128,128,128" Fov="60.000000" NearClip="0.500000" FarClip="10000.000000"/> </Environment> <Terrain Size="257" Step="1.000000"> <Heightmap File="/terrain/heightmap.bmp" Format="24bit BMP" Scale="1.000000"/> </Terrain> <TerrainLayers Count="3"> <TerrainLayer Name="New_Layer" Type="Base Layer"> <Texture File="/terrain/New_Layer.jpg" ScaleU="400.000000" ScaleV="400.000000"/> </TerrainLayer> <TerrainLayer Name="New_Layer1" Type="Alpha Layer" Detail="False"> <Texture File="/terrain/New_Layer1.jpg" ScaleU="20.000000" ScaleV="20.000000"/> <AlphaMap File="/terrain/New_Layer1_alpha.raw" Width="512" Height="512"/> </TerrainLayer> <TerrainLayer Name="New_Layer2" Type="Alpha Layer" Detail="False"> <Texture File="/terrain/New_Layer2.jpg" ScaleU="1.000000" ScaleV="1.000000"/> <AlphaMap File="/terrain/New_Layer2_alpha.raw" Width="512" Height="512"/> </TerrainLayer> </TerrainLayers> </Freeworld3D>
Dernière modification par magikus59 (26-08-2010 02:06:13)
Hors ligne
le fichier xml généré par freeworld 3d n'est pas compatible avec celui que irrlicht charge
au mieux il faut que tu passes par irredit ou que tu le réécrives, mais tu peux toujours utiliser les data en interne ( src )
Dernière modification par Magun (26-08-2010 13:30:47)
Hors ligne
oui oui je sais que ce n'est pas utilisable t'en fais pas, j'ai mis ça dans mon code en me disant "ça marche poooo...)
non en fait j'ai du mal à m'expliquer: j'arrive à créer mon terrain et à mettre la texture principale dessus:
jusque là ça va mais par contre je ne sais pas comment déclarer l'alpha de ma texture "détail" et sa texture associée
je me doute qu'il faut utiliser un truc du genre : >setMaterialType(video::EMT_TRANSPARENT_ALPHA_CHANNEL); mais après....
merci pour ton aide en tout cas, c'est bien sympa
Hors ligne
et bien oui il faut utiliser le flag EMT_TRANSPARENT_ALPHA_CHANNEL, mais l'ordre n'a pas d'importance, que ce soit avant ou après quoi que ce soit ( enfin après l'initialisation mais ça je pense que tu t'en doutes )
tu devrais désactiver le flag EMF_FOG aussi, histoire d'être sûr, je ne sais plus s'il y est par défaut ... je ne crois pas mais bon
sinon pour info le jpg/jpeg ne supporte pas la transparence, il te faut passer par un png/tga/bmp ( mais irrlicht ne supporte pas l'alpha en bmp ( mode: argb 32bit ) il me semble, à voir dans les sources ... )
donc du coup, forcément ton éditeur d'image remplace l'alpha channel par une autre couleur
Hors ligne
merci mais j'avais espéré un petit bout de code pour exemple
car j'ai cherché hier soir et je n'ai vraiment pas réussi (je débute vraiment...pour tout ce qui est des cameras, event etc je peux me débrouiller avec des tutos mais là y'a pas grand chose qui traite ça)
par contre quand tu dis que le jpg ne supporte pas la transparence, tu parles bien de l'alpha? pas de la texture à lui appliquer?
merci encore
Hors ligne
terrain:
selector:
recupération du mesh-buffer:
pickin (dans le main while):
j'ai fait en gros, sinon je te mache vraiment le boulot la uhn ....
Hors ligne
j'en demandais même pas tant, c'est très gentil de ta part, je vais enfin pouvoir avancer (hmmm ou plutôt démarrer mais bon ^^=
merci encore pour ton aide
Hors ligne