Any way to have DS find files from old saved scenes?
I asked this a while back but didn't get any answer that helped. I used to install everything manually, one runtime for DAZ files and several others for 3rd party, including poser runtimes and DS had no issues finding all of it. Them I did some upgrades and moved to a newer version of DS and decided to use DIM for my DAZ content. This is when I started having issues with none of the saved scenes loading without the missing files dialogue. Eventually I gave up and moved on to creating new scenes
Two years later and I just found one of my old backups of scene files prior to using DIM and copied some of them onto my computer. Now when I try and open them, I get the same missing files dialogue for almost everything in the scene, yet the figures show up without textures. I have all the files for the old scenes installed and can find them all in the content library in DS. I am assuming it has something to do with an absolute file path that has changed from the current location of files to the old location in the old saved scenes file. So is there a way to get DS to see them when the old scene file is opened??
Comments
If you're getting the figure geometry without textures, it should be as simple as re-applying the materials (assuming you kept your materials relatively close to stock).
DS doesn't use absolute filepaths, everything gets searched from your main library folder(s) as "root".
I once moved an asset from my main Daz library to a new "local assets" library and all I did was move the physical files to a new (registered) folder. My old saves worked as if nothing had changed.
You may use Notepad, Notepad++ or EmEditor to open the scene file (duf file). If you cannot open it, go to DS - Window - Panes (Tabs) - Batch Converter to uncompress the duf file beforehand.
Then, for instance, search 'runtime' and check the section of 'materials', see the dir of image file is an absolute path or a relative one...
PS: If they're absolute paths, just batch replace them. If not... that'll be really weird...
For most figures, yes, i could just load a preset, but I edit textures all the time and so it would be nice is the edits loaded as well. Then there are the props and environments, most of which don't come with a MAT to load textures.
If DS doesn't use absolute paths, then I am at a lose as to why it doesn't see the files when they are there, but in a sligtly different path
I am planning on a new PC soon, but this scares me if I am going to lose all my scene file again
I'll look at that, but it sounds like a ton of work
Usually it's pretty easy and quick if you can identify the problem, Ctrl + H to replace the 'wrong' root path with 'correct' one, e.g. replace 'My Daz Lib/Runtime' with '/Runtime'
What is the path given for the missing files? One possibility is that you had the files in a content directory nested inside another cotnent directory, and DS used the outer directory as the starting point for the relative path so that it has an extra folder in front of /Runtime/ or /data/. The other possibility is that you had files (e.g. your own textures) that were not in a content directory when applied, in which case the full path would have been used.
And there is the issue with //Runtime instead of /Runtime.
Some products had the path to the textures set as //Runtime/ instead of the correct /Runtime/, older versions of DS ignored this error, but DS 4.20 started complaining about missing textures.
Indication of this problem is when the path given for the textures starts with Textures/ instead of Runtime/
Ok, maybe this will help. Here is a test scene from the folder I found. I load it up and the character (G8), and the clothing all give warnings at not finding the textures, yet the product is installed, but in a different place than when I saved the scene and at that time I wasn't using DIM.
For instance, the character torso diffuse texture.
The character is Mousso Joanna for G8
It loads with no texture and I get the error saying it can't find it (here is the warning that is in the log file)
2023-05-20 15:51:47.579 [WARNING] :: Could not resolve: /content/runtime/Textures/mousso/Joanna/Joanna Torso Diffuse.jpg
and here is the actual path of the installed texture using DIM
C:\Users\Public\Documents\My DAZ 3D Library\Runtime\Textures\Mousso\Joanna\Joanna Torso Diffuse.jpg
I have Joanna installed and can go to the files in content library easily and load this texture set
I even tried copying my DIM library over to my documents where I keep my non DAZ runtimes, but that did nothing other than waste a ton of time
As I suspected, nested content diectories. You can the product installed to a folder named Content that was inside another content directory, name unknown, and when the scene was saved DS took that unknown content directory as the starting point for the relative path, so you have
/content/runtime/Textures/mousso/Joanna/Joanna Torso Diffuse.jpg
instead of
/runtime/Textures/mousso/Joanna/Joanna Torso Diffuse.jpg
If you uncompress the files and open them in a text editor (or use a text editor that can do a batch search-and-replace across a driectory) then repalcing /content/runtime/ with /runtime/ and /content/data/ with /data/ should fix the issue.
Notice above ~ there should not be a string '/content' before '/runtime.....' path. That's the reason....
Yea~ 'How to fix it' has been already posted as above... pls just give it a try. Again ~ I use EmEditor, so like this:
Do you mean that you're editing the texture maps themselves, or just the surface settings? If the latter, it's a little circuitous, but here's what you could do:
Select a figure with a heavily-modified surfaces but missing maps, save a material preset of its current settings
Apply the original material preset to the figure
Hold CTRL while applying the preset you just saved and set Images to "Ignore". This will apply all the settings from the new preset on top of the maps from the original preset.
Thanks for the info all. At least I know why and an option to try and fix it, much appreciated!