Conseil optimisation mod d’arbres

Tout ce qui tourne autour de Skyrim Special Edition mais qui n'est pas lié aux traductions de la Confrérie.
Avatar du membre
Remrem
Traducteur chevronné
Traducteur chevronné
Messages : 1411

Conseil optimisation mod d’arbres

Message par Remrem »

Salut tout le monde. J’aurais besoin de quelques conseils de moddeur expérimenté concernant un mod d’arbres que j’ai créé récemment similaire à Skyrim 3D Trees, mais encore plus complexe au niveau des polygones (ajout de racines, d’arbustes et de fleurs, le tout à même la meshe). Par exemple le TreePineForest01.nif se compose d’un arbre complexe ressemblant au vanilla mais avec aiguilles 3D, il est entouré d’arbustes et possède un arbre plus petit à côté de lui. J’ai fait cela pour tous. Alors bien sûr j’ai perdu pas mal de FPS vu le nombre de polygones ajoutés, mais les forêts sont tellement réalistes maintenant que je ne veux plus faire machine arrière. J’ai donc encore essayé d’optimiser mon jeu en réduisant la distance d’affichage des ombres et leur résolution et en réduisant toutes mes textures à 2K avec Optimizer Textures. Cependant je voulais vous poser une question concernant l’optimisation via le mod directement. Les meshes des branches sont composés de NiTriShape reprenant la texture du tronc (ce qui est logique vous allez me dire). On peux facilement compter entre 6 à 16 NiTriShape de branches/racines ajoutées pour chaque arbre. Mon idée serait donc de créer une seconde texture pour les branches similaire à celle du tronc mais nommée différemment, dont la résolution serait réduite au moins de moitié (1024 ou même 512) pour grapiller des FPS vu que les détails sur les branches ne sont quasiment pas visibles. Pensez-vous que cette technique pourrait réduire l’impact sur les FPS significativement ?

Merci.
Avatar du membre
noone
Moddeur aspirant
Moddeur aspirant
Messages : 1031
Contact :

Re: Conseil optimisation mod d’arbres

Message par noone »

