• Welcome to the Community Forums at HiveWire 3D! Please note that the user name you choose for our forum will be displayed to the public. Our store was closed as January 4, 2021. You can find HiveWire 3D and Lisa's Botanicals products, as well as many of our Contributing Artists, at Renderosity. This thread lists where many are now selling their products. Renderosity is generously putting products which were purchased at HiveWire 3D and are now sold at their store into customer accounts by gifting them. This is not an overnight process so please be patient, if you have already emailed them about this. If you have NOT emailed them, please see the 2nd post in this thread for instructions on what you need to do

Development pipline for props in DS

Doodle Designs

Eager
Contributing Artist
Hi!

I haven't been active on the HiveWire forums for some time, but have come back so that I can submit a few products. I actually started working on them years ago but didn't finish them. Now I'm "finished" (everything loads and renders well) and I just need to restructure the folders so that I don't use a Content folder (which is how I was told to do it for Daz 3D and Renderosity products in the past).

The questions I have is actually for the next product I develop.

I have a written set of instructions for myself for the development pipeline for creating props and I wrote it many years (and many Daz Studio and Poser versions) ago. At the time, I was developing products for use in both DS and Poser. Now, however, I am limited to DS only products because I have not used Poser for so long I don't remember how to apply materials, and the way it's done in more recent versions is different from when I was using Poser, which is the big sticking point for me against trying to develop for Poser.

My Pipeline seems to me to be too complicated, especially the development of OBJs. After exporting from Hexagon, I pass the OBJs through several more steps involving UV Mapper and Poser before I send them to DS. I also have instructions on writing a DS script to go with the .pp2 files so that the textures are loaded properly in DS. I believe that this pipeline is more complicated than need be for the newer version of DS (I have V. 4.9, 64-bit).

Can anyone tell me what their pipeline is like? It doesn't matter if you use different modeling software than Hexagon - it's the steps after the modelling of the props that I need to know.

Here's my old instructions for my pipeline:
Creating Props in DazStudio 3.0

- Create prop in Hexagon using actual size measurements in centimeters. Group the entire object and set the group position x/y/z to 0/0/0.

- File > Export as obj file: Export scale factor 1. Uncheck Export Normals and Merge Groups.

- If modified UV mapping is needed, use UVMapper
- File > Open Model for each obj
- Create new map using tools
- File > Save Model to save new obj
- File > Save Template to save map

- Import mapped obj's into Hexagon and save as new file

- Re-export all obj's: File > Export each piece as obj file. Export scale factor 1.

- Using Daz Studio 3.0, one at a time, import the object(s) with File > Import using the Custom preset option (set to 100%). Export each object with File > Export to a Runtime/Geometries folder using the Poser preset option (0.410105%). Under the Advanced tab, change Write Groups option to Use Existing Groups. Uncheck Write Material Library.
- If applying Morphs, repeat this step with each morph obj and save obj. You will load the morphs in Daz Studio step below.

- In Poser, import the prop through File > Import > WaveFront OBJ. Check Centered, Place on Floor, and Make Polygon Normals Consistent. UNCHECK PERCENT OF STANDARD FIGURE SIZE.
- If applying morphs, import morphed obj then export as obj. Single Frame checked, uncheck GROUND, check only "As Morph Target".

- Save in Poser Prop folder. (Original obj only - no morphs.)

- Set up the materials in most recent version of Daz Studio and save the material file.

- Render an image of the figure at size 91 x 91 pixels. Save it as a png file in the same Runtime/libraries/Props folder as the prop and in the Content/Materials folder for the saved material setting. Make sure the file name matches the corresponding cr2 and material file.

- To have the Daz Studio materials automatically applied to the cr2 file when it's loaded in Daz Studio, do the following:
- Open the material .dsb file previously saved in the Content/Materials folder in the Script IDE tab (View > Tabs > Daz Script IDE).
- Find the following line of code:

DsActions.prototype.begin = function()
- Add the following code BEFORE it:

// Code added to automatically apply materials to Poser cr2
/*********************************************************************/
DsActions.prototype.collectNodes = function( bSelected, bRecurse, bFromRoot ){
var origNodes, ourNode;
var n , m;

if ( getArguments().length == 0 )
return [];

origNodes = Scene.getNodeList();
if ( App.getImportMgr().readFile( getArguments()[0] ) == 0 ) {
var newNodes = Scene.getNodeList();
ourNode = undefined;
for( n = 0; n < newNodes.length && !ourNode ; n++ ) {
ourNode = newNodes[ n ];
for ( m = 0 ; m < origNodes.length && ourNode ; m++ ) {
if ( ourNode == origNodes[ m ] )
ourNode = undefined;
}
}
if ( ourNode )
return [ ourNode ];
}
return [];
}
/*********************************************************************/
// End of added code
/*********************************************************************/

