#1 

07-05-2009 20:08:09

hsn87
Membres
Date d'inscription:
Messages: 4
IP: 41.188.22.74
Courriel

Est-que vous pourriez m'indiquer s'il y a un code sous Irrlicht pour gérer les events qui se chargent de changer la texture d'un objet(ex : couleur d'une voiture, customisation d'un personnage en plein rendu).
En bref un code pour manipuler la variation de texture d'un objet.
Mon but est en fait de minimiser le nombre de cartes à modeliser c-à-d je ne veux pas avoir 32 modèles 3d de cartes à modeliser, ne varier que les textures d'un nombre optimal de cartes éviterait une perte de temps big_smile.


Hors ligne


#2 

07-05-2009 20:23:38

tmyke
Administrateurs
Avatar de tmyke
Date d'inscription:
Messages: 1025
IP: 90.56.126.87
Courriel

Ben en fait, c'est pas trop compliqué. Si tu as une forme de base, représentant la forme géométrique de tes cartes, il te suffis de changer la texture avec une texture
préalablement chargé, avec une instruction comme 'setTexture( level, ITexture). C'est tout. Pas vraiment besoin des shaders pour cela d'ailleurs.


Force et sagesse...

Hors ligne


#3 

08-05-2009 19:30:58

hsn87
Membres
Date d'inscription:
Messages: 4
IP: 41.188.21.114
Courriel

Merci pour ta réponse tmyke! Je vais essayer cela et je vous en passerais le resultat! Je croyais que l'on avait besoin des shaders pour varier la texture d'un objet, mais je me suis trompé alors. Parcontre je ne comprend pas très bien le fonctionnement du paramètre 'level' de la methode 'settexture(,)'. Pourrais-tu m'y éclaircir un peu smile. Mon autre problème c'est que je n'arrive pas à charger une scène 3DS avec plusieurs texture(.bmp): cela est peut-être venue du fait que je ne manipule pas très bien la methode 'settexture(,)' !?!?


Hors ligne


#4 

09-05-2009 14:35:06

tmyke
Administrateurs
Avatar de tmyke
Date d'inscription:
Messages: 1025
IP: 90.56.149.238
Courriel

Tu n'as rien a faire de spéciale pour charger un modèle 3DS avec plusieurs textures.
un 'scenemanager->getMesh("nom.3ds");' suffit à lui tout seul.

Une fois chargé ton modèle (d'ailleurs regarde l'exemple 08-SpecialFX' du package Irrlicht), tu peux récupérer les
material via ce genre de code:

for(int i=0; i< node->getMaterialCount(); i++)
    SMaterial *mat = &node->getMaterial(i);

et pour chaque material de tes éléments, tu peux changer à loisir les textures associés: mat->setTexture(layer, texture);
Le paramètre layer est le canal utilisé, souvent 0, mais dans le cas de multitexturing sur une surface, cela peux prendre
une valeur supérieur wink


Force et sagesse...

Hors ligne


#5 

24-05-2009 16:09:51

hsn87
Membres
Date d'inscription:
Messages: 4
IP: 41.188.14.182
Courriel

Mrci pour vos réponses! Dsl pour 7 long2 absence car j'étais pas mal occupé cet an ci! le pbm est résolu auparavant!


Hors ligne


#6 

25-05-2009 16:22:33

Copland
Modérateurs
Date d'inscription:
Messages: 657
IP: 92.136.200.109
Courriel  Site web

A l'avenir, merci de répondre en toute lettre !
Si tout le monde se met à écrire de cette manière le forum sera illisible, puis je trouve ça extra mal poli...


Config : I5 2400, ATI HD6870 1Go DDR5, 4Go DDR3.
Single Boot : Windows Seven.

Hors ligne


#7 

27-05-2009 17:52:45

hsn87
Membres
Date d'inscription:
Messages: 4
IP: 41.188.21.3
Courriel

Réponse à Copland >>Je vais essayer d'enchaîner CLAIREMENT mes phrases à la prochaine discussion! Désolé si ca t'a vraiement influencé! Au revoir messieur Copland! big_smile


Hors ligne


#8 

27-05-2009 19:00:28

tmyke
Administrateurs
Avatar de tmyke
Date d'inscription:
Messages: 1025
IP: 92.130.9.249
Courriel

Écrire clairement est un effort minimum à faire, par respect pour tout ceux qui vont te lire. Même si tu es pressé et que tu
souhaite répondre rapidement, il ne faut pas céder à la tentation du langage SMS ou abrégé.
Copland a donc parfaitement eu raison de te le faire remarquer. Tes derniers mots à son égard sont donc déplacés et mal venu.


Force et sagesse...

Hors ligne


Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
172 invités en ligne
membre en ligne: -
RSS Feed