[Résolu] Soucis d'export de 3DS Max vers Nifskope
- Daemongorgon
- Moddeur aspirant
- Messages : 18
Soucis d'export de 3DS Max vers Nifskope
Bonjour,
après moult essais, je jette l'éponge !!!
J'ai créé sous 3DSMax un nouveau pont en rampe (tiré du bridgelong01), exporté l'ensemble en .OBJ (peut pas bien faire autrement, il me semble), et importé dans Nifskope après avoir récupéré le fichier du bridgelong01 pour modèle.
Là, impossible d'afficher les textures du pont. J'ai pratiquement tout essayé, rien à faire.
J'ai exporté tout ça quand même !
Dans l'éditeur, je retrouve mon nouveau pont, le mese est ok bien sûr, mais sans textures !
Je pense que ça coince avec Nifskope (soft que je ne connaissais pas, soit dit en passant). Si quelqu'un peut me donner un coup de main en m'expliquant les choses à faire, ou en m'indiquant un tuto (j'en ai déjà cherché et lu pas mal, mais rien qui m'a aidé).
après moult essais, je jette l'éponge !!!
J'ai créé sous 3DSMax un nouveau pont en rampe (tiré du bridgelong01), exporté l'ensemble en .OBJ (peut pas bien faire autrement, il me semble), et importé dans Nifskope après avoir récupéré le fichier du bridgelong01 pour modèle.
Là, impossible d'afficher les textures du pont. J'ai pratiquement tout essayé, rien à faire.
J'ai exporté tout ça quand même !
Dans l'éditeur, je retrouve mon nouveau pont, le mese est ok bien sûr, mais sans textures !
Je pense que ça coince avec Nifskope (soft que je ne connaissais pas, soit dit en passant). Si quelqu'un peut me donner un coup de main en m'expliquant les choses à faire, ou en m'indiquant un tuto (j'en ai déjà cherché et lu pas mal, mais rien qui m'a aidé).
Modifié en dernier par Daemongorgon le 06 déc. 2013, 02:55, modifié 3 fois.
Re: problème de textures apès import de 3dsmax à nifskope
Bonsoir,
As-tu bien configuré Nifskope? C'est nécessaire pour la suite. (Une lecture des réponses de quelques sujets de ce sous-forum et la fonction recherche te seront utiles). Si les textures des meshes ouverts sous Nifskope ne sont pas affichées, c'est que Nifskope est mal configuré (essaie avec des meshes vanilla non modifiés dont les textures sont extraites du bsa).
As-tu un BSlightingshaderproperty (avec un BSshadertextureset associé et des liens vers les textures) dans ton bloc nitrishape sous Nifskope? Si il n'y en a pas, ça vient de là. Car il n'y a dans ce cas aucune texture déclarée pour ton mesh. C'est gênant.
Si tout est là je pense que c'est ton UVmap, à savoir la correspondance entre points de ton modèle et de ta texture qui n'existe tout simplement pas dans ton mesh.
Pour vérifier, sous Nifskope, tu fait un clic droit sur le nitrishape, puis texture\éditer UV.
Si tu n'as pas de projection en éclaté sur une texture ou un message d'erreur, c'est très mauvais signe.
Tu peux ensuite tenter de voir en faisant un clic droit puis texture/export template. Il devrait te proposer une texture vierge avec la projection de ta forme 3D. Cela peut te servira de base pour créer éventuellement créer des textures.
Pour ma part, je travail avec Blender et uniquement en format nif et non pas avec le format obj, qui semble très restrictif quant aux possibilités offertes.
Si tes textures étaient visibles sous 3DSmax, c'est que c'est ton format d'export (obj), qui n'est peut-être pas bon...ou tes réglages d'export (connait pas 3DSmax).
Essaie peut-être de récupérer ce qu'il faut pour travailler en nif sous 3DSmax plutôt qu'en obj (scripts ou plugins d'import dédié).
As-tu bien configuré Nifskope? C'est nécessaire pour la suite. (Une lecture des réponses de quelques sujets de ce sous-forum et la fonction recherche te seront utiles). Si les textures des meshes ouverts sous Nifskope ne sont pas affichées, c'est que Nifskope est mal configuré (essaie avec des meshes vanilla non modifiés dont les textures sont extraites du bsa).
As-tu un BSlightingshaderproperty (avec un BSshadertextureset associé et des liens vers les textures) dans ton bloc nitrishape sous Nifskope? Si il n'y en a pas, ça vient de là. Car il n'y a dans ce cas aucune texture déclarée pour ton mesh. C'est gênant.
Si tout est là je pense que c'est ton UVmap, à savoir la correspondance entre points de ton modèle et de ta texture qui n'existe tout simplement pas dans ton mesh.
Pour vérifier, sous Nifskope, tu fait un clic droit sur le nitrishape, puis texture\éditer UV.
Si tu n'as pas de projection en éclaté sur une texture ou un message d'erreur, c'est très mauvais signe.
Tu peux ensuite tenter de voir en faisant un clic droit puis texture/export template. Il devrait te proposer une texture vierge avec la projection de ta forme 3D. Cela peut te servira de base pour créer éventuellement créer des textures.
Pour ma part, je travail avec Blender et uniquement en format nif et non pas avec le format obj, qui semble très restrictif quant aux possibilités offertes.
Si tes textures étaient visibles sous 3DSmax, c'est que c'est ton format d'export (obj), qui n'est peut-être pas bon...ou tes réglages d'export (connait pas 3DSmax).
Essaie peut-être de récupérer ce qu'il faut pour travailler en nif sous 3DSmax plutôt qu'en obj (scripts ou plugins d'import dédié).
Hors-sujet
En y étant, déplacement du sujet dans la section "modèles et textures, endroit où le problème aurait dû être posté.
- Daemongorgon
- Moddeur aspirant
- Messages : 18
Re: problème de textures apès import de 3dsmax à nifskope
Je pense que le problème vient bien de l'export, car les objet initiaux (tel que bridgelong01) apparaissent avec leurs textures.
Quand j'importe un objet, j'ai :
0 NiNode
1 NitriShape
etc...
10 NitriShape
11 NiMaterialProperty
12 NiTriShapeData
Je n'ai donc pas de BSlightingshaderproperty.
Mais j'ai essayé de triturer l'ensemble en récupérant les "pièces manquantes" sur le bridge original, ... sans résultats !
Pour être sûr, j'ai aussi essayé de réimporter l'objet (format .OBJ) dans max, et j'ai les textures !!!!
Dans NifSkope, en voulant éditer UV, j'ai le message suivant : "Impossible de charger les données de texture pour l'éditeur UV."
Le problème viendrait normalement de l'import de Nifskope des fichiers OBJ. (j'ai la version 1.1.1 rev dae77fa)
Quand j'importe un objet, j'ai :
0 NiNode
1 NitriShape
etc...
10 NitriShape
11 NiMaterialProperty
12 NiTriShapeData
Je n'ai donc pas de BSlightingshaderproperty.
Mais j'ai essayé de triturer l'ensemble en récupérant les "pièces manquantes" sur le bridge original, ... sans résultats !
Pour être sûr, j'ai aussi essayé de réimporter l'objet (format .OBJ) dans max, et j'ai les textures !!!!
Dans NifSkope, en voulant éditer UV, j'ai le message suivant : "Impossible de charger les données de texture pour l'éditeur UV."
Le problème viendrait normalement de l'import de Nifskope des fichiers OBJ. (j'ai la version 1.1.1 rev dae77fa)
Re: problème de textures apès import de 3dsmax à nifskope
Ton problème ne vient pas de Nifskope mais du fait que tu n'as pas de BSlightingshaderproperty attaché à ton Nitrishape. Postes un lien mediafire de ton mesh défectueux et de celui d'origine.
Ce sera plus facile en ayant les fichiers sous les yeux.
Ce sera plus facile en ayant les fichiers sous les yeux.
- Daemongorgon
- Moddeur aspirant
- Messages : 18
Re: problème de textures apès import de 3dsmax à nifskope
je mets les deux nif et l' obj.
le nif original : http://www.mediafire.com/?pjdbdicv3v58a26
le nif de l'objet modifié : http://www.mediafire.com/?0p05p93ttcx0asw
et le fichier obj : http://www.mediafire.com/?w3dqh4eilpd2vf3
Pour l'objet modifié, le nif est le résultat brut de l'import obj.
Peux tu me donner les versions de Blender et du plugin que tu utilises ? Merci.
le nif original : http://www.mediafire.com/?pjdbdicv3v58a26
le nif de l'objet modifié : http://www.mediafire.com/?0p05p93ttcx0asw
et le fichier obj : http://www.mediafire.com/?w3dqh4eilpd2vf3
Pour l'objet modifié, le nif est le résultat brut de l'import obj.
Peux tu me donner les versions de Blender et du plugin que tu utilises ? Merci.
Re: problème de textures apès import de 3dsmax à nifskope
Désolé de te dire ça, mais il va sans doute falloir recommencer...du début.
Ton nif d'objet modifié n'est déjà pas bon car n'ayant pas la version correspondant à Skyrim (ligne header).
En important l'obj dans le mesh original, on s'aperçoit qu'il y a bien une UVmap sur les blocs (après avoir mis les BSshaderlightingproperty en propriété des Nitrishapes importés et avoir retiré les lignes material). Celle du premier Nitrishape colle à l'original donc la texture colle bien.
Concernant le deuxième Nitrishape venu de l'obj, l'UVmap ne colle plus avec les élèments d'origine d'où les textures plaquées n'importe comment (j'ai essayé avec tous les blocs BSshaderlightingproperty du nif original). Donc c'est moche. De plus, il manque énormément d'éléments au pont contenu dans l'obj. A part si on est dessous et du bon côté, il sera invisible par endroit. Il manque des formes (présentes dans le mesh d'origine (il suffit de compter le nombre de Nitrishapes).
Par exemple : si on veut marcher dessus, on marchera sur du vide... A condition que tu pense à refaire le bloc de collision car celui-ci correspond actuellement à l'ancien pont...
Concernant Blender et les scripts, tout est là :
http://niftools.sourceforge.net/wiki/Blender
Ton nif d'objet modifié n'est déjà pas bon car n'ayant pas la version correspondant à Skyrim (ligne header).
En important l'obj dans le mesh original, on s'aperçoit qu'il y a bien une UVmap sur les blocs (après avoir mis les BSshaderlightingproperty en propriété des Nitrishapes importés et avoir retiré les lignes material). Celle du premier Nitrishape colle à l'original donc la texture colle bien.
Concernant le deuxième Nitrishape venu de l'obj, l'UVmap ne colle plus avec les élèments d'origine d'où les textures plaquées n'importe comment (j'ai essayé avec tous les blocs BSshaderlightingproperty du nif original). Donc c'est moche. De plus, il manque énormément d'éléments au pont contenu dans l'obj. A part si on est dessous et du bon côté, il sera invisible par endroit. Il manque des formes (présentes dans le mesh d'origine (il suffit de compter le nombre de Nitrishapes).
Par exemple : si on veut marcher dessus, on marchera sur du vide... A condition que tu pense à refaire le bloc de collision car celui-ci correspond actuellement à l'ancien pont...
Concernant Blender et les scripts, tout est là :
http://niftools.sourceforge.net/wiki/Blender
Re: problème de textures apès import de 3dsmax à nifskope
Daemongorgon, as-tu tout simplement essayé le plugin Niftools pour 3ds Max ? Il permet directement d'exporter ton mesh en format .nif plutôt que de passer par un .obj (Gerauld a raison de dire que ça limite les possibilités, ça va te foirer ton mesh à tous les coups).
Avec le plugin, les textures sont OK la plupart du temps, mais parfois il y a de légers changements dans le BSLightningShaderProperty ; l'idéal est de copier la branche du mesh original et de la coller sur le nouveau mesh pour avoir exactement les mêmes réglages.
Il existe plusieurs tutos, dont celui-ci sur le Nexus : >ici<.
Additionné à NifUtilits pour les collisions, ça marche parfaitement (enfin, il y a toujours des exceptions).
Avec le plugin, les textures sont OK la plupart du temps, mais parfois il y a de légers changements dans le BSLightningShaderProperty ; l'idéal est de copier la branche du mesh original et de la coller sur le nouveau mesh pour avoir exactement les mêmes réglages.
Il existe plusieurs tutos, dont celui-ci sur le Nexus : >ici<.
Additionné à NifUtilits pour les collisions, ça marche parfaitement (enfin, il y a toujours des exceptions).

