Sat, Feb 1, 9:58 AM CST

Renderosity Forums / Poser - OFFICIAL



Welcome to the Poser - OFFICIAL Forum

Forum Coordinators: RedPhantom

Poser - OFFICIAL F.A.Q (Last Updated: 2025 Feb 01 9:18 am)



Subject: Why can't Poser (and DAZ) use HTML style relative paths?


ElZagna ( ) posted Mon, 19 August 2013 at 6:49 PM · edited Sat, 01 February 2025 at 9:53 AM

Like this:

  •     links in the same directory as the current page have no path information listed: filename
  •     sub-directories are listed without any preceding slashes: weekly/filename
  •     links up one directory are listed as: ../filename

Of course for Poser you would replace the slashes with colons.

I know they can use paths relative to the runtime, so why not relative to the containing file?



OS: Windows 10 64-bit, Poser: 10


ockham ( ) posted Mon, 19 August 2013 at 7:10 PM · edited Mon, 19 August 2013 at 7:10 PM

file_497449.jpg

I see what you mean, but I'm not sure it would help much.

For instance, in the above tree, a prop file needs to reference an OBJ in the geom folder.

Under current Poser practice, it's

objFileGeom ":runtime:Geometries:SignalHouse:periscope.obj"

By HTML practice, it would be

objFileGeom "../../Geometries/SignalHouse/periscope.obj"

Saves some characters but loses some clarity.  It would allow a different directory structure not based on a folder named Runtime, but again I'm not sure the flexibility is worth the increased difficulty in automatic searching. 

Specifically, when adding a set of folders to Poser's library, you'd have to navigate to the proper level without any definite landmarks.  As it is, Poser is able to find the proper 'foundation point' automatically by looking for the folder named Runtime.

My python page
My ShareCG freebies


ElZagna ( ) posted Mon, 19 August 2013 at 8:13 PM

Good point about Geometries and Textures, but I was assuming that those folders would be referenced as they are now starting with "Runtime".

The reason I brought this up now is because I just downloaded Dawn and I noticed that they use the cursed pmd files. Pmd files are always referenced by the parent file with an essentially absolute path starting at "Runtime", e.g., the cr2 file for Dawn's String Bikini as ":Runtime:libraries:Character:HiveWire 3D:Dawn:Clothing:String Bikini:String Bikini.pmd". I'll call these things "runtime absolute paths" for the moment.

So why is that a problem? Well, many of us - maybe most of us - have abandoned the default directory structure and have implemented a structure that makes at least some kind of sense to the user. For the most part you can put characters, clothes, props.etc. anywhere that works for you. The main limitation is that you have to keep everything under the directories that come with the Library window (Character, Hair, Materials, Pose, etc.) For example, I put all my outfits in the Material directory tree. For materials, I put them in a subfolder under the item it was made for.

That works beautifully except when there is a pmd file because they are always referenced by a "runtime absolute path" which means that you can't move the item out of the exact directory tree that the vendor set up.

If Poser could recognize HTML style relative paths you could have the cr2 reference the pmd like this: morphBinaryFile "String Bikini.pmd". There's no leading path structure, so you assume it's in the same directory as the cr2. Now you can relocate everything to your heart's desire.



OS: Windows 10 64-bit, Poser: 10


andolaurina ( ) posted Mon, 19 August 2013 at 8:44 PM

I never understand why other content creators don't put PMDs in the Geometries folder or a separate morphs folder. That would free up the cr2 or pz2 file and folder to be moved wherever.

My RMP Store Freebies

Poser Ambassador; Poser 11 & 12 / DS4 / Metasequoia / Silo / Zbrush / realityPaint / UVMapperPro / XD 4 / Ps CC / Fw / Ai / Painter 12 / Clip Studio Paint / Comipo / Reality 3 / Windows 10 / Units = Poser Native


lmckenzie ( ) posted Mon, 19 August 2013 at 9:00 PM

Very off the cuff thought (i.e. an excuse if I say something stupid).

From a programming standpoint, you'd have to have a way to say push the current folder on a stack and pop it off as you traversed the hirearchy - a fancy way of saying keep track of where you are. How many times you'd have to do that depends on how deep the references go. Not a huge challenge but then I say that every time I write code and am too often proved wrong, especially considering that I know nothing of how Poser is coded. It's much easier IMO, to do it explicitly. There's also the matter of handling both formats; again possibly easy or maybe not.