- Then find the following line of code:
this.m_aNodes = g_oSceneHelper.collectNodes( true, true, true );

- Replace it with this code:
//========================================
// Following code was replaced so that Daz materials would be applied automatically to cr2 figure
//========================================
this.m_aNodes = this.collectNodes( true, true, true );
//========================================
// End replaced code
//========================================

- Save the new material script in the same Runtime/libraries/Props folder as the cr2. Make sure that the file names match exactly. When the cr2 file is loaded through the Daz Studio Content tab, the material script will automatically be run.

- Create script that loads the Poser prop. Save this script in a Content/props library folder. Add a rendered png file image (91x91) with the same name to the folder.
//*******************************
// Script to load a Poser prop
//*******************************
function getPoserFigure()
{
numK = App.getContentMgr().getNumPoserDirectories();
var sPath;
for( k = 0; k < numK; k++ )
{
sPath = App.getContentMgr().getPoserDirectoryPath( k );
if( App.getContentMgr().openFile( sPath + "/Runtime/libraries/Props/Doodle Dream Designs/Bathroom Accessories/Towel Bar.pp2" ) )
return true;

}
return false;
}
if( !getPoserFigure() )
MessageBox.information( "Poser prop file not found", "Error ", "&OK" );

Now the figure can be loaded into the scene either by going to the Content/props or the Runtime/libraries/character folder and all Daz materials will be applied automatically.

NOTE: You may want to save all the created scripts as encrypted scripts before packaging the product up for sale.
 

Doodle Designs

Eager
Contributing Artist
I should also ask - Should I develop my products for DS 3 or 4?

DS 3.0 gives accessibility to more people (if there are some still running older versions) but I have to say that I really like the way 4 labels the thumbnail pictures in the content libraries with what type of script they are for (Material, Shader, Scene, Set, etc.).

Also, I have a partially developed product that has a LOT of .dsa scripts which I wrote (developed for DS 3.0). DS 4 uses .duf files. Does it also have a new scripting language, or are any needed scripts still written in the same script language as for 3.0? I know .dsa scripts will still work in DS 4, but I was just wondering if DS made changes to the way scripts are written.
 

Doodle Designs

Eager
Contributing Artist
Sorry I can't help you with any of the above as I don't know but if it helps about what option to develop for... HiveWire To Support Poser 10/Pro 2014 And DAZ Studio 4.8 And Above... but that doesn't mean you can't do earlier options if you want :D
Thanks for the link!

I am currently running DS 4.9 and don't have a download for 4.8. The next most recent version I have the installer for is 4.6.

