Daz Generations Converter

Other Daz Generations Converter

Chokaphi

Well-known member
Featured Contributor
Messages
238
Reactions
1,074
Points
93
Chokaphi submitted a new resource:

Daz Generations Converter - Blender script to transfer shapes between Daz Genesis figures

This is a plugin for Blender

It is a WIP that I have been working on for Daz Studio but might be useful for VAM as well.

In Preparation for VAM 2.x and the need of Genesis 8 morphs, this Blender plugin that allows you to convert one Daz Genesis Generation's shape to another Generation's mesh.
So you can freely convert shapes between G2, G3, G8, and G8.1 using Blender.


I have a basic tutorial PDF at the mega link but this is...

Read more about this resource...
 
From a quick skimming of this, this only does morph conversions, not texture conversions between Genesis versions right?
 
From a quick skimming of this, this only does morph conversions, not texture conversions between Genesis versions right?
Correct, this is just for morphs.

There are tools, and tutorials for texture transfer using Blender, Mari, Substance, Maya already out there.
 
Heya,

Just wanted to feedback that this does not work for me at all, I cant get the button to activate in blender it just stays greyed out.

I'm following the guide to the letter exporting both models in base res & subd0 as daz studio format (is it daz studio format I should be selecting? you skipped this important step...) and nothing works. Iv tried poser format too for export and again fail.

Any help would be hot.

J
 
Hi,
This is an awesome piece of work as usual and a great alternative for those who don't want to go down the rabbit hole with R3DS Wrap.
Just a couple of observations from me...

1. 'Convert' option worked first time, but closing and re-opening Blender it stays greyed out unless you disable and re-enable the plugin from the add-ons menu
2. It seems to suffer from the same issue as converting between generations using fit to within Daz, in that eyeballs and lacrimals are distorted. I used G2 and G8 models and tried converting both directions and it happened with both.
3. In the guide you have 'Be sure to Check [Keep Vert Order] on the importer. Did you mean to say 'Be sure to Uncheck'? Think it would be clearer if users knew whether to tick or untick the 'poly groups' box
 
Hi,
This is an awesome piece of work as usual and a great alternative for those who don't want to go down the rabbit hole with R3DS Wrap.
Just a couple of observations from me...

1. 'Convert' option worked first time, but closing and re-opening Blender it stays greyed out unless you disable and re-enable the plugin from the add-ons menu
2. It seems to suffer from the same issue as converting between generations using fit to within Daz, in that eyeballs and lacrimals are distorted. I used G2 and G8 models and tried converting both directions and it happened with both.
3. In the guide you have 'Be sure to Check [Keep Vert Order] on the importer. Did you mean to say 'Be sure to Uncheck'? Think it would be clearer if users knew whether to tick or untick the 'poly groups' box
Hi mate ,seeing it suffers the same fate as in daz with distorted eyes, i will give the plugin a pass .
 
Last edited:
1. 'Convert' option worked first time, but closing and re-opening Blender it stays greyed out unless you disable and re-enable the plugin from the add-ons menu

Okay doing this got my button to work and got my morphs over to G2. Magic!
 
Hi mate ,seeing it suffers the same fate as in daz with distorted eyes, i will give the plugin a pass .

Your mileage is going to vary on whether everything will work between Blender versions.

I would just grab the latest portable version of Blender and use portables going forward.
That way you can run as many release versions as you like (I currently have 4)

I gave up trying to port my texture template from 2.79 because every version from 2.8+ of cycles bake produced totally different results.
 
Your mileage is going to vary on whether everything will work between Blender versions.

I would just grab the latest portable version of Blender and use portables going forward.
That way you can run as many release versions as you like (I currently have 4)

I gave up trying to port my texture template from 2.79 because every version from 2.8+ of cycles bake produced totally different results.
Your right mate , i have so many plugins for 2.79 even a daz importer and alternate between the new and old version
your texture conversion is still great though , it works really well.
i hope Chokaphi does an update on the plugin .
 
Heya,

Just wanted to feedback that this does not work for me at all, I cant get the button to activate in blender it just stays greyed out.

I'm following the guide to the letter exporting both models in base res & subd0 as daz studio format (is it daz studio format I should be selecting? you skipped this important step...) and nothing works. Iv tried poser format too for export and again fail.

