DAZ Studio Unable To Open OBZ Geometry Files [Mostly resolved - But New Problems with P2Z files in L

3dcheapskate3dcheapskate Posts: 2,720
edited January 2015 in Daz Studio Discussion

This thread's now about any problems in DAZ Studio caused by inability to open compressed Poser format files
Original thread title "DAZ Studio Unable To Open OBZ Geometry Files". (Original issue mostly resolved with a workaround (and a bug report's been filed).
The current outstanding problem is that if you compress all the files in your Runtime folder and its subfolders you'll compress Runtime/Libraries/!DAZ, and that causes problems.


I recently compressed all my Poser content libraries - ie. all OBJ files are now OBZ, all CR2 files are now CRZ, etc.

This seems to cause a problem in DAZ Studio (I'm currently using DS3, DS4.5 and DS4.6).
DAZ Studio can open the CRZ files without any problem, but gets stuck when it can't find the OBJ. And there's no option to display OBZ files when you choose to manually locate the 'missing' OBJ.

Hopefully I'm missing something obvious...

(same query posted on Renderosity forum)


Edit: post #7 below clarifies the criteria. DS already opens the OBZ if there's no OBJ. The problem occurs when it can't find the OBJ/OBZ and asks the user to locate it. The "Open File" dialog that's presented ONLY allows the user to select an OBJ file - there is no way to select an OBZ (although Richard pointed out that you can enter the .obz manually in post #8). See annotated screenshot below (from DS3, but it's the same in DS4.6- I just reconfirmed that)

prettypleasemrdaz.png
636 x 444 - 78K
Post edited by 3dcheapskate on

Comments

  • WendyLuvsCatzWendyLuvsCatz Posts: 38,503
    edited December 1969

    Extra drive space is cheap, easiest answer is uncompress those files.

  • MattymanxMattymanx Posts: 6,949
    edited December 1969

    Either defalte the OBJ files or re-write all the file pathes to point to the OBZ files

    Using 7zip or any other compression program should be abel to defalte the OBZ files to OBJ.

  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    Extra drive space is cheap, easiest answer is uncompress those files.

    Absolutely true, but not what I want to do! (but it's always there as a fallback option)

    Really what I want to know is whether DS is supposed to be able to open OBZ files when they're referenced from a CR2 as OBJ files, as Poser does.

    And if not, why not?

    After all, even back in DS3 the File > Import option includes "Wavefront Object (*.obj; *.obz)" - so DS clearly understands the OBZ format.

    Seems like a simple oversight in the coding.

    Post edited by 3dcheapskate on
  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    Mattymanx said:
    Either defalte the OBJ files or re-write all the file pathes to point to the OBZ files

    Using 7zip or any other compression program should be abel to defalte the OBZ files to OBJ.

    Uncompressing all six and a half thousand odd OBZ files is certainly an option (time isn't a big problem, and I wouldn't need to uncompress the CRZ, etc) - I might even be able to do that with the existing disk space.

    Rewriting the paths in the CR2s - even I'm not that much of a masochist ! LOL

    But as mentioned in my reply to WendyCatz post it seems that it's just a really simple oversight in DAZ Studio - I'm really hoping that there's some way I can select the OBZ when I'm asked to locate the OBJ...

    Post edited by 3dcheapskate on
  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    Just submitted "#183728 Feature Request: When Importing Poser Files Can You Automatically Load OBZ" via DAZ3D Help Center .

    "This applies to all versions of DAZ Studio.

    Is DAZ Studio supposed to be able to open OBZ (compressed Wavefront OBJ) files when they’re referenced from a CR2 as OBJ files, as Poser does.

    And if not, why not?

    After all, even back in DS3 the "File > Import" option includes “Wavefront Object (*.obj; *.obz)” - so DS clearly understands the OBZ format.

    If DS doesn't find the OBJ file it allows the user to manually locate the file, but only lets you see "OBJFile (*.obj)".

    Seems like a fairly simple oversight in the coding...."

    I'm keeping my fingers crossed, but I won't be holding my breath - that 'Help Center' seems to be a portal to Limbo... ;o)

    Post edited by 3dcheapskate on
  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    Hmmm...this is really odd !

    I just disconnected from the internet to try something completely unrelated (checking that Reality works with DS3.1.2.32 Advanced (32bit+64bit) and no internet - it does).

    I noticed that I hadn't set up all my runtimes, so I did Edit > Preferences > Directories and sorted that out.

    Then, forgetting the OBZ problem, I loaded "Victoria 3 SAE.crz" - a pop-up appeared saying "Reading milWom_v3.obz", and everything loaded perfectly !

    I opened the CRZ, extracted the CR2 to check and it's definitely referencing the UNcompressed OBJ...

    figureResFile :Runtime:Geometries:DAZPeople:blMilWom_v3.obj

    So it looks like DS3.1.2.32 Advanced happily finds and reads the OBZwhen the OBJ is missing.

    I think I must be going crazy... :oS

    Post edited by 3dcheapskate on
  • 3dcheapskate3dcheapskate Posts: 2,720
    edited December 1969

    Phew ! Not as crazy as I thought - just slightly confused !

    With most of the CRZ files, the associated geometry OBZ is opened and read without any problem.

    The problem only seems to happen with the particular CRZ I happened to be using - one that I'd saved myself with V3 with hair and clothing already parented. The reference in the CR2 that causes the problem is this (the path is wrong, since I moved everything):

    figureResFile G:\Poser\$DAZFigures\Runtime\Geometries\DAZPeople\blMilWom_v3.obj

    An almost identical CR2 that I'd saved myself works fine - the main difference is that the reference in that one is as follows:

    figureResFile :Runtime:Geometries:DAZPeople:blMilWom_v3.obj


    It seems that DS already checks for an OBZ if there's no OBJ.
    But if DS can't find the OBJ/OBZ and asks the user to locate the 'missing' file it doesn't allow the user to select an OBZ - just an OBJ.

  • Richard HaseltineRichard Haseltine Posts: 102,309
    edited December 1969

    You can, as I recall, select and OBZ as long as you hand-type the extension. However, you should rally be allowed to select directly so I think this is worth a bug report.

  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    You can, as I recall, select and OBZ as long as you hand-type the extension. However, you should rally be allowed to select directly so I think this is worth a bug report.

    You're may be right about manually typing the extension (although I haven't tried it), and that'd be a simple work-around if it works.
    The support request mentioned earlier now has a comment to to clarify that the problem's the selection dialog if the OBJ isn't found.
    Is there a separate bug reporting procedure? (it's ages since I last did this!)

    Post edited by 3dcheapskate on
  • fixmypcmikefixmypcmike Posts: 19,598
    edited December 1969

    You can, as I recall, select and OBZ as long as you hand-type the extension. However, you should rally be allowed to select directly so I think this is worth a bug report.

    You're may be right about manually typing the extension (although I haven't tried it), and that'd be a simple work-around if it works.
    The support request mentioned earlier now has a comment to to clarify that the problem's the selection dialog if the OBJ isn't found.
    Is there a separate bug reporting procedure? (it's ages since I last did this!)

    No, bug reports and support requests go through the same system now.

  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    Thanks - I'll keep my fingers crossed that it's deemed a worthwhile fix.

    I've just confirmed that Richard's workaround suggestion, i.e. manually typing the extension, works. And the title bar of the dialog actually gives the full path and filename of the OBJ it can't find. So simply browse to that folder, type in the filename, with '.obz' at the end, and click 'Open' (as shown in the highly professional attached graphic.... ;o)

    It's an easy workaround for just the odd file, but if you have a CR2/PZ3 that references more than a couple of OBJs that are actually compressed OBZs then it can get rather tedious. In fact it's probably easier to edit the CR2/PZ3 and correct the paths for the references! :oS

    ds3-no-obj.png
    693 x 488 - 111K
    Post edited by 3dcheapskate on
  • Takeo.KenseiTakeo.Kensei Posts: 1,303
    edited December 1969

    does it display all files if you just type * ?

  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    To my great surprise, yes it does ! And then you can just select the OBZ from the list and click 'Open' as normal.

    (I'm so very glad I actually tried it out before replying... saves a lot of later embarassment! ;o)

    Edit: And that little * makes locating several OBZ files from a PZ3 far less tedious too - almost bearable in fact! :)

    star.png
    635 x 444 - 80K
    Post edited by 3dcheapskate on
  • Takeo.KenseiTakeo.Kensei Posts: 1,303
    edited December 1969

    I knew that would have worked. That is a trick I used sometimes

    If you want to compress all your OBJ files to OBZ, you really should correct all reference to the object in the DSA or DUF files

    It is pretty simple with a text editor like PSPAD, Notepad++ etc

    The only problem will be that you may have zipped DSA or DUF Files so you have to uncompress them before with DS Batch converter tool

    Then you just have to use a function like "Search and replace in Files", give a filter to the extension, and give the text replacement parameters

    However you have to be sure of what you do because there is no backup of the modified file

    Eventually backup the files before

    There could exist some editors that do the backup before the changes but I don't know of any

  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    I knew that would have worked. That is a trick I used sometimes...
    I think I knew that too... once upon a time, long, long ago... :) I have to say that it does ring a very old, dusty bell !

    ...If you want to compress all your OBJ files to OBZ, you really should correct all reference to the object in the DSA or DUF files...
    I'd only consider doing this if an explicit reference to an OBJ doesn't automatically find the OBZ - is that the case?
    (Most of my content is Poser format anyway so it's not a big problem)

    ...The only problem will be that you may have zipped DSA or DUF Files so you have to uncompress them before with DS Batch converter tool...


    What about encryted (DSE definitely; not sure if there's encrypted DUF) files? You couldn't modify those.

    ...However you have to be sure of what you do because there is no backup of the modified file...
    I keep backups, and backups of my backups, and etc... I'm very much 'old school' on that!

    Post edited by 3dcheapskate on
  • Takeo.KenseiTakeo.Kensei Posts: 1,303
    edited December 1969

    I don't really see a problem if there are encrypted files in the content library. I doubt there are any (unless you encrypt your own files) but in that case you can always resave a preset and delete the old one.

  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    I don't really see a problem if there are encrypted files in the content library. I doubt there are any (unless you encrypt your own files) but in that case you can always resave a preset and delete the old one.

    Nah, I don't encrypt stuff I make. And I just searched all my DS content folders (including default DS3 and 4 content, and most of my Runtime folders) for '*.dse' - seems there's only a couple, and they don't look as if they'll be referencing OBJs.

    dse.png
    228 x 198 - 6K
    Post edited by 3dcheapskate on
  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    ...but what does cause a problem is all those delta injection pose files that I compressed, the ones in 'Runtime:Libraries:!DAZ:Michael 4:Deltas:Base:', etc. The ones that are called via readscript lines from another pose file.

    For example in 'Runtime:Libraries:!DAZ:Michael 4:Deltas:Base:InjDeltas.M4BaseAll.p2z' (which DS seems to have no problem finding and uncompressing) there are loads of readscript lines with references to uncompressed files such as...

    readScript ":Runtime:Libraries:!DAZ:Michael 4:Deltas:Base:InjDeltas.PHMNoseWrinkle.pz2"

    When DS doesn't find the uncompressed file it doesn't check for a compressed .P2Z, and just asks me to locate each file.

    My guess is that every P2Z file under 'Runtime:Libraries:!DAZ:' (around 17,000 files on my system!) needs to be uncompressed again (losing valuable disk space), or alternatively I just need to change all the PZ2s to P2Zs in the readscript lines .(tried searching for those - but the tool (NotePad++ 'Find In Files' option) isn't finding them in the compressed files)

    Post edited by 3dcheapskate on
  • Takeo.KenseiTakeo.Kensei Posts: 1,303
    edited December 1969

    I searched the web a bit and there are not a lot of editors that could handle replacement in Zipped files and none was free

    The other way I see would be to script to open each file, uncompress it, search and replace, then zip it again. That could be done in python or powershell, etc... or even better as a DS Script. That would be the best way as you could include a backup procedure inside the script. However that is not the quickest way as you'd need to write the script first but that could be fun

    I don't know much these 17000 files weight but if you have enough space to do the job once and for all that could be the way to go

    There is just one point I have that just came to my mind. If you just want to gain some disk space, and provided you use MS Windows, you could just search all Obj files and use MS Compression system. Less hassle

  • 3dcheapskate3dcheapskate Posts: 2,720
    edited January 2015

    The whole 17,000 or so compressed files take up about 220MB. Checking a few random P2Zs (so a very limited sample) the average compressed size seems be around 10% of the uncompressed size (the extremes I found were around 2% and 90%).
    I should have enough disk space to uncompress all those. I think I'll use the Python utility within Poser 6 (that's what I used to compress everything in the first place).
    Once I've got them all uncompressed I can search for readscript lines, and decide whether or not to recompress.

    I think I'll amend the title of this thread, since it's gone from a general OBZ problem, which we now have a workaround (and a bug report) for, to a compressed P2Z in the Libraries:!DAZ subfolders problem.

    Post edited by 3dcheapskate on
  • 3dcheapskate3dcheapskate Posts: 2,720
    edited December 1969

    All 17,000 or so P2Z files uncompressed and searched.

    There are thousands of readscript lines (12,547) in them, all with references to uncompressed PZ2files obviously. Loads of different files have these readscript lines (didn't bother counting!), but it's only files under /Libraries/!DAZ/Michael 4 or /Libraries/!DAZ/Victoria 4, and mostly under /Deltas/ subfolders.

    But since the uncompressed size is a mere 833MB (compared to 220MB compressed) I think the easiest option is to NOT compress anything in the /Libraries/!DAZ/ subfolder.

    And then, of course, we also have all the other vendor-specific subfolders of /Runtime/Libraries (e.g. !AerySoul, !KIRWYN, DawnDeltas, VaL, etc) with their ChanVis (Hide/Unhide) and Deltas (InjDeltas/RemDeltas) pose files. I'll have to do a bit more digging, but it may be best to NOT compress those folders either.

Sign In or Register to comment.