Script that Creates a List of all Morphs used on a Character
marth_e
Posts: 180
in The Commons
Does anyone know if there is a script for Daz Studio that creates a list of all the morphs used on a character with their respective values and allows them to either be displayed on screen or saved to a file?
cheers,
Martha
Comments
Select the character, go to the Parameters tab, click Currently Used near the top of the tab, and you will be shown exactly what you seek, dear Martha.
In addition to what xyer0 said, if you want to also be able to see the corrective morphs and all the "under the hood" morphs you'll also need to go to the "hamburger menu" (lines with an arrow - see attached image) >> Preferences >> and check "Show Hidden Properties". Then select "Currently Used" in the Parameters tab and it will show all the morphs, correctives, and everything that the character is currently utilizing.
Thank you very much, xyer0 and 3Diva, for the prompt response. Indeed, that is the easiest way to see the morphs being used, but I think I didn’t explain myself well. What I’m looking for is a script that shows a list of all the morphs and their respective values as plain text. Whether it’s in the console or written to a text file, the idea is to easily export that list later to Excel, Word, or any other application. Is that possible?
Cheers,
Martha
You could use this, tweaking it to report only those with a non-zero value (or scale properties with a value other than 1) http://docs.daz3d.com/doku.php/public/software/dazstudio/4/referenceguide/scripting/api_reference/samples/properties/node_properties/start
Thanks a lot, Richard. I'll see if I can adapt it. I appreciate it!
Wow! This will be useful! Many thanks!
This is old (2016) but still works:
https://www.daz3d.com/forums/discussion/87636/a-script-to-control-a-selected-property-with-large-font-size-and-preview-buttons#latest
To use:
The "List Morphs" facility works on anything that has Morphs - so any DAZ Figure, Animals, etc.
The "List Transforms" facility works on anything that has Bones - so any DAZ Figure, Animals, Vehicles, etc.
The script is in .dsa source code form, so you can modify it to suit yourself.
Thanks a lot, Praxis!
It works like a charm. This is a great script with some fantastic additional features! Thank you so much for sharing it!
I do have one question: I noticed that it organizes the morphs in a different order compared to how they appear in 'Currently Used Morphs' within Daz Studio. What criteria does the script use to sort the list of morphs?
Again, thanks a lot!!! I appreciate it!!
This sounds like a very handy script! Thank you! :D
Glad you like it!
The script just dumps the Morph information in the order that DAZ Studio holds it internally, i.e. as returned by the DzObject::getModifier() function on line # 607 of the script..
Somebody (not me ) could modify the script near line # 623 to get oValChan.getPath() and output that as well, and/or use that to organize the output into Path order (as presented in the DAZ Studio display). Hope that helps.
You are welcome - hope it helps you!
We need more scripters in the Daz3D community (we have a handful but not many, and I'm rubbish at scripting lol), so I'm excited to check out your work! Do you have other scripts that you've shared?
Yes, here are the main ones: They are all source code, and you are welcome to modify them:
Have fun!
Hello, Praxis,
I have been adapting the functionality to a new script, and so far, I have managed to scan the list of active morphs and display them in the same order that DAZ Studio shows them in the 'currently used morphs' section. I save the table with the morphs and their respective values to a temporary file, but when I try to open Notepad automatically with the file I created, I can't get it to work. No matter how much I review that functionality in your code, I can't understand how it works. Do you have any tips on how I can open the temporary file with the morphs directly in Notepad from the script?
Thank you in advance for all your help and for sharing your script,
Martha
Thank you so much for the links! :D It's nice of you to take the time to provide the links and share your scripts!