Any help would be hot.

J

I will clarify the tutorial on the Daz export, I have not changed my settings in sometime and overlooked it.


Hi,
This is an awesome piece of work as usual and a great alternative for those who don't want to go down the rabbit hole with R3DS Wrap.
Just a couple of observations from me...

1. 'Convert' option worked first time, but closing and re-opening Blender it stays greyed out unless you disable and re-enable the plugin from the add-ons menu
2. It seems to suffer from the same issue as converting between generations using fit to within Daz, in that eyeballs and lacrimals are distorted. I used G2 and G8 models and tried converting both directions and it happened with both.
3. In the guide you have 'Be sure to Check [Keep Vert Order] on the importer. Did you mean to say 'Be sure to Uncheck'? Think it would be clearer if users knew whether to tick or untick the 'poly groups' box

1. The bit of script that hooks blenders selection change is probably broken due to my piss poor python skills. So the button isn't evaluating selection changes.
3. We need to make sure Blender Keeps vertex order so I will clarify that in the tutorial.

This is still a very early version, that uses a generic vertex based movement across the entire mesh. So each vertex is moved individually.

Still TODO:
  • I have plans on moving the eyes and mouth as group based approach.
    So it will move the entire eye as a unit then attempt to match the scale and position of the targets eyes. Basically automating the "reset eyes and reposition" workflow. This should avoid all the distortion issues currently and the mouth collider issues, but is still incomplete.
  • Add a relax or mesh smoothing/Laplacian smoothing modifier to the final mesh which helps resquare the mesh.
  • Better mesh conformity data for calculating neighbors.
  • Using multiple neighbors when calculating the output position of the vertex. Currently only nearest neighbor is used
 
Really looking forward to seeing how this evolves Chokaphi.
It obviously hooks in perfectly with your Vam to Daz tool and seriously lowers the barrier to entry for those wishing to convert.

It does surprise me that the Daz community haven't come up with a streamlined conversion workflow like this.
I understand why Daz themselves make it rather obtuse - all about reselling assets every generation.

Keep up the awesome work and thanks for sharing these great tools :)
 
here is the problem i got,i change my blender verison to 3.3LTS,everything goes right until it finish converting,it did nothing change but break the eye and teeth.

h
QQ图片20230207012422.png
 
here is the problem i got,i change my blender verison to 3.3LTS,everything goes right until it finish converting,it did nothing change but break the eye and teeth.

hView attachment 209081
I made the script with 3.3.0, I will install the 3.3 LTS and 3.4 to see if i can replicate.

Did you make sure to use the legacy object import and checked the keep vertex order when importing the source and target models? That is very important otherwise the wrong bits will be moved. I know 3.3.0 the new Obj importer is broken so you have to use Legacy, don;t know if it was fixed in LTS

Did you use the V1 or V2 Conversion option? Also which version of 3.3 LTS, 3.3.1 LTS (October) or 3.3.2 LTS (December)
EDIT:*************

Tested 3.4 and you still need to use the (legacy)obj importer with keep vertex order selected the regular obj importer still seems btoken thou is says fixed here https://developer.blender.org/rBefdcef7855e378bc3183ceab16e17f3dfd8e3c76

The plugin workd in LTS 3.3.2 and 3.4 once I reinstalled and made sure to use legacy import
 
Last edited:
I made the script with 3.3.0, I will install the 3.3 LTS and 3.4 to see if i can replicate.

Did you make sure to use the legacy object import and checked the keep vertex order when importing the source and target models? That is very important otherwise the wrong bits will be moved. I know 3.3.0 the new Obj importer is broken so you have to use Legacy, don;t know if it was fixed in LTS

Did you use the V1 or V2 Conversion option? Also which version of 3.3 LTS, 3.3.1 LTS (October) or 3.3.2 LTS (December)
EDIT:*************

Tested 3.4 and you still need to use the (legacy)obj importer with keep vertex order selected the regular obj importer still seems btoken thou is says fixed here https://developer.blender.org/rBefdcef7855e378bc3183ceab16e17f3dfd8e3c76