After reading that thread, I'm still up in the air about what version of DS to develop for. I am completely ignorant of how to use IRay and don't know how that will affect materials and renders. I did most of my render testing in 4.6 a few years ago and they looked fine. (Haven't used DS for a few years at all.) I've done some rendering of the product in 4.9 and haven't noticed any problems, but I'm thinking I need to pay closer attention - maybe try some renders in older versions of DS and compare to 4.9 renders.

I just checked, and I still have the following versions of Daz Studio installed:
- 2.3.3.146
- 3.0.1.144 (32 bit)
- 3.1.2.32 (64bit)
- 3.1.2.32 (32 bit)
- 4.6 (64 bit)
- 4.6 (32 bit)
- 4.9 (64 bit)

Um, holy cow! That's a lot of versions! I guess I have so many because my laptop is a Dell M4400 (with Windows XP Professional x64 Edition, Version 2003, Service Pack 2). Yeppers - I have an OLD computer! LOL

I have only one version of Poser - 7.0.2.132, but most of my experience with it is from version 4.

The product I'm working on is a scene (glass block bathroom) and two sets of props to go with it. Since I don't know if what I develop with 4.9 will be compatible with the HiveWire supported 4.8, I'm thinking that I'll use 3.0, like in my pipeline instructions. Since the files seem to be working just fine in 4.9, I think that they'll likely work in 4.8 too. I'll see if I can find a beta tester with 4.8.

So now I'm thinking that I just might need to keep using 3.0 for creating any future products too - just to not only ensure that they'll work with 4.8, but also because the products will work for people who are using older version of DS.

So, unless anyone can tell me why that's not a good idea, I'll just go with that.

The following are testing renders.

GLASS BLOCK BATHROOM



BATHROOM ACCESSORIES



ACCESSORIES FOR HIM AND HER (and ALL)



 

Gadget Girl

Extraordinary
Contributing Artist
Your bathroom looks really nice. I'm more of a Poser user than a DS user, but I will say since it's a set of props, as long as it's not making you're life more difficult why not support DS 3.0? The main reason so many things do require newer versions is because of things like weight mapping that affect rigged figures (but generally figurers with things like muscles, even if you've rigged some doors in your scene, weight mapping wouldn't benefit them).

And it looks like you've got a great set of materials for 3DL. I know that a lot of people still prefer 3DL to Iray because it works better on their machines. That being said, I would make sure when you get some testers that the scripts you have work well in the newer versions. I've never had much luck figuring out DS scripting, so I can't tell you how much it may have changed. It would seem to me that would be the most likely thing to cause you problems in supporting multiple versions.
 

tparo

Engaged
QAV-BEE
To be honest I think you may be wasting your time supporting DS 3 very few are still using it, DS is free so people tend to upgrade so supporting it makes the most sense even if you only support 3dl . I think trying to support 3 will be more work than is worthwhile, remember it needs to be fully tested in both versions.
Its a while since I used 3 and don't have it installed any more but I think you will find there are several differences, using DS 3 to create products will not ensure that they work in 4.8 and above I'm afraid you might well find you have quite a few problems.
 

Rae134

Renowned
CV-BEE
Contributing Artist
I know someone in RL who would love your bathroom (besides black, white and silver her fave colour is purple) :D

4.9 still uses 3Delight, and I haven't really noticed a difference between 4.8 and 4.9 except on some Iray skin settings which wouldn't effect your room. But if you were worried about it supporting 4.8 you could always make it compatible with 4.6, but I did notice a change between 4.7 and 4.8 (I don't know if it was just the addition of Iray or not but I'd only just started to use DS just before .8 come out so it could have been just being a newbie).
 

Art_of_Mind

Engaged
Contributing Artist
If these are all obj's and your exporting out the obj's from DS2 or above the Ob's should load in any of the above versions of studio or Poser. Everything is loading for you in all versions of DS right? If so you should get a beta team ready. If I'm reading right did you say you were saving out as scene files, I do not think this is a good idea. You could at worst case, leave all your obj's as your Poser version and resave them out as .duf files for the DS users.
 

LisaB

HW3D Vice President & Queen Bee
Staff member
Co-Founder
I create in poser then open the poser prop in DS, change materials for DS, save the prop as a duf and also save the material preset. It goes quickly unless there are morphs involved, then it's a bit slower. I would leave DS3 behind though and go for DS4.
 

Doodle Designs

Eager
Contributing Artist
Thanks for all the helpful responses!

After considering all your input, I thought that I'd move on to DS 4 so I decided to skip the DS 3 step and move objects from Hexagon to Poser 7 to DS 4 - i.e. import objs into Poser, save as Poser props, load pp2's in DS4.9, apply materials, and save into the DS prop folder (as Scene Subset). I will still be writing a DS script that is placed in the folder with the pp2's so that if a DS customer loads the prop from the Poser prop folder, rather than the DS Prop folder, the materials will be applied properly. (Unless anyone knows of a different/better way to do this.)

However, I discovered an oddity - when I import the objs into Poser 7, I have to use an odd percentage for the import in order for the object to be the correct size- 3.75%. When I import the same obj into DS (any version) I just use the Hexagon preset, which uses 100%.

Any idea why the odd Poser import percentage?

I also thought to skip the Poser step and instead import directly from Hexagon to DS4.9, but discovered another oddity - anctuall more a problem since it fdorces me to go through an additional step. DS4.9 places the prop's "center" at the BOTTOM rather than the true physical prop center, which would make posing difficult. And, another oddity, if I load the Hexagon obj into DA3.0, the center is properly located. What's up with that? :confused: In other words, I COULD skip the Poser step, except that DS4.9 doesn't place the prop center correctly. It doesn't seem right that developers are forced to purchase Poser, just so they can get the proper prop center.




I know someone in RL who would love your bathroom (besides black, white and silver her fave colour is purple) :D

Actually, the bathroom default colors are black, white, and silver - your friend's favorite . The purple and brass is just one of a dozen other material color choices. I was using the purple because, like your friend's second fave, my fave color is purple. ;)
 
Last edited:

Pendraia

Sage
Contributing Artist
I always had difficulty getting scale for Poser right in Hexagon. I've always gotten around that by sending it to DS and exporting it using poser scale as an object.

I would also suggest not to worry about DS3 from memory the last version of DS3 only had the beta for shadermixer and many things have changed. You would also find most people would be using 4.5 or above. You do get the rare exception who haven't progress from DS3 or DS4 but it is rare due to DS being free.
 

