Page 1 sur 1

Convertir en DDS

Publié : 23 sept. 2011, 17:06
par Acktar
Bonjour.

Voulant modifer une texture DDS, je l'ai convertie en bmp, fais mon travail dessus et reconvertis en DDS, alors je me suis dit peut être faut t-il indéxé, mais la erreur de transformation.
Résultat, ma modif a été prise en compte mais.... j'ai le fond noir des objet derrière ceux ci.

Question y a t-il une option ou autre à activer?

j'utilise DDS Converter 2.1. et gimp.

Re: Convertir en DDS

Publié : 23 sept. 2011, 17:30
par Acktar
Tester avec xn-view, même effet

Re: Convertir en DDS

Publié : 23 sept. 2011, 18:18
par Acktar
Trouvé, c'est mon DDS converter qui a corrompus le fichier, avec xn-view nickel :)
Donc voici ce qui est obtenus:
Image

Re: Convertir en DDS

Publié : 23 sept. 2011, 22:02
par TonyFlow
Comme j'ai joué un peu avec les fichiers .dds dernièrement (format graphique dédié aux textures), je profite du sujet pour apporter quelques précisions...
  • Il y a plusieurs types de fichiers dds, correspondant à différents besoins de textures : simple avec ou sans transparence ; avec mipmaps (déclinaisons en différentes tailles) ; cube mapping...
  • Le format contient de nombreuses options, notament pour choisir le mode de compression utilisé (DXT1, DXT3, DXT5 cf http://en.wikipedia.org/wiki/S3_Texture_Compression)
  • Attention tous les modes de compressions proposés sont avec perte ! Même genre qu'avec le jpeg : à chaque fois que vous enregistrez votre fichier il sera subtilement altéré... Donc conservez toujours vos fichiers sources dans un autre format (png, bmp, xcf=>gimp, psd=>photoshop, ...). Travaillez toujours à partir de ces sources, et n'utilisez le format dds que pour en faire des exports finaux.
  • De ce que j'ai vu, EL utilise des dds en DXT1 ou DXT5 quand il faut de la transparence. Apparement toujours avec des mipmaps (j'avais un doute mais j'en ai pas retrouvé sans mipmaps)

Du côté des outils pour manipuler des fichiers dds, j'ai gardé en bookmark cette page qui présente un tout d'horizon : http://cs.elderscrolls.com/constwiki/in ... /DDS_Tools

Pour ma part j'ai essayé XnView (surtout XnViewMP : nouvelle version plus sympa, surtout sous linux, mais encore en dev et instable). Très pratique pour avoir un visualiseur qui nous montre des vignettes pour les dds d'un dossier !

Par contre je n'ai pas été convaincu par XnViewMP pour les conversions vers le format dds : aucune option dispo pour généré dds :/ Du coup je récupère des dds en dxt1 et sans mipmaps... si je veux du dxt5 et/ou des mipmaps j'ai pas trouvé comment faire.



Alors pour éditer et enregistrer des dds, j'utilise le plugin pour gimp (http://code.google.com/p/gimp-dds/). Ca marche plutot bien : ça gère bien les imports et propose pas mal d'options à l'enregistrement.

Mais j'ai encore un soucis : beaucoup de textures du jeu ont des tailles bizarres qui ne sont pas des puissances de 2 (comme 32x32, 128x128, 256x256, 512x512...). Les cartes graphiques aiment bien travailler avec des dimensions de ce type, ya des algos optimisés etc... Du coup devoir travailler avec une texture qui fait 158x76 c'est souvent pas pratique du tout :/
Mon problème c'est que le plugin gimp me refuse la génération des mipmaps quand l'image n'est pas en puissance de 2. Car normalement avec une image en 256x256, automatiquement des mipmaps seront générés pour avoir la textures en 128x128, 64x64.... jusqu'à 4x4.

Du coup, pour toutes les textures bmp du jeu qui ont des tailles folkloriques : je n'arrive pas à les convertir en dds. Ou plus précisément j'en fais des fichiers dds que le client n'aime pas ><'
Alors ça reste possible puisque le client US utilise des fichiers dds avec tailles bizarres + mipmaps qui s'affichent bien dans le client. Mais je n'ai malheureusement pas trouvé comment en faire par moi-même sous linux.

Re: Convertir en DDS

Publié : 23 sept. 2011, 23:03
par Etory
Acktar a écrit :Bonjour.

Voulant modifer une texture DDS, je l'ai convertie en bmp, fais mon travail dessus et reconvertis en DDS, alors je me suis dit peut être faut t-il indéxé, mais la erreur de transformation.
Résultat, ma modif a été prise en compte mais.... j'ai le fond noir des objet derrière ceux ci.

Question y a t-il une option ou autre à activer?

j'utilise DDS Converter 2.1. et gimp.
attention le format BMP ne gère pas les transparences. si le dds avait un fond transparent alors tu le perds en passant en BMP. Il est préférable de transformer en PNG si tu veux le travailler dans un autre logiciel de dessin.

il faut faire également au format de compression utilisé car le client ne supporte (ou ne supportait) pas tous les formats de compression du format DDS. Si je me souviens bien j'ai toujours utilisé la compression BC3/DXT5 et "generate mipmap" quand j'ai convertis toutes les textures des objets de carte du jeu avec Gimp

Re: Convertir en DDS

Publié : 24 sept. 2011, 01:00
par Acktar
ha c'est ca que je cherchais BTX5 et mipmap mici :)

Re: Convertir en DDS

Publié : 24 sept. 2011, 12:32
par Acktar
J'ai fais tout comme t'a dit, du coup, pas de perte de poid (et de qualité) mais ensuite vient un petit souci que je ne comprend pas.

Image
Ancienne version
Image
Nouvelle version

Pourtant sur l'item4 pas de souci:
Image

Mon fichier DDS: http://j3b5ue.megadl.fr/

Pour le filet j'ai vérifier, pas de souci, pas de dessous noir ou beige (durant mes essais j'ai eu les deux :P)

