Adding to Cart…
Licensing Agreement | Terms of Service | Privacy Policy | EULA
© 2024 Daz Productions Inc. All Rights Reserved.You currently have no notifications.
Licensing Agreement | Terms of Service | Privacy Policy | EULA
© 2024 Daz Productions Inc. All Rights Reserved.
Comments
Thanks a lot !!
I looked up how to do this after reading your comment and realized that Diffeomorphic actually has an option for transforming a mesh into a shapekey.
I thought I was going to have to learn how to use software like R3DS Wrap but I'm glad I was wrong.
So I did what you said and recreated the shapekey in the eyes base mesh using the baked eyes mesh, and everything seems to work once exported to Unreal Engine.
I was able to apply a face animation (a short speaking animation) that I had previously created for Genesis 8.1 Basic Female, play it on my character inside Unreal Engine and then switch the head morph on/off at runtime, and everything seems to work fine.
Thank you very much!
I'll keep experimenting with Diffeomorphic and see where it takes me.
I was thinking of something like this:
https://www.youtube.com/watch?v=Qoboh-da_9Q
I tried this method on a morph that modifies the body a lot (so initially I got some deformations on the hands when I played an animation inside Unreal Engine and activated the morph at runtime) and, even if it does seem to correct the deformations, it's a lot of work and it's error-prone because you have to place the bones correctly.
I'll probably go for a code-based approach instead, to get something more precise and automatic.
But since it's rather complicated and time-consuming, at least for me, I'll concentrate on Genesis 8.1 Basic Female for now, add simple morphs, clothes, hair and stuff like that.
I will probably start by adding a simple component that will abstract the mesh from the rest of my code. This way, I'll be able to swap meshes if an ERC morph is too complicated to fix and it's simpler to use a custom mesh that's already been baked. And for the V2, when I've got the time and motivation, I'll make the necessary changes to be able to modify the armature when necessary so I can reuse the Genesis 8.1 Basic Female mesh and its morphs.
The idea to add a corrective shape key for the armature transformation is very interesting, thank you for that. Unfortunately I don't think it works fine, that is, the interpolation for bones and meshes is different so intermediate shapes may not match, also this way the animation should be limited to bone rotations. The idea works fine for the initial and final shape, but then we may just use a figure switching instead, that's much more efficient.
Nevertheless, again, very interesting idea thank you.
p.s. Now reported to Thomas. https://bitbucket.org/Diffeomorphic/import_daz/issues/1874/
Hey all, i'm having issues with nipple (Headlights) and genitalia (tested both NGFV and GP) material shells not importing with their unique UV maps. Setting Shell Material to Geometry Nodes in the Global Settings and importing as a HD mesh instead does not fix the problem. Any ideas?
I'm newbie and Thanks for your great free tool. amazing share. I tested with Genesis 8 and all MORPH import is ok. When I tested with animal (non-Genesis, dog, dragon ..etc) I can not import MORPH. What can I import dog's MORPH from DAZ to Blender?
Thanks!!
@andar If you use multiple shells you may have to fix them in daz studio before exporting, since blender only imports the "surface visibility" and not the "face group visibility". Then geonode shells are experimental you better use material shells.
@quenhoai You can import as custom morphs, the standard morphs only work for the genesis figures.
Thanks for your fast reply.
My animal is Poser Figures(.cr2), then I convert Figures to Weight Mapping to become a DAZ Figures. I'm import it to Blender OK but I can not use it's Morph, Expressions .....
like this:
I think I need prepare some step in DAZ before export to Blender, How can I do for this tech?
Thank you very much!
Sorry I'm not an expert on poser to daz conversion, what you do seems right to me. I mean you load as cr2 then convert to general weight then save as duf. For morphs I'm not sure if daz converts to dsf. You can try deleting the poser asset after conversion to daz, if you can use the figure in duf format in daz studio then it should export fine to blender.
As a last resort you can always export your morphs as obj then load in blender as shapekeys.
Yes, I will try. Thank you very much.
I can confirm that the issue appears to be 1.7.3 specific. Importing the same character with 1.6.2 includes the UV map, that is missing from the 1.7.3 import.
Will elaborate on this more later after some more testing.
daz studio 4.21.0.5, blender 4.0.2, diffeomorphic 1.7.3.1955
@andar_9 I can't reproduce the issue here everything works fine unless there's specific steps or settings to use. Apart that you may have to fix the visibility as explained above.
my steps:
Hey Padone,
I saw that you and Thomas had added the armature transformation technique.
Thanks for that!
I haven't had a chance to try it out yet, but if I can get the corrective pose exported to Unreal Engine, it might make it possible to keep just one mesh, like we discussed.
For the moment, I've opted for several baked meshes, as indicated in my previous post, and I swap them at runtime in Unreal Engine when necessary.
I've also recently switched to the HD import, which seems to produce a slightly better mesh than the standard import, even at subdivision 0 (particularly at eye/mouth level).
As expected, having to maintain several meshes has added more work for me in Blender.
What's more, the HD import sometimes works strangely and seems more complex than the standard import.
So I've automated my workflow to make my work easier, and in doing so I've noted a number of points that I'd like to pass on to you and Thomas.
Note that I'm still using version 1.7.2.1935 of Diffeomorphic.
1/
There is an error in the "Convert Morphs To shapekeys" function when it is called by a script.
Line 1047, replace the line:
by :
(just remove "self, ")
Also, if the mesh has no shapekeys (ob.data.shape_keys is None), the script will fail.
I think there's also a problem with the drivers, but I'm not sure if it's linked to the Convert Morphs To Shapekeys function.
It seems that when converting morphs to shapekeys, some drivers end up pointing to invalid shapekeys.
You can see this kind of message in the console:
2/
There are a few Diffeomorphic functions that I haven't managed to call via script without first modifying them.
I'm not a python developer or a plugin developer on Blender, so maybe it's just me that hasn't figured out how to use them.
For example :
Convert to shapekeys: I don't get the impression that you can convert shapekeys "by label" as you can via the popup.
In my case, I've duplicated what's done in GeneralMorphSelector.invoke() in a function so that I can call it and fill in the variables that are used by the code and then fill in the "items" variable with the morph labels.
Perhaps it would also be interesting to be able to provide a list of morph names (so as not to convert everything).
Import Custom Morphs: I don't know if it's possible to specify the file(s) to import?
I didn't see if it was possible to override "LS.theFilePaths" directly, so I've added a parameter to do this.
Transfer shapekeys: I don't get the impression that you can transfer all the shapekeys (the equivalent of the popup when everything is ticked).
It might be interesting to update these functions so that users can call them in their scripts.
For my part, I've made some quick changes to make it work, but they're more workarounds than anything else, so it's not worth submitting a patch.
3/
I had a lot of trouble getting the HD import to work.
I have the impression that there are differences with the standard import that I can't explain.
One of the most important is that I can't get the morphs imported properly for the HD mesh with Easy Import.
I've done a lot of tests and in the end I'm not sure what's going on, but it seems to be linked to the HD mesh transforms.
Indeed, if I do an HD import and keep the base mesh ("keep base meshes" in global settings), the two meshes are perfectly aligned in Blender, but the HD mesh doesn't have its transforms applied.
I think that's why the shapekeys aren't transferred correctly, because the functions that do the transfer in Diffeomorphic return an error when the transforms aren't applied.
It's just a guess, maybe I'm wrong, but it's the most logical explanation I've come up with for why morphs imported during HD import are causing a problem.
Finally, I got round the problem by not importing any morphs with Easy Import during an HD import.
I then manually call up the standard and custom morph import functions on the HD mesh after applying the transforms to all the meshes, and it seems to work fine.
I've also had the odd case of some shapekeys being duplicated (with .001 .002 in their names).
At first, I thought this was due to changes I'd made to the python code but even after reverting everything, I still had the problem.
Unfortunately, I couldn't find the cause of these duplicates. The strange thing was that the shapekeys that were duplicated didn't all work, so it was necessary to check which one was right and delete the others.
If I have any more information about this, I'll repost a message.
@AlternateDreams Unfortunately to report bugs it is essential that you update to the developement version first, that's 1.7.4 now, reporting from 1.7.2 makes little sense since a number of bugs are fixed and changes are done. Thomas does all the code so for questions on scripting you better ask at bitbucket.
As for HD it uses multires so HD morphs are not supported, only the HD shape is, plus the base resolution morphs of course. Then you can convert HD morphs to displacement maps using the HD addon by Xin.
https://bitbucket.org/Diffeomorphic/import_daz/wiki/Advanced/HD Meshes
I did a new git clone and tried installing in Blender 4.0.2 again. There is no error, but it does not install. Anyone have ideas?
Perhaps I stand corrected. For this in the console on the command line:
IsADirectoryError: [Errno 21] Is a directory: '/home/brainmuffin/Documents/Diffeomorphic/TT/import_daz/'
After creating a zip, this is what Blender gives as an error when trying to enable:
Loading DAZ Importer v 1.7.4
Traceback (most recent call last):
File "/home/brainmuffin/Programs/BlenderProgs/blender-4.0.2-linux-x64/4.0/scripts/modules/addon_utils.py", line 364, in enable
mod = importlib.import_module(module_name)
File "/home/brainmuffin/Programs/BlenderProgs/blender-4.0.2-linux-x64/4.0/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/brainmuffin/.config/blender/4.0/scripts/addons/import_daz/__init__.py", line 113, in <module>
importModules()
File "/home/brainmuffin/.config/blender/4.0/scripts/addons/import_daz/__init__.py", line 110, in importModules
mod = importlib.import_module("." + modname, anchor)
File "/home/brainmuffin/Programs/BlenderProgs/blender-4.0.2-linux-x64/4.0/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/brainmuffin/.config/blender/4.0/scripts/addons/import_daz/daz.py", line 33, in <module>
from .fileutils import SingleFile, JsonFile, JsonExportFile
File "/home/brainmuffin/.config/blender/4.0/scripts/addons/import_daz/fileutils.py", line 161, in <module>
DF = DataFolders()
File "/home/brainmuffin/.config/blender/4.0/scripts/addons/import_daz/fileutils.py", line 119, in __init__
for file in os.listdir(folder):
FileNotFoundError: [Errno 2] No such file or directory: '/home/brainmuffin/.config/blender/4.0/scripts/addons/import_daz/data/restposes'
I made a better zip and now it installs. Does Blender no longer support directory based installs?
Sorry I can't help with git, I always do manual install both in daz and blender because it is easier for me and it works fine.
I noticed that in 1.7.4 the pose library does not have the option to import previews of poses. Has this been removed?
reported to Thomas
https://bitbucket.org/Diffeomorphic/import_daz/issues/2000/
update. Fixed in the latest commit.
Thank you so much Padone.
Hello,
I wanted to know if there is an estimated date for the next version of Diffeomorphic please?
There seem to be a lot of commits at the moment so it might be a bit risky to get the development branch and it would be a shame to take the previous stable version (I have to apply local modifications to the code so I might as well start with the new code that uses Blender extensions).
Yes Thomas is fixing bugs and refactoring some settings. He's rapidly reaching a point where features are stable though, there's just a couple issues left. How long I can't tell but I guess one month top before the 4.2.1 development version could go to stable release. Of course I may be wrong.
Thanks.
Hello,
I noticed that the FACS expressions are generating some distortions on the eyes, teeth and tongue for G9 (haven't tested previous versions TBH). This happens when "Transfer to Face Meshes" is enabled, which is necessary to get the morphs working with eyelashes and eyebrows. Distortions don't happen when this option is not enabled, but then the brows and lashes do not follow the morphs anymore. Seems like a dead end in both cases.
Any recommendation on how to get it work properly ? If not, I'll have to find the shapekeys and delete them manually. Although this may break other morhps.
Screenshot is G9, base model with no morph applied (for testing), Blender 4.2, Diff 4.2.1.
Thanks,
The current version is 4.3.0.2404 an it works fine, please use that. There was a previous commit where rigidity was disabled by default for performance reasons, but it is fixed now and much faster. If for some reason you want to use the old version then be sure rigidity is enabled in the global settings.
https://bitbucket.org/Diffeomorphic/import_daz/downloads/
Really appreciate the quick response. Updating the plugin fixed this issue !
Note that the add-on version in Blender still indicates 4.2.1, even after a full uninstall/reinstall. But I was able to see the right version number in the DAZ Setup panel.
--
Unrelated: morphs transfer to clothes seem to fail entirely when the character has a necklace on. So I had to import the clothes and necklace separately.
--
Lastly, 2 suggestions. I could see the value of new options for:
1) merging or skipping duplicate morphs at import. Useful when there's some duplicates coming from load favorites or DAZ favorites, for instance.
2) "bake everything but selection" for "Morphed (Characters)" imports. This would be helpful to keep the list of sliders that are generated in the Runtime panel short. The idea being to only keep the morphs specifically selected by the user editable in Blender, while the rest would be baked for convenience.
--
Anyway, love the plugin ! It's much more consistant than the "official" one. Thanks for the hard work !
We never experienced the necklace issue, perhaps it is a specific item triggering something, please check the blender console for errors and let us know. Also provide a link to the product page of the assets you't using to eventually reproduce the issue.
As for point 1, favorites are meant to import custom morphs, not standard morphs which are already imported.
As for point 2, this sounds as a duplicate of dbz + favorites, or at least I can't see the difference.