ça parait logique pourtant c'est pas si évident.A priori je dirai Non mais je ne suis pas expert en la matière,ça mérite de fouiner j'approfondirai...
Lors de grosses scènes de rendu les modeleurs on un mot d'ordre pour optimiser "less draw call are better"
16 NiTriShape ,16 objets ,16 slot ouvert en mémoire par par occurence d'arbre même si les textures étaient plus légères je dirai que ça génère plus de données et de calculs donc chute de FPS
En réalité ce jeu à déjà des optimisations prévu c'est l'uvmapping les mipmap et le support de compression DTX.
Si tu combines tes meshes (en une seule voir 2 branches NiTriShape, une pour les troncs l'autre pour les branches ) et que tu arrive à leur assigné qu'une seule texture (un seul matériel ) même 4K ça devrait être vraiment plus léger.
La texture doit etre duement compressé la plus légère des compression etant Dxt1 (voir DXT1 crunched) ,Normalement comme je me l'imagine tu ne devrait pas avoir besoin de channel alpha.Ensuite généré des mipmap en triangle ,le mipmap sert dans l'objet 3D à remplir les plus petit triangle si la texture contient des mipmaps et qu'ils suffisent à remplir une surface c'est eux qui sont utilisé (en théorie).

Tu pourras comparer le résultat par toi même en regardant/monitor (y a un mot pour ça en français???) nifscope.
Tu load ton modèles 16 branches dans nifscope , branches tu regarde la charge en mémoire avec un soft avancé de process monitor ,la rapidité de génération (important aussi less draw call are better surtout là ) puis tu regardes un autre modèle monoblock avec une seule branche nitrishape et un seul matériel (ou moins de branche nitrishape et moins de matériels) et tu compares ^^.

La bonne idée je pense c'est de combiné les meshes et utilisé le moins de matériel (texture) possible je pense qu'il vaut mieux une énorme texture qui contient tous le mappage que pleins de petites.Enfin l'avis de quelqu'un de plus calé serait appréciable.

envois le ton sapin que j'essai de l'optimiser
Image
Si vous voulez mon aide commencez par utiliser mon generateur de BBCODE
Apprendre à utiliser le générateur
Avatar du membre
Lysandre
Traducteur en herbe | Moddeur en herbe
Traducteur en herbe | Moddeur en herbe
Messages : 1289

Re: Conseil optimisation mod d’arbres

Message par Lysandre »

C'est génial ce que tu fait RemRem, je te souhaite bon courage de tout coeur !
Je n'ai de maitre que moi même.
Avatar du membre
Remrem
Traducteur chevronné
Traducteur chevronné
Messages : 1411

Re: Conseil optimisation mod d’arbres

Message par Remrem »

Merci à tous les deux.

@noone je vais essayer ce que tu m’as expliqué, c’est pas simple mais bon je devrais m’en sortir. J’ai pas encore fini, il me reste encore des choses à améliorer comme les racines, les LOD, et certains arbres ne me conviennent pas encore. Et puis je pense passer sur SE dans un futur proche, comme ça boum ! Gros gain de FPS et meilleures performances et stabilité. Je suis en train de voir tout ça avec Pfuscher.

Je vous tiens au courant. Encore merci. :honneur:
Avatar du membre
Lysandre
Traducteur en herbe | Moddeur en herbe
Traducteur en herbe | Moddeur en herbe
Messages : 1289

Re: Conseil optimisation mod d’arbres

Message par Lysandre »

Tu compte publier ton mod du coup un jour ?
Je n'ai de maitre que moi même.
Avatar du membre
Remrem
Traducteur chevronné
Traducteur chevronné
Messages : 1411

Re: Conseil optimisation mod d’arbres

Message par Remrem »

Oui. Mais je ne pense pas le publier sur Nexus. Je vais sans doute créer un site de mods à part contenant tous mes mods déjà créés. Je suis en pleine réflexion en ce moment. Les idées fusent.
Avatar du membre
Lysandre
Traducteur en herbe | Moddeur en herbe
Traducteur en herbe | Moddeur en herbe
Messages : 1289

Re: Conseil optimisation mod d’arbres

Message par Lysandre »

Ok bonne chance alors ++
Je n'ai de maitre que moi même.
Avatar du membre
noone
Moddeur aspirant
Moddeur aspirant
Messages : 1031
Contact :

Re: Conseil optimisation mod d’arbres

Message par noone »

:top: il doit en connaitre un rayon sur les textures vu ce qu'il sort.
si t'en apprends plus sur ton problème n'hésiste pas a publier tes avancés c'est un sujet tout a fait théorique pour moi et qui m'interesses.
Tu te lances dans un gros mod pour le coup bon courage. :pompom:

@lysandre : je n'ai de maitre que moi même ^^ elle m'a fait rire ta phrase ça va aussi bien avec Je n'ai d'ennemi que moi même :zen:
Image
Si vous voulez mon aide commencez par utiliser mon generateur de BBCODE
Apprendre à utiliser le générateur
Avatar du membre
Yoplala
Modérateur | Scribe | Traducteur | Testeur
Modérateur | Scribe | Traducteur | Testeur
Messages : 4929
Contact :

Re: Conseil optimisation mod d’arbres

Message par Yoplala »

Remrem a écrit : 27 août 2019, 17:51 Oui. Mais je ne pense pas le publier sur Nexus. Je vais sans doute créer un site de mods à part contenant tous mes mods déjà créés. Je suis en pleine réflexion en ce moment. Les idées fusent.
Je crois que la Confrérie des Traducteurs héberge des mods francophones, si jamais tu ne connaissais pas... :siffle:

Bon courage pour le travail en tout cas !
Tu peux demander le rang de moddeur pour avoir accès à la forge, sa documentation, tout ça ! :)
Avatar du membre
noone
Moddeur aspirant
Moddeur aspirant
Messages : 1031
Contact :

Re: Conseil optimisation mod d’arbres

Message par noone »

tiens c'est bizarre mais ça pourrait t'interesser ,en épluchant le log de dyndolod je me suis aperçu qu'il cherchait un normal map pour les lods d'arbres et comme il ne le trouve pas il en met un vide
[00:04:48.347] <Note: textures\terrain\lodgen\skyrim.esm\treepineforestsnowl03_0005d2d9_n.dds normal map not found, using flat replacement>
note il me semblait que les lods ne géraient pas les spectaculars ou normalmaps ,d'ailleur aucun mop d'arbre ne les fournis mais tu devrais essayer d'en fabriqué un si dyndolod l'attend et que le jeu le prend en charge ça va être encore plus....lourd ^^ je veux dire joli.(en 256 le normal map devrait suffire voir en 512 )

je pensais aussi à une astuce , la transparence des mipmaps pourrait être un detail sympa qui améliorerait l'effet de dof du coup le bon format DXT1A crunched.Les mipmaps devrait remplir les extrimité des branches du coup si ils sont légérement transparent ça devrait bien rendre (légérement plus lourd)
Image
Si vous voulez mon aide commencez par utiliser mon generateur de BBCODE
Apprendre à utiliser le générateur
Répondre

Retourner vers « Aide »