DAZ Studio 4.x Scripting Documentation

rbtwhizrbtwhiz Posts: 2,171

As we seem to have many questions relating to the current state and availability of what has been previously known as the Scripting Kit, for DAZ Studio, I wanted to post a link to the Scripting section of the Documentation Center. This is where the scripting documentation for DAZ Studio 4.x will live and evolve.

Yes, at the moment, it is incomplete... this will change over time (most of which is my own - so please understand that I have a "RealLife™" to tend to as well). I have made frequent changes to this area of the DAZ Studio 4.x Reference Guide, and I will continue to do so. There are already quite a number of heavily commented Samples to begin dissecting, and I am currently working on solutions to populate the rest of the API Reference.

For those of you who have been anxious to have access to the Script IDE pane within DAZ Studio again, you'll be happy to know that it is now part of the standard distribution footprint for the application itself and is included with DAZ Studio 4.5 Pro.

Thank you for your patience and understanding.

-Rob

Post edited by rbtwhiz on

Comments

  • adamr001adamr001 Posts: 1,322
    edited December 1969

    Thanks so much Rob. Definitely missed my Script IDE.

  • SyndarylSyndaryl Posts: 521
    edited December 1969

    Thanks Rob, your work on the docs and support in the forum here has been pretty heroic.

  • CypherFOXCypherFOX Posts: 3,401
    edited December 1969

    Greetings,
    Hmm! Now I'm going to have to download 4.5; I've been itching to script DAZ for a while, but it wasn't clear how...

    Unfortunately w/o Reality, I can't really use it for day-to-day renderings, but I'll definitely check it out for the scripting.

    Thanks!

    -- Morgan

  • TugpsxTugpsx Posts: 732
    edited December 1969

    thanks again. Now the development continues.

  • KGKG Posts: 0
    edited December 1969

    Hi

    I see that most of the links for the scripting reference are broken, do you guys have a link to the documentation
    for the previous version of the script? I would like to see the scene hierarchy structure and what methods are available for each object

    Thank you!

  • Richard HaseltineRichard Haseltine Posts: 96,217
    edited December 1969

    The links aren't broken, the object references simply haven't yet been added. The old DS3 docs are here http://www.daz3d.com/shop/daz-studio-3-script-development-kit - note that because it also installs a plugin, the editor pane, you wil need to have a path to DAZ Studio 3 in your dzinstall.ini file - either by editing or by having installed DS3.

  • KGKG Posts: 0
    edited June 2012

    Thanks Richard!

    Weeks ago I tried to install it but could not because it requested the DS3 installation which I dont have! but I will try editing the file manually

    Do you know what percentage is the old Scripting API the same as the one of 4.5 ?

    By the way, is the API the same for the SDK and the scripting?

    Another question, is DS3 available for download?

    Thanks!

    Post edited by KG on
  • Richard HaseltineRichard Haseltine Posts: 96,217
    edited December 1969

    I'm not sure as a percentage - a lot of the functions are stil there, though some objects have been split to allow for weight-mapping (in DS3, DzSkeleton is the figure type, except for dynamic clothing, but in DS 4 it is a container class with legacy figures being DzPoserFigure and TriAx figure DzFigure as I recall) so you should be more careful to use inherits( objectName ) instead of isA( objectName ), for example.


    The SDK is different from the scripting kit - some classes are the same as script objects, but others are different or even missing (scripts have several abstractions for things that seem to need building from scratch in C++) while other things are available to the SDK but not to scripts.


    DS3 was available through a forum post on the old forum, but I don't believe that works any more following the switch.

  • KGKG Posts: 0
    edited December 1969

    Thanks for the info, appreciated!

    I m really impressed of how many projects DAZ is handling at the same time,
    also the engineering level behind the software is quite good!,

  • spacecat56spacecat56 Posts: 54
    edited December 1969

    ... you wil need to have a path to DAZ Studio 3 in your dzinstall.ini file - either by editing or by having installed DS3.

    This was very helpful, with a bit of flailing I've been able to install and access the old docs. And it's like you just turned on the lights in a dark room!


    It was not easy to install, though. The d/l links for DS3 - all the ones that I could find - are broken. I had an old 32-bit DS3, so I installed that. The DS3 SDK still refused - "install path not found". After a number of trials, I found that what I needed was an entry like this:


    dzStudio3InstallDir-64=C:\Program Files (x86)\DAZ 3D\DAZStudio3


    in the copy of dzinstall.ini in my C:\Program Files (x86)\Common Files\DAZ directory; the -64 was essential, even though actually being 64-bit software was not; and so was finding the right one of three copies of dzInstall.ini found in three different locations.


    To find out how restrictive this is, I tried again on a different machine without installing DS3. When I created a dummy directory, C:\Dummy\DAZStudio3 and added a dummy file DAZStudio.exe, and edited the copy of dzInstall.ini in the same location as noted above, it was enough to complete the install of the old SDK.

  • Neon22Neon22 Posts: 8
    edited December 1969

    So 4.5 is officially out now. Congrats.
    What's the status with the scripting. I have many old ones to update.

  • rbtwhizrbtwhiz Posts: 2,171
    edited December 1969

    My original post is as true today as the day I posted it. I have made some ground on producing content for the Object Index portion of the API Reference, but I haven''t posted the pages because they don't include descriptions yet. With all of the work involved in getting 4.5 released, I've had no time in the last few weeks to work on it - I'm hoping to find some this weekend.

    -Rob

  • rbtwhizrbtwhiz Posts: 2,171
    edited December 1969

    It was decided a while back that we would phase out our DAZ Studio 3 offerings in the store - i.e. DS3 hasn't been in the store for quite a while, the DS3 SDK hasn't been available for a few weeks now and the DS3 Script Development Kit is about to follow any day. I still haven't had the time I've wanted/needed to get the DS4 script API documentation in a state that it makes sense to post (I'm still working on it, on my own time, but it simply isn't ready), so I've posted the documentation and samples from the DS3 Script Development Kit on the DAZ Studio 3 page of the Documentation Center - since a significant portion of it is still applicable, if not very much the same. A DAZ Script API link on the page points to a simple zip archive with the appropriate folder/file structure to be dropped into the installed application path (e.g. there is no installer - OSX users should be careful to merge and not replace).

    -Rob

  • Richard HaseltineRichard Haseltine Posts: 96,217
    edited December 1969

    Thanks Rob.

  • athenenoctuaathenenoctua Posts: 0
    edited December 1969

    Just for the record--I've been a technical writer and a software tester at various times in my life--

  • rek_2158272rek_2158272 Posts: 0
    edited December 1969

    Soooo.....

    How is the documentation coming along?

    Is it possible to, at least, publish a list of changes since DS3?

  • ThePatrickThePatrick Posts: 0
    edited December 1969

    Good to see, that there is at least a little documentation for the new scripting.

    BUT:

    There are still huge gaps (huge enough to drive a ocean liner threw them). Not only the many red links (that are not broken, but just not yet filled) but also the many topics just not touched or listed anywhere.

    I stumbled along one: Loading of a scene file.

    I have a script that works perfectly for DS 3.1, which loads a scene (.daz) and then renders the scene. This script works also fine under 4.5, **as long** as the scenes are .daz-Files ... but when I select a .duf-File, it just loads nothing (and also does not show any kind of error message, even in the log).

    Could anybody please provide a documentation or at least an example, how a duf-Scene-File can be loaded in daz script. I hope, at least the rendering will then still be the same.

    The class, I used in DS3.1 is not documented in the 4.5 scripting documentation any more and I even guess, that I need a different class now -- but I could not find any fitting class in the documentation. Even the class that is used in the examples for saving is not documented at all.

    PLEASE, PLEASE: The new scripting is now very old and you even don't support DS 3.1 any more in any way -- would you PLEASE provide adequate documentation with either a complete class documentation (all classes) or at least examples for *all* sensible usage scenarios (not only some selected ones).

    At least, can somebody tell me, how loading is working now?

  • Richard HaseltineRichard Haseltine Posts: 96,217
    edited December 1969

    This is how I do it in my (in progressish) update to the script for making DS content loadable from a Poser content directory (where fullPath is the abslute path:

    // Load content file helper script
    // Copyright (c) Richard Haseltine, September 2013
    
    // Load, by default, or browse to using the OS,
    // if ctrl+shift (Win)/cmd+shift (Mac), a named 
    // file. This is a helper script for PropDSFiles2
    
    // Relative path to file
    var fileName = "/relative path/file.duf";
    // State of the modifier keys, to check for ctrl+shift
    var modKeys = App.modifierKeyState();
    
    // Content Manager, to get the absolute path
    // and to import if needed
    var cntMgr = App.getContentMgr();
    if ( cntMgr ) {
     var fullPath = cntMgr.findFile( fileName );
     if ( fullPath != "" ) {
      // If ctrl and shift were both held, browse to file
      // otherwise load it
      if ( ( modKeys & 0x002000000 ) && ( modKeys & 0x004000000 ) ) {
       App.showInNativeBrowser( fullPath );
      }
      else {
       cntMgr.openFile( fullPath );
      }
     }
    }
  • ReisormocapReisormocap Posts: 146
    edited December 1969

    I'm getting an error on trying to access the Documentation Center. It appears to be down at the moment. Is there an alternative resource or estimate of when it might be back up?

  • Cris PalominoCris Palomino Posts: 11,142
    edited December 1969

    I believe they are working on it. What information are you trying to find? There may be alternative sources.

  • Curved DesignCurved Design Posts: 61
    edited December 1969

    I believe they are working on it. What information are you trying to find? There may be alternative sources.

    Can you guys help me out!

    Where is the DAZ Script API documentation on the "App" object?

    I've seen examples like...

    var DSVersion = new Number( App.versionString );

    debug( "DSVersion " + DSVersion );

    What else an I get from the App object?

    For example, I'd like to get the App platform? (i.e. Mac or PC)

    Is some documentation available on all of the available App object methods?

  • Richard HaseltineRichard Haseltine Posts: 96,217
    edited December 1969

    App is a global object of the type DzApp. DzApp is documented in the DS3 scripting docs, available here http://docs.daz3d.com/doku.php/public/software/dazstudio/3/start , though some care needs to be taken as there have been changes for DS 4

  • 3dcheapskate3dcheapskate Posts: 2,689
    edited April 2020

    (Deleted - should have read the last post first!  ;o) )

    Edit (30 Apr2020): Just adding the link to the online documents:

    http://docs.daz3d.com/doku.php/public/software/dazstudio/4/referenceguide/scripting/api_reference/start

     

    Post edited by 3dcheapskate on
  • volpler11volpler11 Posts: 29

    just realized in the documentation for for DzAsset, originalPath and  originalFilename are misspelled as orginalPath and orginalFilename. ahhhhhhhhhhhhhhhhhhhhhh,

Sign In or Register to comment.