Developed By:
Developed For:
Authored By: Rob Whisenant, © 2006 DAZ Productions
This technology does the following:
Removes the reliance on a limited predefined list of channels as a means of supplemental content distribution
Addresses the probability of conflicting products due to attempts to occupy common/shared channels
Maintains compatibility with legacy products by continuing to provide predefined channels
Each of the solid arrows in the above diagram represent a
readScript call
Each of the dashed arrows in the above diagram represents a consolidation of the information into a single file
Each content developer provides the Secondary level files that define their product
A command-line utility automatically generates the Primary level files (based on the contents of the actor named subdirectories)
Each actor in the cr2 contains two separate
readScript calls
One for declaring the product's parameter group hierarchies (groupNode, parmNode, etc.), for that actor; located within the groups clause of a given actor
One for declaring the product's channels (valueParm, targetGeom, etc.), for that actor; located in the channels clause, following the groups clause
-
This call is made just above the figure clause;
due to the fact that the actors and channels being referenced by Enhanced Remote Control (ERC) declarations in the pose must exist prior to making those declarations
The cr2 contains a single
readScript call for a
Primary LinkParms pose
Each
readScript'ed file must be uniquely named to prevent Poser from loading the wrong file
1)
Primary level file names must be unique to prevent loading files for another figure;
DAZ uses an abbreviated representation for the figure2)
Secondary level file names must be unique to prevent loading files for another actor of the same figure;
DAZ uses an actor index from within the cr23)
Secondary level file names must be unique by product;
DAZ uses the product code from the online store4)
The
Primary Grps file is
in-line formatted and is used to consolidate the contents of
Secondary Grps files;
this is done to work around the destructive nature of group declarations in Poser
The
Secondary _Grps files are
in-line formatted and are used to establish parameter group hierarchies for channels
The
Primary Chnnls file is
in-line formatted and is used to call the
Secondary Chnnls files
The
Secondary _Chnnls files are
in-line formatted and are used to establish the channels of an actor
-
The
Secondary _
ERC files are
pose formatted and are used to establish
ERC linkages between channels
The
Primary LnkParms file is
in-line formatted and is used to call the
Secondary LnkParms files
The
Secondary _LnkParms files are
in-line formatted and are used to establish 1 to 1 linkages between channels
Example:
{
version
{
number 6
}
}
Example:
{
version
{
number 6
}
groupNode My Morph Group
{
groupNode My Morph SubGroup
{
parmNode myChannel
parmNode myOtherChannel
}
}
}
Example:
{
version
{
number 6
}
actor myActor:1
{
channels
{
valueParm myChannel
{
valueOpDeltaAdd
ControlFigure
ControlActor
ControlChannel
deltaAddDelta 1.000000
}
}
targetGeom myOtherChannel
{
valueOpDeltaAdd
ControlFigure
ControlActor
ControlChannel
deltaAddDelta 1.000000
}
}
}
}
The utility resides in the ”/Runtime/libraries/!
DAZ” directory
Batch files (PC) or shell scripts (Mac) reside in the ”/Runtime/libraries/!
DAZ” directory for each figure the technology is used in
Syntax: DzCreateExPFiles ”
figureDirectory” ”
figurePrefix”
5)
This utility automates the creation/update of the Primary files based on the contents of each actor sub-directory; excluding only the “Deltas” sub-directory which is reserved for companion delta injection/removal files
Only actor level sub-directories are processed; any further nesting of directories is ignored
Only files bearing these predefined suffixes are processed: “
_Grps”, “
_Chnnls”, “
_ERC”, “
_LnkPrms”
The order of sorting in the Primary files generated is dependent on the last modified timestamp; reverse chronologically, so as to place the last edited files first, rather than have developers compete for the top position by using special characters in the filename
Files with the “_
DAZ” pre-suffix
6) are placed at the top of the sorted order;
chronologically; this should only be used for CORE products, even at DAZ