Community
3ds Max Animation and Rigging
Welcome to Autodesk’s 3ds Max Forums. Share your knowledge, ask questions, and explore popular 3ds Max animation topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Corrective blend shapes

14 REPLIES 14
SOLVED
Reply
Message 1 of 15
rtgaddy
926 Views, 14 Replies

Corrective blend shapes

rtgaddy
Explorer
Explorer

How do I create corrective blend shapes in 3ds max? For offline rendered content I use the skin wrap modifier, but now I am trying to import characters/animation into real-time engines. Fbx export doesn't respect anything above the skin modifier, and any morphs plugged into morpher don't transform vertices locally as needed for corrective blends. I haven't been able to find any solutions through online search.

0 Likes

Corrective blend shapes

How do I create corrective blend shapes in 3ds max? For offline rendered content I use the skin wrap modifier, but now I am trying to import characters/animation into real-time engines. Fbx export doesn't respect anything above the skin modifier, and any morphs plugged into morpher don't transform vertices locally as needed for corrective blends. I haven't been able to find any solutions through online search.

14 REPLIES 14
Message 2 of 15
BubbaDaCaveman
in reply to: rtgaddy

BubbaDaCaveman
Enthusiast
Enthusiast

There seems to be no way of creating corrective morph targets in 3ds max other then using the Gizmo in the Skin modifier itself. I myself am researching and trying various combination to get the Morpher modifier to fix troublesome areas in a rigged character, but the morpher doesn't work no matter what.

 

What I did was pose the object where it needed some corrections in the deformation then use the Edit Poly modifier to model the fixes. Then I went back to the neutral pose but the Edit poly modifier retained the fixes. Then I used this result as the corrective shape for the Morpher, normally it should have worked but it doesn't in 3ds max.

0 Likes

There seems to be no way of creating corrective morph targets in 3ds max other then using the Gizmo in the Skin modifier itself. I myself am researching and trying various combination to get the Morpher modifier to fix troublesome areas in a rigged character, but the morpher doesn't work no matter what.

 

What I did was pose the object where it needed some corrections in the deformation then use the Edit Poly modifier to model the fixes. Then I went back to the neutral pose but the Edit poly modifier retained the fixes. Then I used this result as the corrective shape for the Morpher, normally it should have worked but it doesn't in 3ds max.

Message 3 of 15
rtgaddy
in reply to: BubbaDaCaveman

rtgaddy
Explorer
Explorer

Yeah I’ve tried applying corrective morphs using the skin morph, then toggling the skin modifier and creating a snapshot of the mesh with the vertex deformation (but without the skin deform). I seemed to get more accurate results with this in earlier versions of Max but not 2023. It’s not a perfect solution, and is very time consuming, so I thought there must be a more efficient way to implement this for real-time assets.

0 Likes

Yeah I’ve tried applying corrective morphs using the skin morph, then toggling the skin modifier and creating a snapshot of the mesh with the vertex deformation (but without the skin deform). I seemed to get more accurate results with this in earlier versions of Max but not 2023. It’s not a perfect solution, and is very time consuming, so I thought there must be a more efficient way to implement this for real-time assets.

Message 4 of 15
BubbaDaCaveman
in reply to: rtgaddy

BubbaDaCaveman
Enthusiast
Enthusiast

Thanks for mentioning the Skin Morph modifier, I will check if that works in version 2022.

0 Likes

Thanks for mentioning the Skin Morph modifier, I will check if that works in version 2022.

Message 5 of 15
BubbaDaCaveman
in reply to: rtgaddy

BubbaDaCaveman
Enthusiast
Enthusiast

So, I tried the Skin Morph modifier. By itself the modifier works fine. But by disabling the Skin modifier after making any edits in the Skin Morph modifier I assumed that I would get the deltas for a normal Morph modifier but I was wrong. The Skin morph modifier doesn't give any delta information.

0 Likes

