Tips on making scene file smaller?
Hey,
So this has been bothering me for a long time, sometimes my scene files are about 5-20 MB's depending on amount of charachters i've got and also the enviorment. However I noticed when I started to import to blender that the scene file gets big but if I use save as figure/prop asset it makes the scene file go from 50 MB to around less than a MB (exagrating). Then I got thinking because I noticed some smart content assets I have downloaded sometimes aren't optimised it feels like? Like I had a exterior which was alone 5 MB, it's got a lot of props so I couldn't really save as a figure/prop.
Like I noticed also that there were some eyebrows which brought the save file up to 8 MB, which was just baffling, I luckily managed to fix it by saving as figure/prop.
My question is this, is there a way to save as figure/prop asset while having multipule assets selected? So the scene file gets smaller? Or do I have to manually do it?
Is there any tips for optimizing my workflow, because saving takes a lot of time from me not to mention adding iray and posing etc. But I want to remove one issue at least from the equation which is the save time which usually for me with the renders I do is 15-30 seconds.
Do I make some parts of the scene a scene subset then import them back in 2 renders after I need it (if I'm making sense here) or is there a simpler way?
If there is also an asset that I can purcahse that can handle this, it would be amazing. But I have a feeling there isn't any.
Also question does Persona file save the sub division? Like if I made 20 scene's, 2 charachters are both in base but then in render queuer In extra render properites I load a persona, will that make it so the persona overrides the base and sets the charachters to high? Or am I is this just complicating things? I know persona removes well like a glass or a bottle from the model etc since it's not contained in the persona, but if it works like this maybe this will benefit me a lot more working.
I might be asking much here but I really want to be more efficent and quicker, without viewport slowing down.
For your information
Specs:
Daz 4.24.
3090 TI
48 GB

Comments
Yes, usually even if you had Compress checked, the culprit of bringing you big file size would be the geometry data. If you open the uncompressed DUF with Notepad++, then find there're lots of data under geometry_library, that's it ~
Saving Figure / Prop assets as well as Modifier Assets is a common way to save the geometry data into DSFs but yes, at detault, you can just save them per selected Figure / Prop. Optionally, you may batch do it with a Daz Script... or go for Save Scene Assets by using your Vendor Name.
As for Persona issue, yes, subD levels are saved within Persona Presets, however you need to firstly set Resolution Level to High Resolution rather than Base... otherwise DS will always show / render Base mesh with no SubD at all.
Don't know if this will help you? https://www.daz3d.com/scene-optimizer
Hey thank you for the reply.
Oh wait this is huge, If I save uncompressed and view in notepad++ it will give me the data. What would it say like in theory? "Prop75 2 MB"? Or will it be a high number?
I see it's a shame, I have want to script it but it's gonna be a huge learning curve considering I suck at Java script has.
Okay I gotcha, base version in the scene can't be well base it has to be high res regardless but maybe set it 0 terms of subdivision level. I wish there was a way where it will change all characters in the scene without persona where it was bass in to high.
i noticed however a tools a couple of hours ago Daz Studio 4 Tools 1. The person who made that asset scripted it so all characters hide their hair or shoes and even change to base. He also had a reverse button for that for the action. I wanted to purchase it but the product is not available anymore which is a shame.
im just thinking in theory if there is a way to have a script where it converts from base to high and I place it under render queuer. So when I work in posing and finish I place the script or dsf that activates it and before it renders it converts.
hey thanks but from what I understood it doesn't change save file terms of size. But it does improve rendering. Think I might have it
I would have thought (logical engineer's brain here) if you are reducing texture density and resolution using Optimizer, then the file size should also reduce because there's less detail. If it doesn't work that way, I'll just disappear back into my man cave and stay quiet
haha it might do, that's what I would think too lol. Let me experiment on this actually and get back to you on that in theory it should work. But from what I understood textures and the geometry shape effect the save file differently and not same way.
Daz is something else kek
It's going to be a bit of a mixed bag. IMHO, it's not going to make a major difference, unless you have a lot of textures and change a lot of shader settings.
The change to the file name optimizer makes (texturex.png, texturex 512x512.png) will increase file size.
Changes to the various channel's values can increase or decrease the file size, depending on how many characters are present.
The change to the texture size is going to make no difference, since no data beyond the file path is present in the scene file.
Ah no, it shows just the geometry data with hundreds or thousands of code lines... to let you know what objects have these geometry data and can be saved as Figure / Prop assets or Modifier assets so as to shrink the DUF file size ~~
I ever wrote two scripts for a folk to change Base to High Resolution and vice versa for the items in the scene by content types. You can try and use them or modify them at will. https://www.daz3d.com/forums/discussion/comment/8541796/#Comment_8541796
Because the vendor left this Daz3D store and moved to Rendo ~~
Reducing the scene files size doesn't necessarily reduce memory usage - it just involved shunting data to an external file, which will reduce disc usage if you use the same asset in multiple scenes (replacing multiple copies fo the data with one copy and links). Most of the data will not afffect the memory used by Iray since it doesn't care about morphs or simulations, and will get the final geometry (with divisions) rather than the base plus modifiers that DS works with.
Hey Thanks again for the response
I tried it out but I can't well find the objects that need to be put in figure/prop asset. I looked under Geometry Library and well I saw this
Oh wow, so terms of content types I can make idk, all genesis figures and hair assets to base, then later in render queuer I can have the script running before render is cooked? Or is the script during work?
Man such a shame I really think this would've been super useful to me.
Understood, I only wanted to decrease the save time, I understand that save frile doesn't reduce memory usage. I just want to reduce the size because when i save it takes quite a bit of time, valuable seconds for me, so just looking for a way to detect what needs to be set to figure/prop or what just needs to be removed because of how resource demanding they are
I suspect the only real way to reduce scene sizes is to never save them as a whole. (Assuming a non-trivia scene.) Chunk the scene into sections and use save as subset to save each of the sections as you work on it. For a major edit within a section, only load that section.
Not a great solution. But one that with proper discipline would save time in to long run.
Well the DUF file you checked might be more complex e.g. there're morph properties with linked geometry data not saved as assets, or dforced data on timeline, etc. You can search by using a keyword "vertex_count", like the screenshot 1 I attached.
Well... I removed the content type check and rewrote the scripts, the scripts loop check all figures / props and set their lodlevel to Base or High. Check the screenshot 2 and try the modified scripts in the attached ZIP .
Edit: Pls be noted: if a figure or prop in your scene has not been Converted to SubD, its lodlevel cannot be set to High Resolution. Do Convert to SubD beforehand if needed ~~ (some figures / props may have artifacts after conversion... check 'n do it case by case)