References
No matter if you're using freebies or purchased commercial content, you'll sooner or later run into content that doesn't have correct references and you have to manually guide Poser/DAZ Studio/Carrara to the files they cannot find.
Advanced Library comes with a tool to help you check the references in the file when you encounter the problem but also a tool to correct your references before you even run into the problem. The later is described here.
As always when using tools that can change content on the disk, it's advisable to backup your runtime before running them. So before you let AL correct your references, be sure you have backups of the files.
To be able to see if the references are correct, Advanced Library needs to to know where your runtimes are located. So please setup your runtimes before running the reference tool. (This is not necessary if you want to check your whole library - see below.)
The reference checker is part of Advanced Library's Runtime Installation Helper. The Runtime Installation Helper is not described here, although you need to start it in order to check your references.
A walkthrough of the Reference Tool
- Start the Runtime Installation Helper from AL's "Settings" tab
- Now drag the folders you want to check onto the Runtime Installation Helper window (use shift to add more folders to the current list) or click "Change Folder" to open a single folder.
- Click "References" to open the References tool
- Click "Settings" to set up scan options:
- if you're scanning content outside your runtimes (e.g. content you want to move to your runtimes), check "treat scanned folders as runtimes"
- If you're scanning a whole runtime (which is already added to AL's runtime list), uncheck "treat scanned folders as runtimes"
- If you don't want to see correct references in the scan result, uncheck "show correct references"
- If you don't want to see files which contain only correct references in the scan result, uncheck "show files without questionable references"
- If "Automatically correct obz<>obj" is checked, refrences to obj (=geometry) files when there's only a obz file availabe (that's the compressed version of an obj file) will be automatically corrected to a reference to the obz file and the other way round in the scan result.
- Click "OK" or "Settings" again, to close the settings
- If you've set up runtimes in AL, you'd now press "Update Runtime Index". This will scan all set up runtimes and create an index of all files in the runtime. The index is used to find the correct references. Depending on the size of the runtime(s) this will take some time.
- Now it's time to press "Scan references". This will do the following:
- If "treat scanned folders as runtimes" is checked, then all folders from the "Runtime Installation Helper" (Step 1) will be scanned the same as "Update Runtime Index" does, but will only temporarily be added to the Runtime Index. This enables you to scan new content before moving it to your runtimes.
- All Poser files from the folders are checked for references. The references are then added to the tree on the left side. (If you scan only one large folder, it'll take till all files are scanned before anything is added to the tree.)
- So, the scan is done, what now?
- If you're lucky, there's no reference that needs correction. Go, work with Poser or scan something else.
- If you're unlucky, you'll have to do some corrections to the files - that's not too hard to do:
- Select a reference you want to change (that may even be a correct one, if you really want...)
- On the right side you'll then get some information about the reference in the upper part (like the path to the file, the name of the reference in the file and the type of the reference). There may be more than one reference to the same file but with a different path in the file. That doesn't make too much sense, so all different references to the same filename are shown under the same reference.
Clicking the reference will also set the filter. - According to the filter the list below the filter shows all files existing in the Runtime Index which match the filter. The temporarily to the Runtime Index added files are of course also displayed. If there are no matches you may try to adjust the filter to find the file anyway.
- Now pick the correct file from the list. You can change the list display style via it's context menu (just right click into the list). That can be either a textual list or small or big images.
- If you don't want to change the reference, press the "None" button. The next reference that needs to be resolved will then be selected (that's what happens for the other two buttons, too).
- To change a reference, press the "Change Reference" button - don't worry, the changes are not done to the files on disc jet, only applied to the displayed references in the tree.
Depending on what you've selected from the "Apply Action to" radio buttons, "Change Reference" will do different things.
Let's imagine, that you dragged more than one folder onto the "Runtime Installation Helper" (let's say folders A, B and C) and the references to correct in folder A are "runtime:geometries:acb:test:geo1.obj", "runtime:geometries:acb:test:geo2.obj" and ":acb:test:image2.jpg", ":acb:test:image1.jpg".- Left side: "Path and filename". Choosing anything from the left side will only apply to a reference with the same path and filename.
So if the reference to change is ":acb:test:image1.jpg" and you selected ":runtime:textures:acb-test:image1.jpg" as the correct reference, then none of the other references from above are changed. - only selected reference:
Only the selected reference is changed to the reference selected from the list - all references in all files in folder:
if other files in the same folder contain the same reference, the references there are changed, too - all references in all files in root folder:
if you change the reference in a subfolder of A then all references in all files in any subfolders of A are changed. - all references in all scanned files:
This will change the reference in all files in A, B and C - Right side: "Path part of reference for matching paths". Choosing anything form the right side will apply to all references with the same path.
So if the reference to change is ":acb:test:image1.jpg" and you selected ":runtime:textures:acb-test:image1.jpg" as the correct reference, ":acb:test:image2.jpg" will also be changed to ":runtime:textures:acb-test:image2.jpg" - image2.jpg won't become image1.jpg.
- all path references in file:
Only references in the same file are changed, no other files are affected - all path references in all files in folder:
references from all files from the folder will be changed - all path references in all files in root folder:
if you change a reference in a subfolder of A, all references in any subfolder of A are changed - all path references in all files in all scanned files:
References in A, B, C are changed, too.
- all path references in file:
- Left side: "Path and filename". Choosing anything from the left side will only apply to a reference with the same path and filename.
- "Treat as Correct" will mark the reference as correct according to on of the eight actions you've choosen. After that the next reference that needs attention is picked.
- You corrected everything needed? Do you have a back up? Press "Repair References" to apply the changes...
- If you're like me and want to check what has happened, press "Show logs". Open today's log file to see what happened.
What's displayed in the tree
- Folders (folder icon): They're just there so you know what's been scanned and contain files :-). The context menu allows to explore the folder or reset the references of all items in this folder (and subfolders) or of the whole scan.
- Files (no icon): the scanned files (depending on the scan option those with correct references are shown or not), they contain references (Reference Names in the tree).
- Reference Name (reference icon): shows the filename of the reference and contains the different references used in the file for this reference filename. (Poser cannot use more than one reference with the same name per scene and thus per file, so it makes no sense to have more than one reference with the same name...)
- Unchecked Reference (unchecked_reference icon): right after the scan all references are unchecked, but they're automatically checked right after the file scan, so you shouldn't be able to change those, but may see them in the tree
- Checked Reference (checked_reference icon): That's usually a correct reference. Only one file could be found that matches the reference.
- Ambiguous Reference (ambiguous_reference icon): The reference is basically correct, but there's more than one item that matches the reference. That usually means that you have the same file in multiple runtimes or that it's in the scanned folder and a runtime. You should probably compare the multiple if they're really the same.
- Changed Reference (changed_reference icon): That's a reference you already changed.
- Defect Reference (defect_reference icon): The reference is probably wrong - at least it wasn't possible to find the specified file. Choose the correct reference to correct the problem. Maybe adjust the filter to find the file in the Runtime Index. Of course you could also just have forgotten to update the Runtime Index or have choosen the wrong option.
- Malformed Reference (malformed_reference icon): That's a reference that's not in the correct format, but the correct file could be found.
What's the correct format of a reference?
A correct reference for the References tool is a relative reference starting with ":". A reference is only correct in that format, even if Poser has no Problem if the relative reference only occurs once in a file and after that only the filename.
Why's that?
Easy answer: Because I want it like that. But it's also safer if you want to import to other applications. Even Poser may hiccup once in a while (or with a new version) on files that did work before... So I'm just going the safe route.
But what about absolute references?
Maybe later, but I don't need them.