So, I tried the Skin Morph modifier. By itself the modifier works fine. But by disabling the Skin modifier after making any edits in the Skin Morph modifier I assumed that I would get the deltas for a normal Morph modifier but I was wrong. The Skin morph modifier doesn't give any delta information.

Message 6 of 15
rtgaddy
in reply to: rtgaddy

rtgaddy
Explorer
Explorer

Is there any way to elevate this issue to the dev team? Corrective blend shapes are pretty common in game development, very odd Max doesn’t have a solution for them. It’s even the first time Autodesk twitter didn’t immediately respond to my problem. 

0 Likes

Is there any way to elevate this issue to the dev team? Corrective blend shapes are pretty common in game development, very odd Max doesn’t have a solution for them. It’s even the first time Autodesk twitter didn’t immediately respond to my problem. 

Message 7 of 15
DanielCantin
in reply to: rtgaddy

DanielCantin
Autodesk
Autodesk
Accepted solution

Hi @rtgaddy,

I'm wondering if this script is doing what you are looking for: SCRIPTSPOT: Morph Target Builder

 

Thanks for reaching out, let us know if that help or not



Daniel Cantin
QA Manager, 3ds Max, Maya
Entertainment Creation Products, DCP
0 Likes

Hi @rtgaddy,

I'm wondering if this script is doing what you are looking for: SCRIPTSPOT: Morph Target Builder

 

Thanks for reaching out, let us know if that help or not



Daniel Cantin
QA Manager, 3ds Max, Maya
Entertainment Creation Products, DCP
Message 8 of 15
rtgaddy
in reply to: DanielCantin

rtgaddy
Explorer
Explorer
This is definitely a possible solution. It may not be ideal for prepping near a hundred blendshapes and is a bit clunky, as the script calculation can sometimes take minutes to run for each morph, but it's better than nothing, which is what I had. Thank you. This should definitely get more visibility as well as a possible native implementation.
0 Likes

This is definitely a possible solution. It may not be ideal for prepping near a hundred blendshapes and is a bit clunky, as the script calculation can sometimes take minutes to run for each morph, but it's better than nothing, which is what I had. Thank you. This should definitely get more visibility as well as a possible native implementation.
Message 9 of 15
BubbaDaCaveman
in reply to: rtgaddy

BubbaDaCaveman
Enthusiast
Enthusiast

Hi, which version of max are you using? I am trying to use this script in both Max 2022 and 2023 but the extracted deltas do not give the corrective shape I am looking for.

 

 

0 Likes

Hi, which version of max are you using? I am trying to use this script in both Max 2022 and 2023 but the extracted deltas do not give the corrective shape I am looking for.

 

 

Message 10 of 15
rtgaddy
in reply to: BubbaDaCaveman

rtgaddy
Explorer
Explorer
I’m working in Max 2023 and getting expected results. The steps are very specific and must be followed exactly for it to work for me.

1. Edit poly mesh with morpher & skin mod. (skinPoly)
2. Duplicate of original edit poly mesh in exact same transform position (no skin data). (goalPoly)
3. Target morph adjusted edit poly mesh. (morphPoly)

Make sure morpher is set to 100% on your before you run it. All meshes must have unique names.

There are a lot of steps and a lot of room for error, which doesn’t make it ideal, but it technically works.

This video walks you through, but goes slightly out of order, and a bit confusing.
https://youtu.be/HsigJAe7oeo
0 Likes

I’m working in Max 2023 and getting expected results. The steps are very specific and must be followed exactly for it to work for me.

1. Edit poly mesh with morpher & skin mod. (skinPoly)
2. Duplicate of original edit poly mesh in exact same transform position (no skin data). (goalPoly)
3. Target morph adjusted edit poly mesh. (morphPoly)

Make sure morpher is set to 100% on your before you run it. All meshes must have unique names.

There are a lot of steps and a lot of room for error, which doesn’t make it ideal, but it technically works.

This video walks you through, but goes slightly out of order, and a bit confusing.
https://youtu.be/HsigJAe7oeo
Message 11 of 15
BubbaDaCaveman
in reply to: rtgaddy

