Why does imported morph target (from Blender) work OK but also moves the prop along Z axis?
I made a prop in Blender. Exported the base mesh and morph targets as obj. files with "PolyGroups" and "Keep vertex order" options selected with Forward = -Z and up = +Y. Poser created a morph dial and the morph action worked as expected. However, The morph wheel also moved the prop along the Z axis like a Ztran control. I tried exporting base and target with Forward: set to +Z. This worked like the -Z exports except the prop's front was facing backward. Any help will be gratefully appreciated.
@barrie Actually, I'd like to hear this too. I had a similar problem with a purse i was making for Dawn. The morphs worked just fine, but moved the purse several inches away from where it had been. Obviously that wasn't going to work if the purse was parented to Dawn. Sadly, never found an answer and just gave up on the purse for Dawn.
@eclark1849 That's interesting. Did you create the mesh in Blender? If so, it may be a blender export issue.
@barrie I don't think so. I've created other morphs in Blender and used them in Poser with no issue.
I had a similar problem once when I exported the original mesh from Poser with transformations; that made the mesh to not be at origin in Blender, but at an offset, so when I re-imported the manipulated mesh as a morph into Poser that transformation was made part of the morph, and made my object move around.
I had to remove any parenting from the object in Poser, zero all rotatios and translations, and then re-export as morph target (no world transformations), then reimport in blender, redo all manipulation in blender and import back again into Poser as morph target - that got rid of the prop moving around on morph dial.
The problem is not exactly as I reported. The morph dial scales and morphs the prop at the same time.
I've had that. Turned out I had scaled the thing in blender and didn't scale it back.
The problem is still the same: if you export a mesh with a built rotation, scale or translation (that is, a transformation) that will be incorporated to the morph when you import the mesh back as morph.
So the morph will make the prop deform (for rotations), scale or move when you dial the morph.
You sure you exported with zero rotation and translation and 100% scale, not parented to anything, and also used the option Export as Morph Target when you exported that mesh?
Perhaps some info for you can be found here in my tutorial Poser2Blender2Poser : The correct import-export settings.
As in the video, the same applies to props.
For a morph to work properly, even a prop has to be in its "true zero position".
=> That is why I advice "NEVER work on anything exported from Poser. (It can be done) but first try the good old method => Work with the original obj file.
Be sure that :
The original and the morphed prop are in the exact same "neutral position".
In Blender => load the original and load the morphed obj. Is there a difference in position or scale? => If the answer is "yes" you moved and or scaled it before exporting the morph. If the answer is "no", the Poser exported obj was not in its true neutral when exported.
If for some reason you "have" to work with a Poser exported obj? ? ? ?
Be sure to completely "zero it out".
No parenting, no scaling, no translations allowed and check with the Joint parameters function to find the "true origin" of the obj file.
Does the prop have multiple vertex groups? So sorry, Poser is unable to export a properly vertex grouped and welded vertex obj file without loosing vertex order. => See Video1 and Video 4 for that. => You WILL have to work with the original obj file in Blender.
Best regards, Tony
Prop... check with the Joint parameters function to find the "true origin" of the obj file.
Oh, I didn't know about that; I never thought of checking Joint parameters for a prop (I thought joints only applied to figure skeletons), and indeed a prop's Joint has a Center point, and End point and an Orientation angle! Quite unexpected!
Living and learning! Thanks for the tip, vilters!
@vilters Tony, thank you for your valuable insight. About a month ago you pointed me to your video Poser2Blender2Poser when I tried in vain to make Poser morph targets in Carrara and Poser. I viewed your videos many times and found them very useful. I asked you what Blender was and since then I have been trying to learn Blender..... a daunting task for an old guy like me. Anyway after many attempts I managed to build my prop in blender. My final mesh comprised 9 cylinders and 2 toroids. The build involved setting the units to Metric, "Joining", moving the origin point, "Mirroring" and converting to a single vertex group. Is your reference to "Joint parameters" referring to bone joints or the joining of vertex groups? My prop does not have bone joints but was "Joined" into one vertex group.
Building the prop in metric units may have imposed an inherent scaling factor. Also, there is a scaling export option in blender as well as a scaling import option in Poser. There is a huge scale difference (> 250X) between Poser and blender. I will investigate the scaling factors and hopefully find a solution.
I have asked this before but If you need more tutorials on a certain Poser - Blender thing, just let me know. I 'll see what I can do.
Best regards, and have fun using the Poser tools.
@vilters I have reached a brick wall and would appreciate your help. There may be something wrong with my blender set up but the same problem occurred when I used the monkey mesh.
Here are the steps I used.
- In Blender: Delete the cube. (on my set up the cube also showed the morph problem)
- Set units to metric and length to millimetres
- Add the monkey and scale it to about 14 cm ear to ear.
- Export it as an obj file with options "polygroups" and "keep vertex order" checked and make sure scale is set to 1.00.
- Adjust the monkey mesh and Export as an object file with same options as above.
- In poser: Import the base obj file at 100% scale and load morph target.
- The morph dial produces the morph but also moves monkey up and down the y axis.
I also loaded the base monkey as a second morph target. The morph dial worked like a "yTran" dial.
Will you please check it out.
Hi Barrie, I "ll look at this but to be on the safe side:
Send both obj files over to me via e-mail. (Your original monkey and the morph)
Send sitemail for my e-mail adres and I"ll have a look for you.
Just did a quick raw test:
Open Blender, delete cube. Load monkey and scale to 0.5 in Object mode.
Export as wavefront obj with Keep vertex order and polygroups checked.
In Blender and in Edit mode => Morph monkey (I made bigger ears and used symmetry in X)
Export as wavefront obj with Keep vertex order and polygroups checked.
Open Poser and load original Monkey. (leave all import checkboxes empty and scale at 100%)
Goto Object and load morph target (Monkey-bigger-ears).
No problems, all works as it should.
I send you a sidemail with my e-mail
@vilters Hello Tony. Thank you very much for testing my procedure. I forgot to tell you that I use Sensei Format. Right or wrong, I found it was easier to understand than the regular blender format. Anyway, I disabled Sensei in user prefs and tried the monkey test again. I got the same result. Morph worked but still with the "Y tran".
I am not familiar with sitemail so I don't know how to get your email address. Please advise. Thank you again for your help.
@vilters Problem solved. There was no problem with the mesh created by Blender. The only issue with blender is that I am still learning how to drive it. I built the model with units set to mm but when exported to Poser it came out about 250 X bigger than expected. The scaling on Blender reduced its exported size but not to the size I wanted. I further reduced the size in the Poser import option window which caused the problem. The problem was solved with Poser import Scale set to 100% and all options de-selected. Big thanks to Tony for helping me find the cause and solution.