Can you not "simply" change the .pmd reference in the .cr2? It would be easy (I would think) to have a utility that would allow you to drag the .cr2 and the .pmd onto it and have it move the .pmd to the location of the .cr2 and automatically change the reference(s) in the .cr2, or select the .cr2 folder etc. Not as nice as having Poser do it but it wouldn't require re-jiggering Poser's code. Also, I wonder if souch a change might not require updates to other utilities out there that are written based on the current way of doing things,

"Democracy is a pathetic belief in the collective wisdom of individual ignorance." - H. L. Mencken


Keith ( ) posted Tue, 20 August 2013 at 12:57 PM

There's at least one Javascript utility out there that takes the PMD and inserts the morphs into the character (object, whatever) file, so you don't need the pmd at all. I use it all the time.



lmckenzie ( ) posted Tue, 20 August 2013 at 5:03 PM

*"There's at least one Javascript utility out there that takes the PMD and inserts the morphs into the character " *

Possibly Kuroyumes's MorphExchange - indeed works very well. I don't know if the link is still valid.

"Democracy is a pathetic belief in the collective wisdom of individual ignorance." - H. L. Mencken


bevans84 ( ) posted Tue, 20 August 2013 at 8:27 PM

For my personal pmd files, I make a directory under Libraries under my name, then put all my pmd files in that directory. Then modify the inj/rem files to address that directory.
That let's me move them anywhere I want.



Keith ( ) posted Tue, 20 August 2013 at 9:54 PM

Quote - *"There's at least one Javascript utility out there that takes the PMD and inserts the morphs into the character " *

Possibly Kuroyumes's MorphExchange - indeed works very well. I don't know if the link is still valid.

Yep, that's it. I use it all the time.



Netherworks ( ) posted Wed, 21 August 2013 at 12:31 AM

Quote - I never understand why other content creators don't put PMDs in the Geometries folder or a separate morphs folder. That would free up the cr2 or pz2 file and folder to be moved wherever.

Agree with you.  I do. :)

.


msg24_7 ( ) posted Wed, 21 August 2013 at 4:44 AM

Quote - > Quote - I never understand why other content creators don't put PMDs in the Geometries folder or a separate morphs folder. That would free up the cr2 or pz2 file and folder to be moved wherever.

Agree with you.  I do. :)

Even worse, when you find the .obj anywhere but the geometries folder :))

It's funny, when you have a look at the Poser manual...
you can read about Posers file structure and where every kind of file should go.
Like .obj in a subfolder of geometries, only to find, that most of Posers native content
has the .obj next to the cr2 within the library folder...

They should make it mandatory to put all .obj as well as .pmd (and all other kind of injection) into a subfolder within geometries.

 

Yesterday's the past, tomorrow's the future, but today is a gift. That's why it's called the present.


Snarlygribbly ( ) posted Wed, 21 August 2013 at 6:57 AM

Remove the path to the pmd, leaving just the name of the file.

In the absence of a path Poser will look for the pmd in the same directory as the CR2.

Free stuff @ https://poser.cobrablade.net/


ElZagna ( ) posted Wed, 21 August 2013 at 11:54 AM

I think that only works if you have file search preference set to shallow or deep.



OS: Windows 10 64-bit, Poser: 10


lmckenzie ( ) posted Wed, 21 August 2013 at 3:21 PM

“Even worse, when you find the .obj anywhere but the geometries folder :))”

I can only guess that the original intent was for ‘multi-use’ files to be in a central location. There were a slew of early items that referred to the gold reflection map for instance. Even today we have multiple .cr2s referring to Vickie’s geometry etc. so it makes sense. The alternative seems to be multiple copies or needing to be careful not to delete an .obj when deleting a .cr2 etc. when it still may be being used by something else. It would take an internal database tracking every reference to at least warn you in the latter case I would think. Oops, even then, you’d need to have a way to uninstall from within Poser or a constantly running service monitoring the file system., otherwise Poser would have no way of telling if you deleted something manually.

Now for ‘one off’ items I can see the utility of putting the .cr2 and .obj in the same folder, though it does violate consistency. Neither strategy is without its drawbacks and either one will irk some people I’m sure.

"Democracy is a pathetic belief in the collective wisdom of individual ignorance." - H. L. Mencken


Privacy Notice

This site uses cookies to deliver the best experience. Our own cookies make user accounts and other features possible. Third-party cookies are used to display relevant ads and to analyze how Renderosity is used. By using our site, you acknowledge that you have read and understood our Terms of Service, including our Cookie Policy and our Privacy Policy.