BubbaDaCaveman
Enthusiast
Enthusiast

After some explodings I managed to extract the correct deltas. I have documented it here

 

 

And in case you are looking for another alternative here's one called MCG:ExtractDeltas. I haven't managed to get a proper result from it yet, maybe you can.

Here's the link

https://cganimator.com/mcg-extractdeltas/#:~:text=This%20is%20a%20MCG%20modifier%20which%20extract%2....

0 Likes

After some explodings I managed to extract the correct deltas. I have documented it here

 

 

And in case you are looking for another alternative here's one called MCG:ExtractDeltas. I haven't managed to get a proper result from it yet, maybe you can.

Here's the link

https://cganimator.com/mcg-extractdeltas/#:~:text=This%20is%20a%20MCG%20modifier%20which%20extract%2....

Message 12 of 15
domo.spaji
in reply to: BubbaDaCaveman

domo.spaji
Advisor
Advisor

Ad some mod. after Skin mod., like Edit Poly

Make some changes

Drag Edit Poly mod. under Morpher in the stack

Pick some empty channel in Morpher and "Capture current State"

 

Simple as that!

 

Delete/turn off Edit Poly mod.

"Extract" captured mesh from Morpher if you want

0 Likes

Ad some mod. after Skin mod., like Edit Poly

Make some changes

Drag Edit Poly mod. under Morpher in the stack

Pick some empty channel in Morpher and "Capture current State"

 

Simple as that!

 

Delete/turn off Edit Poly mod.

"Extract" captured mesh from Morpher if you want

Message 13 of 15
rtgaddy
in reply to: domo.spaji

rtgaddy
Explorer
Explorer

Hi thanks for your response. I feel like this used to work? The deltas are definitely moving in my Max 2023 when moving the edit poly modifier under the skin modifier. It’s especially noticeable if the skin has been updated for example: try the same technique on an arm or tube bent by bones rig. As soon as the edit poly is below the morpher the vertices snap to different deltas.

0 Likes

Hi thanks for your response. I feel like this used to work? The deltas are definitely moving in my Max 2023 when moving the edit poly modifier under the skin modifier. It’s especially noticeable if the skin has been updated for example: try the same technique on an arm or tube bent by bones rig. As soon as the edit poly is below the morpher the vertices snap to different deltas.

Message 14 of 15
rtgaddy
in reply to: DanielCantin

rtgaddy
Explorer
Explorer

Ok, I'm going to retract my "this is a solution". I've tried multiple times on more complex meshes, and the script does not work. It takes way too long to compute and crashes on any geo that is not a tube or sphere. I'm currently evaluating the MCG ExtractDeltas, but am not quite getting results.

0 Likes

Ok, I'm going to retract my "this is a solution". I've tried multiple times on more complex meshes, and the script does not work. It takes way too long to compute and crashes on any geo that is not a tube or sphere. I'm currently evaluating the MCG ExtractDeltas, but am not quite getting results.

Message 15 of 15
BubbaDaCaveman
in reply to: rtgaddy

BubbaDaCaveman
Enthusiast
Enthusiast

For me it worked. I didn't select too many vertices at once, selecting every vertices at once will hang the script. In the images bellow you can see I have extracted the deltas.

 

The shoulder being deformed by only bones.

Corrective morphs 3.JPG

 

 

The shoulder area fixed with corrective morph target.

Corrective morphs 2.JPG

 

 

The right image is the extracted delta. I would say it worked on a pretty complex model.

Corrective morphs.JPG

0 Likes

For me it worked. I didn't select too many vertices at once, selecting every vertices at once will hang the script. In the images bellow you can see I have extracted the deltas.

 

The shoulder being deformed by only bones.

Corrective morphs 3.JPG

 

 

The shoulder area fixed with corrective morph target.

Corrective morphs 2.JPG

 

 

The right image is the extracted delta. I would say it worked on a pretty complex model.

Corrective morphs.JPG

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report