Issue with making a morph in Blender

I have a feeling that it has to do with parented portions of the snake, but I can't be sure or how to fix it.
I tried making a custom morph for the Giant Fantasy Snake in Blender, but here's what happened. You can see what I did in Blender. It's only one change that I made.
When I imported it to DAZ with the Morph Loader Pro, it worked but it was affecting the snake's mouth as well as some of the texture along the body.
I've been using this tutorial to guide me:
Can anyone tell me what's going on?


Screenshot (1).png
1920 x 1080 - 372K


Screenshot (2).png
1920 x 1080 - 273K
Post edited by OVD on
Comments
Update: I thought it may have been the Blender export settings when it was exported as an .obj after modifying it, so I looked at the .obj generated thinking it would have the mouth error, but it's good coming out of Blender. So I'm thinking it has to be an issue with the Morph Loader in DAZ.
So you have a shapekey in Blender where the base key is unmorphed?
I'm not really sure what that means. Here's what I did:
I exported the snake from DAZ as an OBJ
I imported it into Blender
I selected the snake and changed from object to edit mode.
I enabled proportional editing
I selected one vertex, moved it and the ones around it outward, then went back to object mode.
I then exported the new morph from Blender, and imported it into DAZ. Then I used the Morph Loader Pro to enact the morph.
I pretty much followed the tutorial in the link to a "t". As far as I can tell I did everything she did and all the settings were exactly the same.
I prefer to work with shape keys, but doing what you're doing is just as valid. Perhaps Sickleyield's tutorial can point out anything you may have missed.
The reason I like shape keys is it stores all your morphs (also called blendshapes) in one place with sliders so you can test them and even mix them.
Edit: One thing I noticed he didn't mention. When you get ready to start working on your morph, set the shape key value to 1.
If you use sculpting, you can then drag the value between 0 and 1 to see how it morphs.
If you do editing in edit mode, go back to object mode to slide the value slider.
DO NOT MESS with the BASIS (the first one you create; it is your base mesh).
When you go ont to do a second morph, set any other morphs you created to 0 (zero). You can, as I mentioned, create morphs from a mixture. In that video, he shows how to separate into left and right eyes.
To export, select the morph you want to export (all others zeroed), in Export OBJ options, use Selected only and also checkmark "Polygroups", "Keep vertex order" and "Apply Modifiers". Use MLP to import.
I actually posted the wrong link in the first post. SickleYield's was the tutorial I had been using this whole time.
I've just gone back and checked two more times: I'm doing everything exactly as she's doing it. Every setting is exactly the same.
Heh, I was wondering why you were following that one.
I can't be altogether sure, perhaps sickle's is more for JCMs since that is what she's showing, now that I think about it.
I would try the method I gave you.
The title pretty much says it. I have a model that I exported from Blender. I checked that file and it's oriented correctly (see first attached), but then when I import it to DAZ through the Morph Loader Pro, it's flipped in the x-axis when the morph is applied (see second picture).
What am I doing wrong?
Also: I've tried checking the box in Morph Loader Pro that says "Invert Positive Direction" for X, but that doesn't fix it either.
Something else to note: My DAZ 4.11 also exports OBJ files with the same error unless I click the "Invert Positive Direction" for X option. If I do that, it exports it correctly.
Come to think of it, are you using reverse deformation?
You mean in Morph Loader Pro?
Whenever I import a morph from Blender that way, I always have the "Reverse Deformation" option set to "No."
That's all I know about them though.
Set to yes and see if that helps. Yes, Morph Loader Pro is MLP.
All that does is reflect it in the Z direction
Ok, so let's get some more info. This is a custom model you made, yes? In Blender? If in Blender, where is the origin point on your model?
Now, the morphs. What kind of morphs are you trying to make? Movement? Shaping?
If you re-import your morph to Blender, does it look correct?
It's a model that I bought from the DAZ store: https://www.daz3d.com/giant-fantasy-snake
The origin point is in the main body, closer to the head than not. It branches from there toward the head and the tail.
The morphs I'm looking to make are certain distortions in the body. For example, I'd like for it to have a bit of a ridge along the back to indicate its spine. Or if it's eaten something cube-shaped, I'd like to be able to make it look like it's got a cube in its gut.
Re-importing the snake to Blender, it looks the same as when I exported it. Opening the exported-from-Blender OBJ file in the Windows viewer looks the same as it does in Blender. It's only once I apply the morph in DAZ that the lower jaw clips through the top of the head.
Ok, the fact that it is an existing model immediately means you MUST use reverse deformation.
When you look at the mesh resolution in Studio, does it say base as you must export at base resolution.
Are you exporting the model in the default pose? Does it have any morphs or anything dialed up that you are exporting with the snake?
Can you clarify, please. As you refer to using Morph Loader Pro, I assume (though you do not say) that the model was first exported from Daz Studio as an OBJ and you imported that OBJ into Blender? You then exported the OBJ from Blender as you say - with no modifications made in Blender? Finally, you have 'imported' it back into DS using Morph Loader Pro - so, to be clear, you are creating a morph rather than importing an OBJ file as a new object?
In that case, can you please provide screenshots of the OBJ export settings in DS, the OBJ import setting in Blender, the OBJ export settings in Blender, and finally the settings in Morph Loader Pro?
One suggestion would be to repeat the process starting with a primitive cone in DS, rotated on the Y axis so it points to the left or right and we can more clearly see any problems in orientation. I don't have the model you are using so cannot test with that.
Threads merged
Why is that? Maybe I'm just unclear on what it means, but turning the Reverse Deformation on in MLP doesn't fix the issue. I've tried it multiple times.
Yes, it has been on base resolution every time.
Also yes, I've checked that multiple times as well. Every pose and actor setting is zeroed out. There are no other morphs, just the base character in its base pose.
You are correct on all of that.
I tried it with a primitive cone, but it seems to be working fine with that. The settings I used got it into Blender just fine, then when I loaded the morph back into DS and applied it to the cone, it underwent another 90 degree rotation, as expected. So I'm really not sure why with the first object it is reflecting in the x-axis, since all the settings were the same.
Thanks, Cris. The problem was in here: The snake's default pose was called "All Zeroes" but it wasn't actually zeroed out on all dials; some of the defaults were set at 1 or -1. I set those to zero, then tried again and it fixed the issue with the snake's mouth.
There is still a problem though (from another thread that got merged with this one) in that it's reflecting the morph in the x-axis when it's being brought in with Morph Loader Pro. I can't for the life of me figure out why. It's done that for this model and most others that I've tried (aside from the cone which I replied with above?!). Any suggestions on that final issue?
Thanks for all the help
A couple of things strike me immediately. First, when importing to/exporting from Blender, you need to set the Up value to 'Y Up', not 'Z Up', and Forward to '-Z Forward'. Second, because the cone was rotated in DS before you exported it (as I suggested so we could see what's happening), you will need to set Reverse Deformations to 'Yes' when importing the morph: you want to reverse out that rotation before the morph (vertex position deltas) get applied.
I will try to reproduce this later and see if I can get it to work correctly, but if you try this meanwhile it will be useful diagnostically.
With just testing the "up" and "forward" values (which I've been tinkering with in a variety of settings), the morph get applied to the correct side, but it's rotated in the x-direction now instead.
I am good with geometry, and the settings I had in my first attempt match between DAZ and Blender (which I could verify because I looked at the OBJ that was exported from Blender and it's oriented correctly). The problem seems to come into play when I'm importing it into DAZ using MLP. That's when it gets flipped.
Sounds like you've made some progress.
Here is my test for what it is worth now. Hopefully the pictures are fairly self-explanatory. All views are from the front in both programs for consistency (X-axis across the view). I modified the cone shape in Blender rather than rotate it. I would not normally think of using a morph to change an object's orientation.
I assume you know that in DS the Y-axis is up/down, and Z-axis is front/back; in Blender Z-axis is up/down and Y-axis is front/back. I can only think that MLP would cause flipping on any axis if a) the object rotation wasn't 'zeroed' in Daz before exporting to OBJ, and b) then Reverse Deformation wasn't selected in MLP. However, I note that oddly the cone arrives in Blender with a 90 deg rotation on the X-axis. I can't explain this for now, but neither can I see how it would cause an object to 'flip' through 180 deg on X when used to make a morph. After creating the morph with Reverse Deformations checked, applying it certainly caused no rotation on any axis for me.
Don't use the Blender export or import options in Studio, use Custom 100% scale. Don't muck about with the y-axis settings.
Hooooly cow. It's finally fixed. You guys were right in that I had a Y and Z flipped which was causing the issue. Thanks for all the patience. What a headache for such a simple thing.
Happy to hear you got there. Always reassuring to know when suggestions offered are useful.
Glad to see it got figured out. Andya had already addressed the Forward and Up correct axes, so knew you were in good hands.