Re: Convertir en DDS

Publié : 24 sept. 2011, 15:33
par Mageinvok
l'export par DXT1 :

- le fichier contiendra une seul info d'alpha. C'est à dire qu'il affichera le blanc, et n'affichera pas le noir. Le gris n'est pas pris en compte. Impossible donc d'avoir une transparence translucide. Utilise parfois quand on ne veux pas de dégradé dans la transparence parce que le fichier sera plus léger. que le DXT5

L'export par DXT5 :

- alpha interpréter par la gamme de gris complète. Soit 256 degré d'opacité possible. Offre donc le meilleur résultat, mais est un peu plus lourd que les DXT1. Un passage obligé quand il s'agit de dégradé.

l’export en DXT3 :

- à mis chemin entre DXT1 et DXT5. Fonctionne très bien sur le client LE, mais le résultat ne semble jamais réussit, même si une seule couleur utiliser pour l'alpha. Il reste toujours des bavures quelques part.
Deux autres exports d'alpha que j'ai testé fonctionne super bien, mais que pour l'alpha. Autrement dit, vous perdez la texture, totalement inutile donc, et Un autre fait carrément crashé le client. La règle a retenir donc :

1 couleur d'alpha = DXT1
plus d'une couleur d'alpha = DXT5


Pour ce qui est de tes fichier Acktar :
- pour les livres, il n'y a aucun alpha, l'erreur vient tout simplement du fait que l'image était décalé de quelques pixels corrié ici
- pour les dépêches natives, l'alpha est dégradé. Exprtation par DXT5 donc, par contre, puisque c'est dégradé, il ne faut pas retiré la couleur pour la remplacer par du noir. J'imagine que ça vient de tes tests pour trouver l'erreur :) couleur rmis, et bien exporté ici : corrié ici

J'espère que ce sera bon comme ça. Si tu as d'autre question je reste disponible.

Re: Convertir en DDS

Publié : 24 sept. 2011, 19:09
par Acktar
Mici :)

Re: Convertir en DDS

Publié : 24 sept. 2011, 19:23
par Acktar
En fait, aprés test des deux fichier, je me suis apercu que tu a du te trompé pour la depeche native et me redonner le DDS original :)

Pour les livres le souci persiste.
Image

Re: Convertir en DDS

Publié : 25 sept. 2011, 04:26
par Mageinvok
corrigé et disponible sur les deux liens ci-haut. Finalement, tu as testé les export, ça fonctionne ou pas ?

Re: Convertir en DDS

Publié : 25 sept. 2011, 20:11
par Acktar
Nickel t'es deux liens :)

Pour essayé oui, les fichier que je t'ai envoyé etais en DXT5 avec mipmap, mais vu le resultat... j'dois pas etre doué :D

Sinon j'avais essayé les autre DXT, ca passais en 3 mais avec perte (ca passait de 85ko a 66)

Re: Convertir en DDS

Publié : 25 sept. 2011, 22:38
par Mageinvok
Je crois que cette perte du DXT3 s'explique ainsi : la couche alpha n'a que deux couleur blanc et noir et non un dégradé de gris comme pour le DXT5. Pas focéement mauvais quand le résultat souhaité est le le bon ;)