KruL 210 Report post Posted October 7, 2019 Hello les copains, J'ai un problème récurrent depuis quelques mois et je me demandais comment vous gériez ça, et si vous rencontrez le même type de souci. - pour un client, je crée des scènes très légères en modélisation archi mais très complexes en accessoires et végétaux, et les matériaux doivent être précis et maîtrisés. - j'utilise l'option "compress on save" dans les préférences fichier, mais avec ou sans, ça ne change pas foncièrement le problème - scène optimisée : pendant la conception du projet je n'exporte pas en proxies, et quand les choses se figent je fais une session d'optimisation ; ainsi je passe d'un fichier max de 190Mo à 17Mo (compressés sinon c'est bien plus gros). Bon la scène est gavée de proxies, souvent utilisés une seule fois ou quelques instances. Surtout de la végétation et quelques modèles en hi poly. J'utilise aussi quelques PBR pour les premiers plans, un bon HDRI bien lourd mais rien d'original, parfois des multitextures de cgsource. Le problème : quand j'enregistre mon fichier, ou quand se produit l'enregistrement automatique, ou quand j'envoie les rendus sur backburner, c'est très très long, autour de 10 minutes, que j'enregistre mon fichier directement sur le SSD (boot) ou sur mon disque de projets. Concernant les maps et à mon avis c'est de là que vient le problème : j'ai investi du temps dans l'outil Connecter (de designconnected) pour gérer mes ressources ; et donc quand j'achète un modèle 3D ou que je le fabrique, je le range proprement dans une structure type "Z:\Ressources\Modeles\Turbosquid\NomduModele\" où Z: est un lecteur partagé et utilisé par mes rendernodes. Dans le dossier, j'ai mon fichier max et les fichiers preview, et les maps : quand j'insère un modèle dans ma scène, Connecter ajoute tout seul les chemins des maps ce qui est très pratique. Comme j'ai énormément de proxies, j'ai énormément de chemins et de maps; donc l'asset tracking est assez impressionnant mais pas une map ne manque à l'appel. J'ai pensé que c'était peut être lié à ma station de travail, au disque SSD ou autre, et j'ai fait le test sur mon esclave le plus récent (plus puissant que ma station de travail), même souci. Pour l'instant, j'attends mais ça me rend dingue surtout les enregistrements automatiques que j'ai bien sûr espacés. Avez vous le même genre de problème ? Merci et bon lundi, KruL Quote Share this post Link to post Share on other sites
Nicolas Caplat 2757 Report post Posted October 7, 2019 Salut KruL, As-tu essayé de passé tes chemins d'assets en UNC ? Quote Share this post Link to post Share on other sites
KruL 210 Report post Posted October 7, 2019 Salut Nico merci de ta réponse. Je n'ai pas essayé ça en effet, comme je n'ai pas eu de problème avec le lecteur mappé et mes rendus réseau. Mais tu as raison je vais essayer on ne sait jamais. Merci Quote Share this post Link to post Share on other sites
Nicolas Caplat 2757 Report post Posted October 7, 2019 Salut, Généralement, dès qu'on utilise des ressources réseau avec 3dsmax, et quand on fait du réseau distribué, les chemins UNC sont réputés plus stables. Pour info, il y a une option dans les préférences de 3dsmax pour convertir tes chemins (Customize - > Preferences -> Files -> Convert Paths to UNC). Après avoir activé l'option, il faut redémarrer 3dsmax. Enfin, puisque tu utilises l'Asset Tracking, un switch est à activer pour que l'AT gère bien la vérification des chemins UNC ... switch qui n'est, à ma connaissance, pas disponible dans l'UI ! ahhh Autodesk ! Bref, copie/colle ce code dans le Listener Maxscript puis Entrée: ATSOps.CheckNetworkPaths=true Quote Share this post Link to post Share on other sites
Nicolas Caplat 2757 Report post Posted October 7, 2019 56 minutes ago, KruL said: Dans le dossier, j'ai mon fichier max et les fichiers preview, et les maps : quand j'insère un modèle dans ma scène, Connecter ajoute tout seul les chemins des maps ce qui est très pratique. Pour avoir beaucoup utilisé Connecter dans mon précédent job, le fait de lui déléguer la gestion des chemins n'est pas obligatoire. Je bossais sur des scène bien balèzes, avec beaucoup beaucoup de proxies, et on gérait les chemins nous-mêmes, limitant autant que possible la profusion de chemins différents. Je pense à un autre truc, tu es carré avec les noms de fichiers ? Aussi, tu peux exécuter gc() dans le Listener Maxscript après avoir ta session d'optimisation dans ta scène. L'efficacité est variable selon les scènes, mais quoiqu'il en soit, ça ne peut pas faire de mal Un autre tip pour éditer les chemins des librairies globalement: https://www.pixamoon.com/shop/4587562584/library-track-relink-.../9337230. Pas besoin d'ouvrir les fichiers max, tu relinkes tous les chemins des scènes 3dsmax d'un dossier d'un seul coup ... un indispensable ! Quote Share this post Link to post Share on other sites
KruL 210 Report post Posted October 7, 2019 Je suis en train d'essayer ta suggestion, j'attends l'enregistrement de mon fichier Carré avec les noms de fichiers, tu veux dire sans caractère spéciaux et noms exotiques ? Pour mes fichiers oui, pour les ressources que j'achète il faudrait que je contrôle. Pour limiter la profusion de chemins différents, il faudrait que je copie chaque ressource utilisée dans mon dossier projet, et son dossier de maps. Et archiver le tout au bout d'un moment. Je pense que je vais faire le test sur mon prochain dossier, voir si ça améliore la rapidité, mais ça me pose un problème sur la multiplicité des modèles, des fichiers et la pollution numérique liée (sauvegarde auto etc). Quote Share this post Link to post Share on other sites
KruL 210 Report post Posted October 7, 2019 Bon j'ai converti le tout en UNC, vérification faite sur l'Asset Tracking, et enregistrer sous +. Même temps d'enregistrement pour mon fichier de 17Mo, presque 9min. Quote Share this post Link to post Share on other sites
Nicolas Caplat 2757 Report post Posted October 7, 2019 7 minutes ago, KruL said: Pour limiter la profusion de chemins différents, il faudrait que je copie chaque ressource utilisée dans mon dossier projet, et son dossier de maps. Et archiver le tout au bout d'un moment. Je pense que je vais faire le test sur mon prochain dossier, voir si ça améliore la rapidité, mais ça me pose un problème sur la multiplicité des modèles, des fichiers et la pollution numérique liée (sauvegarde auto etc). Tu peux détailler un peu ta gestion des assets, je t'avoue ne pas tout piger, là. Tu ne centralises pas tout ? Quote Share this post Link to post Share on other sites
Nicolas Caplat 2757 Report post Posted October 7, 2019 Essaies ça: t=trackviewnodes n=t[#Max_MotionClip_Manager] if n!=undefined then deleteTrackViewController t n.controller gc() Colle ça dans l'éditeur Maxscript et fais Ctrl + E pour évaluer. Tu peux aussi sélectionner le code depuis l'éditeur, et le faire glisser vers une toolbar pour en faire un bouton ;) Quote Share this post Link to post Share on other sites
KruL 210 Report post Posted October 7, 2019 Pardon c'était pas clair. Les ressources sont dans Z:\Ressources\Modeles\Nomdufournisseurdemodele\Nomdumodele\ Mes projets sont dans Z:\Projets\Nomduclient\Nomduprojet\, et dans chaque projet j'ai 4 dossiers d'organisation (CAD, Ref, Max, Maps) Ce que j'essayais d'expliquer au dessus, c'est que je pourrais copier chaque modèle dont j'ai besoin de mes ressources jusqu'à mon dossier de projet, pour que chaque dossier de projet soit complet plutôt que de faire référence à des ressources externes. Dans mon dossier max du projet, j'ai toutefois mes fichiers de proxies, export des modèles originaux. Quote Share this post Link to post Share on other sites
Nicolas Caplat 2757 Report post Posted October 7, 2019 Ah ok, merci, c'est clair Quote Share this post Link to post Share on other sites
KruL 210 Report post Posted October 7, 2019 Je suis en train d'essayer ton dernier script, merci En attendant je regardais coté Ressources et noms exotiques, et effectivement j'ai pas mal de dossier (et noms de fichier) avec espaces et virgules. Ok ça craignait sous Windows 3.1, et 95 et tout ce qui tournait sous DOS mais tu crois qu'on en est encore là ? Pour ma part j'ai gardé mes vieilles habitudes de Nom_de_dossier mais reprendre toutes les ressources aie aie aie. Quote Share this post Link to post Share on other sites
KruL 210 Report post Posted October 7, 2019 300ko de gagnés sur le fichier mais même temps d'enregistrement. 1 Nicolas Caplat reacted to this Quote Share this post Link to post Share on other sites
patagoniak 122 Report post Posted October 7, 2019 Salut, j'ai toute une panoplies de scripts de nettoyage, pour ce genre de cas, si tu veux je poste ça dans la soiree. Quote Share this post Link to post Share on other sites
Nicolas Caplat 2757 Report post Posted October 7, 2019 2 hours ago, KruL said: En attendant je regardais coté Ressources et noms exotiques, et effectivement j'ai pas mal de dossier (et noms de fichier) avec espaces et virgules. Ok ça craignait sous Windows 3.1, et 95 et tout ce qui tournait sous DOS mais tu crois qu'on en est encore là ? Pour ma part j'ai gardé mes vieilles habitudes de Nom_de_dossier mais reprendre toutes les ressources aie aie aie. Oui, on en est encore là Pour les ressources, je comprends, si ce sont des choses dont les liens sont utilisés dans une floppée de scène, ça peut tourner au cauchemar ! Par contre, si besoin, tu peux éditer en masse des noms de dossiers et de fichiers, en remplaçant tel ou tel caractère par un - ou un _ , avec ce genre d'utilitaire. Il peut paraître rude de prime abord, mais une fois que tu le connais, tu fais tout ce que tu veux. Quote Share this post Link to post Share on other sites
lolonic 885 Report post Posted October 7, 2019 Je me trimbale ce souci depuis un bail. Que ce soit sous max2016 ou 2019. Avec toute fois un mieux avec 2019. J'arrive à améliorer la situation en collant toutes maps/proxies en local et regroupés dans le dossier du projet. J'avais essayé plusieurs scripts (que je n'ai plus, bien sur) dont certains "nettoyaient" plutôt pas mal la scène....mais de façon assez variable. Patagoniak, si tu passes par là, je suis preneur de la panoplie que tu as dans ta besace....;) J'ai retrouvé ceci : clean_3dbrute.mspurge 3dbrute.ms Quote Share this post Link to post Share on other sites
KruL 210 Report post Posted October 7, 2019 Merci, je veux bien essayer les scripts. Et Nico, ouepe renommer les fichiers en masse je saurais faire, mais relier ensuite chaque modèle avec chaque map dont le nom aurait été modifié... là je m'avoue vaincu. Quote Share this post Link to post Share on other sites
Nicolas Caplat 2757 Report post Posted October 7, 2019 7 minutes ago, KruL said: mais relier ensuite chaque modèle avec chaque map dont le nom aurait été modifié... là je m'avoue vaincu Faisable, mais beaucoup plus galère en effet Quote Share this post Link to post Share on other sites
sidetmc 193 Report post Posted October 7, 2019 3 hours ago, Nicolas Caplat said: Essaies ça: t=trackviewnodes n=t[#Max_MotionClip_Manager] if n!=undefined then deleteTrackViewController t n.controller gc() Colle ça dans l'éditeur Maxscript et fais Ctrl + E pour évaluer. Tu peux aussi sélectionner le code depuis l'éditeur, et le faire glisser vers une toolbar pour en faire un bouton ;) ça me rappelle les sessions Friday Tips.... Optimisation 3dsMax Firday Tips #10 Tu peux rajouter : Quote backgroundimagefilename="" FreeSceneBitmaps() 1 Nicolas Caplat reacted to this Quote Share this post Link to post Share on other sites
Nicolas Caplat 2757 Report post Posted October 7, 2019 Bien vu, mais freeSceneBitmaps() ne fait rien sur le poids du fichier, c'est juste pour libérer la RAM prise par l'affichage des maps dans le viewport ou après un rendu C'est marrant que tu reparles des Friday Tips. Je suis en train de remettre mon site sur pieds, assez généraliste, et je me posais la question de la pertinence de refaire un truc dans le genre. Je vais en parler avec Matt s'il pense remettre ça en route ou pas, loin de moi l'idée de tirer la couverture sur moi Quote Share this post Link to post Share on other sites
KruL 210 Report post Posted October 7, 2019 Alors juste pour préciser : je n'ai aucun problème avec le poids du fichier qui est franchement light mais avec le temps que met 3dsmax à enregistrer ce petit fichier. Merci de votre intérêt à tous en tout cas. Quote Share this post Link to post Share on other sites
sidetmc 193 Report post Posted October 7, 2019 1 hour ago, Nicolas Caplat said: Bien vu, mais freeSceneBitmaps() ne fait rien sur le poids du fichier, c'est juste pour libérer la RAM prise par l'affichage des maps dans le viewport ou après un rendu C'est marrant que tu reparles des Friday Tips. Je suis en train de remettre mon site sur pieds, assez généraliste, et je me posais la question de la pertinence de refaire un truc dans le genre. Je vais en parler avec Matt s'il pense remettre ça en route ou pas, loin de moi l'idée de tirer la couverture sur moi Pour moi c'est toujours pertinent ! Perso j'en fais en interne pour l'agence où je bosse (pas sur Max malheureusement) Quote Share this post Link to post Share on other sites
patagoniak 122 Report post Posted October 7, 2019 Ici j'ai fais un rar avec tout les scripts que j'utilise depuis des années pour ce genre de problemes, a tester 1 par 1 en ayant fait un backup avant bien sur ... certains sont peut etre incompatibles avec les versionsd les plus recentes de max ... a voir ... Mais y'a rien de pire quand d'un coup tu as un probleme de poids ou de temsp de sauvegarde de fichiers, en general ça arrive au moment de la livraison quand tu es a la bourre sur un gros projet et qu'il est 5h du matin .... ? https://www.dropbox.com/s/4fk1o2en2bj92ey/nettoyage-max.rar?dl=0 1 Nicolas Caplat reacted to this Quote Share this post Link to post Share on other sites
Miaz3 512 Report post Posted October 7, 2019 hum, c'est pas le zip de ton fichier max qui fait ça ? enfin le 'compress on save' Quote Share this post Link to post Share on other sites
Miaz3 512 Report post Posted October 7, 2019 Essaie de voir comment ça se passe sans la compression ça m'apprendra à lire, tiens... Quote j'utilise l'option "compress on save" dans les préférences fichier, mais avec ou sans, ça ne change pas foncièrement le problème [/quote ] 1 Nicolas Caplat reacted to this Quote Share this post Link to post Share on other sites