The plugin workd in LTS 3.3.2 and 3.4 once I reinstalled and made sure to use legacy import
Solved,I didn`t set the export scale to 100%:ROFLMAO:,Thought it was the same scale as morph.
 
Last edited:
I'm on Blender 3.4. I followed everything as exactly as I could, but no matter what order I select things in, or what version I click on, I get this:

Code:
Python: Traceback (most recent call last):
  File "C:\Users\segad\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\Daz_Generations\converters\convert_model_op.py", line 32, in execute
    dazgen_utilities.move_general_verts(selected_objects[0], selected_objects[1], True)
IndexError: list index out of range

or

Code:
Python: Traceback (most recent call last):
  File "C:\Users\segad\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\Daz_Generations\converters\convert_model_op.py", line 61, in execute
    dazgen_utilities.move_general_verts(selected_objects[0], selected_objects[1], False)
IndexError: list index out of range

The buttons only enable when I follow all the instructions exactly, so I'm not sure what's going on. Any idea what might be going wrong? Thanks.
 
I'm on Blender 3.4. I followed everything as exactly as I could, but no matter what order I select things in, or what version I click on, I get this:

Code:
Python: Traceback (most recent call last):
  File "C:\Users\segad\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\Daz_Generations\converters\convert_model_op.py", line 32, in execute
    dazgen_utilities.move_general_verts(selected_objects[0], selected_objects[1], True)
IndexError: list index out of range

or

Code:
Python: Traceback (most recent call last):
  File "C:\Users\segad\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\Daz_Generations\converters\convert_model_op.py", line 61, in execute
    dazgen_utilities.move_general_verts(selected_objects[0], selected_objects[1], False)
IndexError: list index out of range

The buttons only enable when I follow all the instructions exactly, so I'm not sure what's going on. Any idea what might be going wrong? Thanks.

Try disabling then re-enable the plugin in the Edit> settings > Add-ons tab, It could be the model selection code is failing.

The default Blender selection system has a list of what is selected but not the order they are selected in. So I am using a helper plugin that hooks the selection event and is supposed to fix that, and it is a bit temperamental.

I need to work on fixing it, finding another workaround, or finding a proper fix.
 
Is this still being worked on? I've been hoping for a Male and/or Genesis 9 update at some point, but I haven't seen any activity here for a month.

Regardless, this plugin has proven very helpful for back-porting morphs to G2F. I thank you for creating this.

Do you happen to have a Patreon that I could subscribe to?
 
Is this still being worked on? I've been hoping for a Male and/or Genesis 9 update at some point, but I haven't seen any activity here for a month.

Regardless, this plugin has proven very helpful for back-porting morphs to G2F. I thank you for creating this.

Do you happen to have a Patreon that I could subscribe to?

It's being worked on slowly, when I have time but Python is not my forte so I take breaks when I get too frustrated :).
Currently I am trying to improve the "ridging" that is happening with the body/sides. We only use the closest vertex when calculating how to move the target vertex. I am going to try and change the lower vertex count areas to use the average of 3 or more closest verts to try and smooth things.

Since all of this will also apply to Male transfers, I have not spent the time to create the Male conformations yet.

G9 I havn't looked much at yet. I need to figure out what base shape to use and how to handle nipples which are separate meshes
 
Chokaphi updated Daz Generations Converter with a new update entry:

Beta 4

Version 3 of the conversion script.
We now use the distance weighted average of the nearest 4 vertex positions when calculating where the target vertex movement.
This helps smooth out the ridging that often occurred along the sides of the models.

Eyes and Mouth are still moved as parts and not per vertex, so no distortion occurs.

Cleaned up the conversion UI to separate the older techniques.

View attachment 231150

If the model converters refuse to light up, try and reload...

Read the rest of this update entry...
 
Absolutely love what you've managed to achieve here mate! Is there any hope for genesis 9 after the males are done?
 
Great stuff Chokaphi !
Testing in 3.5 whilst the convert button is now enabled each session, it throws an error for me unless I unload and reload the plugin each time.

Not sure if it's also worth pointing out in the guide that source models should be left in their default base pose rather than trying to set them up in a T-Pose as would normally be done with other conversion methods.

I'm probably a fringe case, but I'll likely stick with the 3DSWrap method in most scenarios.
Only reason being that it does a better job of aligning the whole mesh to the target, and that allows me to generate a normal map from a HD version of the mesh. Of course it takes way more effort to get an end result.

For most people though, this is such a fantastic tool!
1680781585262.png
 
Back
Top Bottom