Pages: 1 2
Je peux te fournir un cube en UV 1.0 format 3DS si tu veux.
Hors ligne
oui volontier, je ne sais pas ce que veut dire uv 1.0, mais j'espere que ça va résoudre mon problème merci tmyke.
Hors ligne
J'ai mis une archive (cube.zip) sur le srveur, dans le repertoire files.
Tu as deux cubes, d'une taille de 1, le premier à un UVMap de 1 (en d'autre termes la texture se répète une fois sur chaque face), et le second un UVMap de 2 (dans ce cas la texture se répète 4 fois par face).
Hors ligne
Merci, c'est cool, malheureusement j'ai toujours le même problème lorsque je change le texturemapping sur un cube, cela agit sur tous les autres cubes chargés à partir du fichier cube1.3ds
Hors ligne
bein je crée des ImeshSceneNode à partir du même modèle:
Voilà, je pense qu'il doit y avoir des alternatives, là j'ai fait au plus simple.
merci pour ton aide.
Hors ligne
bein j'ai peur que ça gaspille des ressources, non ?
ne pourrait-on pas déclarer des coordonnée de textures pour chaque cube sans toucher au reste ?
Hors ligne
Ben niveau ressource, tu as raison, même si un cube ne représente pas non plus d'énorme quantité de données.
Pour ce qui est des coordonnées de texture, elles sont liées au meshbuffer, donc si tu les change, cela se répercutera sur
tous les autres cube. A moins que quelqu'un ai une combine pour contourner ce problème...
Hors ligne
ok merci, bon il me reste plus qu'a trouver une combine
Hors ligne
Salut tmyke, j'ai suivi ta procédure et non seulement ça résoud mon problème, mais en plus il est possible que je ne gaspille pas de ressources puisques il y a plusieurs façons de copier un IMesh.
cependant je ne comprend pas tout à fait ce qui se passe mais tu pourra sans doute m'éclairer.
voici ce que je trouvé dans la classe IMeshManipulator :
Voilà j'ai choisi au pif createMeshWith2TCoords, cependant je ne comprend pas ce qui se passe en mémoire quand je fait
IMesh* cube1= directeurDeScene->getMeshManipulator()->createMeshWith2TCoords(modele->getMesh(0));
est-ce que il y toujours quelques pointeurs vers le modele ? ou alors ça alloue un nouvel espace pour stocker toutes les propopriété du nouvel IMesh ?
enfin en tout cas merci, ça faisait un moment que je bloquais quand même
Aussinon pour en revenir à mon problème de départ pour faire répéter la texture au lieu qu'elle s'etire lors d'un scale, j'ai modifié encore une fois au pif la fonction makeplanartexturemapping
pour qu'elle prenne en paramètre le scale de mes mesh. mais j'ai un doute.
Voilà, c'est tellement couillon que je me dit qu'il doit y avoir une raison de cette absence de fonctionnalité, et donc j'ai peur de faire des bêtises. qu'en penses-tu ?
Hors ligne
Il existe sous Irrlicht 3 types des vertex différents. Pour résumer tu as les meshbuffer constitués
de vertices simples (1 coordonnée de texture), de vertices à double coordonnées de textures et les
vertices avec les information de tangente et binormales.
La doc décrit cela mieu que moins
Dans ton cas, un createMeshWelded() devrait suffire.
est-ce que il y toujours quelques pointeurs vers le modele ? ou alors ça alloue un nouvel espace pour stocker toutes les propopriété du nouvel IMesh ?
deuxième solution...
Aussinon pour en revenir à mon problème de départ pour faire répéter la texture au lieu qu'elle s'etire lors d'un scale, j'ai modifié encore une fois au pif wink la fonction makeplanartexturemapping
pour qu'elle prenne en paramètre le scale de mes mesh. mais j'ai un doute.
Je dirais que cela doit le faire, car en fait tu te contente de moduler la donnée 'resolution' en fonction des valeurs des axes
qui tu fournis.
Hors ligne
merci pour les explications en effet welded fait l'affaire, je vais donc me basé sur ça.
Hors ligne
Pages: 1 2
Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
---|---|---|---|---|
Corrections |
|
xhtml 1.0 css 2.1 Propulsé par FluxBB Traduit par FluxBB.fr |
882 membres 1429 sujets 11119 messages |
Dernier membre inscrit: LiseBuisson96 70 invités en ligne Aucun membre connecté RSS Feed |