- Daemongorgon
- Moddeur aspirant
- Messages : 18
Re: Problème de textures après import de 3ds Max à Nifskope
Gerauld,
tu me dis que la version du nif n'est pas la bonne, peux tu approfondir, car je l'ai créé depuis Nifskope (version 20.2.0.7).
Pour les UVMap, j'ai ouvert le OBJ et il y a bien les VT, donc les vertex Textures.
J'ai vérifié, il y a les V(ertex), VN(ormal), VT(exture) et F(ace) ainsi que le mtllib et les usemtl.
Pour les éléments manquants, je sais, mais je n'ai modelé que deux des cinq sous-éléments, avant de tester l'ensemble (ce n'est pas la peine de perdre du temps si je n'arrive pas à exporter tout ça !)
Je voulais juste voir pour les deux éléments comment sont récupérées les textures (dans le :5, le mapping est cubique, et le :3, le mapping est planaire) pour voir quel est le meilleur, voir, celui qui est pris en compte !
Oaristys,
je pense que je vais suivre ton conseil en installant le plugin, mais j'ai vu qu'il y avait pas mal de problèmes, c'est pour ça que je m'était orienté plutôt sur l'import/export de OBJ car le OBJ et le MTL sont tout simplement des fichiers texte, ça permet de voir ce qui se passe.
Allez, j'y retourne...
tu me dis que la version du nif n'est pas la bonne, peux tu approfondir, car je l'ai créé depuis Nifskope (version 20.2.0.7).
Pour les UVMap, j'ai ouvert le OBJ et il y a bien les VT, donc les vertex Textures.
J'ai vérifié, il y a les V(ertex), VN(ormal), VT(exture) et F(ace) ainsi que le mtllib et les usemtl.
Pour les éléments manquants, je sais, mais je n'ai modelé que deux des cinq sous-éléments, avant de tester l'ensemble (ce n'est pas la peine de perdre du temps si je n'arrive pas à exporter tout ça !)
Je voulais juste voir pour les deux éléments comment sont récupérées les textures (dans le :5, le mapping est cubique, et le :3, le mapping est planaire) pour voir quel est le meilleur, voir, celui qui est pris en compte !
Oaristys,
je pense que je vais suivre ton conseil en installant le plugin, mais j'ai vu qu'il y avait pas mal de problèmes, c'est pour ça que je m'était orienté plutôt sur l'import/export de OBJ car le OBJ et le MTL sont tout simplement des fichiers texte, ça permet de voir ce qui se passe.
Allez, j'y retourne...
Re: Problème de textures après import de 3ds Max à Nifskope
Concernant la version, avoir 20.2.0.7, ça ne suffit pas. Il faut avoir, en plus, dans le header : user version = 12 et user version 2 = 83.
Pour montrer leur importance, il suffit de remplacer ces nombres par 11 et 34 (ce que l'on fait avant de passer par Blender par exemple), de sauvegarder et de recharger le mesh. On voit que les BSshaderlightingproperty ne sont plus reconnus. Les UVmaps sont toujours là tout comme le maillage riggé s'il existe...
C'est pareil dans l'autre sens avec les blocs version 11-34 non reconnus par la 12-83.
La version d'un nif est la combinaison des valeurs du header.
Concernant ton obj, il y avait bien deux UVmap (1 par objet) mais la deuxième n'avait aucun rapport avec aucune texture du mesh d'origine. Il y a donc eu altération de cette UVmap (ou grosse, très grosse déformation du mesh sous 3DSmax). L'UVmap est une carte dessinée sur la texture représentant une projection du mesh. Elle sert à plaqué la texture. En cas de déformation importante, des surfaces de texture assez petites peuvent se retrouvées projetées sur une partie d'un mesh qui a été trop étiré, ce qui sera très moche.
Lors de certaines manipulations, il arrive qu'il y ait mélange des correspondances entre sommets de la formes et les points de ton UVmap, donc de la texture, c'est encore plus moche.
Ce que j'ai vu sur ton deuxième nitrishape ressemblait un peu à la deuxième solution. Ayant effacé le mesh reconstitué à la va-vite à partir du mesh d'origine et de ton export obj, je ne pourrais te dire lequel était en défaut. Il me semble que c'était celui qui représente le haut des limites gauches et droites de ton pont ainsi que la partie extérieure du dessous des arcades qui ne collait pas niveau texture...
Le plus simple pour toi serait d'utiliser les scripts d'import pour 3DSmax. Cela t'évitera sans doute les manips à faire à l'import et à l'export de Blender (même si ça va très vite avec un peu de pratique...).
Surtout que Blender, même si on s'habitue, n'est pas l'outil le plus puissant et le plus convivial qui soit.
Pour montrer leur importance, il suffit de remplacer ces nombres par 11 et 34 (ce que l'on fait avant de passer par Blender par exemple), de sauvegarder et de recharger le mesh. On voit que les BSshaderlightingproperty ne sont plus reconnus. Les UVmaps sont toujours là tout comme le maillage riggé s'il existe...
C'est pareil dans l'autre sens avec les blocs version 11-34 non reconnus par la 12-83.
La version d'un nif est la combinaison des valeurs du header.
Concernant ton obj, il y avait bien deux UVmap (1 par objet) mais la deuxième n'avait aucun rapport avec aucune texture du mesh d'origine. Il y a donc eu altération de cette UVmap (ou grosse, très grosse déformation du mesh sous 3DSmax). L'UVmap est une carte dessinée sur la texture représentant une projection du mesh. Elle sert à plaqué la texture. En cas de déformation importante, des surfaces de texture assez petites peuvent se retrouvées projetées sur une partie d'un mesh qui a été trop étiré, ce qui sera très moche.
Lors de certaines manipulations, il arrive qu'il y ait mélange des correspondances entre sommets de la formes et les points de ton UVmap, donc de la texture, c'est encore plus moche.
Ce que j'ai vu sur ton deuxième nitrishape ressemblait un peu à la deuxième solution. Ayant effacé le mesh reconstitué à la va-vite à partir du mesh d'origine et de ton export obj, je ne pourrais te dire lequel était en défaut. Il me semble que c'était celui qui représente le haut des limites gauches et droites de ton pont ainsi que la partie extérieure du dessous des arcades qui ne collait pas niveau texture...
Le plus simple pour toi serait d'utiliser les scripts d'import pour 3DSmax. Cela t'évitera sans doute les manips à faire à l'import et à l'export de Blender (même si ça va très vite avec un peu de pratique...).
Surtout que Blender, même si on s'habitue, n'est pas l'outil le plus puissant et le plus convivial qui soit.
- Daemongorgon
- Moddeur aspirant
- Messages : 18
Re: Problème de textures après import de 3ds Max à Nifskope
je viens d'installer le plugin, et fais quelques manips vite fait. En effet, ça va déjà beaucoup mieux pour les affichage entre Max et Nifskope.
Je vais approfondir tout ça, et je vous tiens au courant.
Mais là, je vais me coucher, car debout depuis 4h00, ça commence à piquer les yeux !
Merci encore pour toutes ces précisions.
Je vais approfondir tout ça, et je vous tiens au courant.
Mais là, je vais me coucher, car debout depuis 4h00, ça commence à piquer les yeux !
Merci encore pour toutes ces précisions.