Image Menu Overload
Here is something I have been struggling with for a long time with DAZ Studio. I call it "Image Menu Overload".
When composing a scene in DAZ Studio I often test several textures and shaders on the models I wish to use for the scene. Each texture and each shader I test records the image names that are part of what I test in a menu. You can find this menu in the Surfaces Edit pane when you click on the little square to the left of channels like Diffuse, Specular, Bump, Displacement, Normal, Opacity, etc. All of the ones that use images will add any loaded into that channel image name to this menu list. When you decide not to use a certain texture set, and you load a different one, the image names associated with the new texture set are added to this menu list. The problem is that the image names you are no longer using, remain on the list! Now the thing is these names are attached to the images they represent, and if you click on one it will load into the little square you used to access this menu. This means that all the images that are named on the list are in DAZ Studio's image memory for the session you are working in. That is what I mean when I call it "Image Menu Overload"!
The effect of this becomes apparent when you start a render, or a partial render to see what the rendered textures will look like. If you are doing either type of render for the first time, DAZ Studio will do the "Optimizing Images" thing before allowing the render to start. If there are several images in the Image Menu, this optimization can take a large amount of time to be completed, and your render will only start after it is done, because the optimizing will go through every image on the list, whether it is being used or not. Inefficient is the word that comes to mind on this! But that's not all! If there are a lot of images in the Image Menu, when the render does start, it will be slow; at least it is for the 3Delight render engine. In order to make DAZ Studio render faster, the only way I have found to clear out the unused images from that menu is to save your scene, close DAZ Studio, Restart DAZ Studio, load your scene from the saved file, then start the render. Even then, DAZ Studio will do the "Optimizing Images" thing before the render can start; however, all of the unused images you had on the Image Menu List won't be there anymore.
I have searched within DAZ Studio for a way to clear out the unused images from the Image Menu, but so far I have not found one. It is frustrating when you have to close DAZ Studio to clear the unused images from that menu after saving your scene, then restart DAZ Studio and load your scene for the render. And if you don't want to do this several times, I advise you not to do last minute texture changes before rendering. I did that, and had to save and close DAZ Studio a second time before I could start my render!
Now it seems to me that there has to be a way within DAZ Studio to remove all unused images from the Image Menu . I think a way does exist, I just can't find it! So if anybody here know how to do this, I would be thankful for the information. I am attaching a screenshot showing this Image Menu of a large amount of images; none of which are loaded onto the primitive cube I loaded for this screenshot. The cube is the only thing in the scene, and it has no textures loaded onto it, yet the Image list is showing the texture image names of everything that was in the scene I had composed before I deleted that entire scene. I got the idea to load a primitive just to see if the images were still on the Image Menu list. With the Cube selected I went to the Surfaces Edit pane and clicked on the square next to the Diffuse Color channel. The entire list of all images that were used or tested in the scene I had deleted was all there. This screenshot proves it.
So if you are having a lot of slow render times in DAZ Studio, this could be a large contributing factor. You will need to do whatever it takes to remove all unused images from that Menu, in order to get your render to be faster!
Comments
That is rather an old version of DS. It's not a situation I often run into, but my ecollection is that there were some chnages to improv this. If you need to stick with that version for geneal use try the Public Build (Beta) alongside it.
Thanks for the response. Sorry about not acknowledging your comment sooner. I was having trouble finding this thread again, and I'm the one that started it.
My reason for sticking with DS 4.10 is because my old PC cannot handle the extra added stuff in the newer versions.I'm looking at getting a better one eventually, but budget constraints are preventing that at this time.
As for running the Public Build Beta alongside my version, how will that help with the problem I am having? I'm seriously thinking of trying it, but before I go for it, I would like to know how well it would work on my 20+ year old machine. I don't usually run more than one version of any application on my computer. As I have good reason to keep the version I have, I don't see what good getting another one downloaded and installed will do. To give you an Idea of how my PC handles any version, I am able to use the Genesis 2 figures with little trouble, although Genesis does work better for me. Genesis 3 figures make my computer get sluggish rather quickly, so if I use one, I keep the scene low as possible in memory use, not using high poly products much for composing my scenes. These days, 4 Gigs of RAM can run out fast when using higher grade figures and products. This is also, I suspect, why the Image Menu getting bloated slows down my render times.
I like to put a lot of detail in my images to depict the stories they are to tell. If I load a product and give it some of my special homemade texture treatments, I want the detail to be good enough to see well. For that I try to make my images rather large. Usually 2000PX or more on at least one direction. In Bryce I can make the images up to 4000PX on one direction (or both if it's square. I have been able to show lots of detail in those images, and the funny thing about that is that Bryce is only a 32 bit application. But with DAZ Studio 4.10 and Poser 11, if I try to make an image that large, these applications will crash without fail. Another funny thing about Bryce is that even though it has not been upgraded in 13 years, it still can turn out some awesome images. No it won't do realistic figures, but for Landscapes, Spacescapes, and Seascapes, it is still winning contests for me. So I cannot complain about the performance of Bryce. I can however complain about the way DAZ Studio and Poser are unable to do what a weaker application can do. If the Image Menu could be purged of unused images before the final render, without have to close and reopen those applications, I would not have to complain about these two applications. There should be a way to do that in DAZ Studio at least. Sorry to be ranting, but it is frustrating when time could easily be saved by have that ability.
One thing to think about is how once the image is composed and all test spot renders are showing good results, to get the render to start without the image bloat, I must save the scene, close DAZ Studio, reopen DAZ Studio, load the scene I just saved before closing DAZ Studio, and initiate the render. Yet that is not going to immediately start the render process. There are still the images that are being used for the scene in the Image Menu, and DAZ Studio must optimize those yet again before the render process can begin. So looking at this series of steps I must go through, you can see where the time is being wasted. At least if I don't have to close DAZ Studio, the optimizing has already been done, so starting a render will not necessitate optimizing over again, and the render process will begin much quicker. All the time following those steps, and getting through the image reoptimization process is saved. That's all I'm asking for.
By the way, I now have this thread bookmarked.
Use clear undo stack script... I always use it. https://www.daz3d.com/forums/discussion/17833/#262681
The link seems dead...I PM-ed you the script...