Doodle Designs

Eager
Contributing Artist
I always had difficulty getting scale for Poser right in Hexagon. I've always gotten around that by sending it to DS and exporting it using poser scale as an object.

That's what I am doing, but I have to use DS 3.0 because it imports the OBJ with the proper center while DS 4 does not (see images in last post). I wonder if it has to do with me exporting from Hexagon with the object at the 0,0,0 (x,y,z) position? I'll try saving the OBJ "on the floor" from Hexagon and see if that makes a difference.

I have no difficulty I import at 100%..untick the boxes...
These are my export options
View attachment 15545

Ah, ha! I see the difference from my own options - I've been using 100% rather than .001. Thanks! I'll give that a try.
 

RAMWolff

Wolff Playing with Beez!
Contributing Artist
My suggestion would be to develop for DS 4 up... that way you have access to the newer file formats like .duf

Your stuff looks very cool! Welcome! :)
 

Pendraia

Sage
Contributing Artist
That's what I am doing, but I have to use DS 3.0 because it imports the OBJ with the proper center while DS 4 does not (see images in last post). I wonder if it has to do with me exporting from Hexagon with the object at the 0,0,0 (x,y,z) position? I'll try saving the OBJ "on the floor" from Hexagon and see if that makes a difference.
That sounds like a bug which version of DS4 are you using?
 

Doodle Designs

Eager
Contributing Artist
My suggestion would be to develop for DS 4 up... that way you have access to the newer file formats like .duf

Your stuff looks very cool! Welcome! :)

I have decided to go with DS 4. And thanks for the nice comment.:)

That sounds like a bug which version of DS4 are you using?

I have DS4.9. I checked importing several more times and it still isn't putting the object center in the right position. :(
I don't have the DS4.8 installer, and I'd prefer to develop using the version supported by HW.

:please: Does anyone have the installer for DS 4.8 - preferably for Win 64-bit, but Win 32-bit will do in a pinch? Maybe someone could upload it to Drop box or a similar site?
 

RAMWolff

Wolff Playing with Beez!
Contributing Artist
You may want to bypass your desire for 4.8, there was an iRay bug in there that 4.9 fixed so I never backed up that exe and was very happy to upgrade to 4.9. iRay is the future of DAZ Studio so the quicker you learn the ins and outs of that render engine the less stuck you will be moving forward. Plus it's easier to downgrade from iRay to a base 3Delight shader than vice versa. Just select your item in the Scene tab, Select all the surfaces in the Surfaces tab and click on the dzDefault shader and it will convert down. Stuff like skin usually needs a little adjustment and metals can be a little flat but other than that yea, easier in my opinion...

ScreenHunter_260 Sep. 12 08.43.jpg
 

Doodle Designs

Eager
Contributing Artist
Okay! You guys have convinced me - DS 4.9 it is!

BTW - thanks to Thomas Windar on the Daz 3D forums, I have a solution to the manipulation point problem:
  • As I described in my first post, use actual real-world measurements while modelling the prop and export the OBJ from in the 0/0/0 position.
  • Map the prop and assign material zones and names.
  • Import it into DS 4.
  • Go to Window > Panes > Tool Settings and input zero into the Y Position parameter.
  • Use CTRL + D to move the prop to the view floor.
A LOT faster and easier than going through the DS 3 and Poser steps. :rolleyes: I just KNEW there had to be an easier way!

I'll keep working on my instructions for the pipeline (not PIPline ;)) and create a document for anyone who may be interested. Probably an RTF file first, so that I can use bolding and color on the text, and then later on I'm hoping I'll find time to create a PDF file so that I can include screenshots. I have a box.com account and can put the document(s) there and post a link on this forum.

Maybe it will save a newbie in the future from a lot of the frustration I've gone through trying to figure out the whole process. It won't be a tutorial on modelling, mapping, texturing, or using Daz Studio, but it will at least give beginners a place to start in figuring how to get their prop models into DS.

I also figured out that if I export from Hexagon with a scale of 1.000 and use the Hexagon import option in DS 4, the prop will be sized correctly. I think my problems with the scale in my old pipeline came from passing the OBJ thru Poser. Now that I've eliminated that step (and the DS 3 step for centering the manipulation point) the prop scale is more straight-forward.

Also, I will learn to use iRay, of course. Just not at this moment because I've already finished all the materials using 3Delight to render. I had started creating these props before iRay came to DS.

Thank you again to everyone for the help! It is greatly appreciated. :D
 
Top