• Hi Guest!

    We are extremely excited to announce the release of our first Beta for VaM2, the next generation of Virt-A-Mate which is currently in development.
    To participate in the Beta, a subscription to the Entertainer or Creator Tier is required. Once subscribed, download instructions can be found here.

    Click here for information and guides regarding the VaM2 beta. Join our Discord server for more announcements and community discussion about VaM2.
BodyNet - Resources

Plugins + Scripts BodyNet - Resources

Download [1.62 MB]
Last edited:
So, I did use the BodyNet morphs in a package before (back in Oct 24) when I wanted a new look but also wanted to make sure the proportions were correct to fit the existing animation. That package dependency was BodyNet_Resources.latest. Are you saying that scene is potentially broken now?
If so, any suggestions other than referencing a specific version? e.g. In your development did you find any standard morphs that would make a decent substitute for the BodyNet morphs?
 
No, nothing has been broken, yet. I was planning on replacing the morphs when I finally got around to making a male version. However, I guess I didn't think that through. I'm probably stuck carrying these forward unless I start over on a fresh v1 var.
There's nothing wrong with people using bodynet to add or replace looks in their scene releases. It's just an unexpected use case. I suppose it doesn't have to be the end user, who does the bodynetting. :cool:

I promise to keep these morphs as is in this particular var and fork breaking changes into a new var. That's only the morphs, though. Everything else is subject to change.
 
Feature Request: I'm not currently subscribed, so maybe it's a bit cheeky to make a feature request, but ...

... ability to save a "morph preset diff"?

The idea would be that, after a (successful) run of bodynet, the plugin logs the values of all the bonemorphs it has changed, and writes them to disk as a morph preset. A kind of "diff morph preset", if you will. Probably would make sense to add a useraction "save diff morph preset", since the plugin can't really know what you consider to be a successful run. And probably this is rather a functionality for the scene plugin, rather than the person atom plugin.

Does this make sense?
 
Feature Request: I'm not currently subscribed, so maybe it's a bit cheeky to make a feature request, but ...

... ability to save a "morph preset diff"?

The idea would be that, after a (successful) run of bodynet, the plugin logs the values of all the bonemorphs it has changed, and writes them to disk as a morph preset. A kind of "diff morph preset", if you will. Probably would make sense to add a useraction "save diff morph preset", since the plugin can't really know what you consider to be a successful run. And probably this is rather a functionality for the scene plugin, rather than the person atom plugin.

Does this make sense?
If it's only the difference to the previous morph values, how would you apply such a preset, though? If your suggestion is a morph preset containing the new values of morphs, which have changed, merge loading the preset would be the same as merge loading the full preset.
I need a better understanding of what you want to use preset for. It's definitely not a feature for the resource package 😎
 
If it's only the difference to the previous morph values, how would you apply such a preset, though? If your suggestion is a morph preset containing the new values of morphs, which have changed, merge loading the preset would be the same as merge loading the full preset.

Oooops, yeah, hadn't thought about that. True.

I need a better understanding of what you want to use preset for. It's definitely not a feature for the resource package 😎

Yeah, my usecase goes a bit against the workflow you designed bodynet for. The usual workflow is: Just load the person-atom plugin into the scene (via the Session plugin), load appearance preset, run bodynet, play. In that workflow, you wouldn't save an "adjusted" morph preset for your preferred custom looks, since the plugin can adjust them on the fly, with 1-3 "runs".

What I'm thinking about are the cases where 5-10 or more runs are necessary to adjust a preset. Usually, that's when the scene uses a look that makes heavy use of bonemorphs that bodynet does not have in it's repertoire, merged into a single morph preset (Realfeel, xxxa etc.). If that's the case, I prefer importing the scene's look into the bodynet scene as a source and creating a set of adjusted version of my favorite custom looks that I then save as morph/appearance presets. Then I load those modified custom looks into the scene rather than using the person atom version of bodynet. Sometimes I also add some bonemorphs adjustments manually, especially when the look I want to match uses bonemorphs that are not included in bodynet's repertoire (eg there's a bonemorph that does nothing but lowering the position of the shoulderjoints - bodynet has a hard time matching that, so I include that manually and run bodynet on top of that).

But then I end up with a set of morph/appearance presets for every scene. So I was wondering about just storing the difference.

But as you pointed out, mergeloading a morph preset might be a workable compromise.
 
Actually, it doesn't matter for bodynet whether the look uses merged or separate morphs. The reason bodynet does a poor job with xxxa's looks is that they contain bone rotation morphs. Currently, BodyNet only adjusts bone lengths, which is why the "loss" value doesn't go down beyond a certain point. You'll set that with the "draw skeleton" preview with the legs, especially.
When I eventually get around to learning blender and making custom morphs for bodynet's male support, I want to create a full new set of morphs, including rotation morphs.
 
Actually, it doesn't matter for bodynet whether the look uses merged or separate morphs.

Yeah, I know bodynet doesn't care whether a morph is merged or not - but if it is not, I can often compensate manually for those skeleton changes that bodynet doesn't have suitable morphs for.

The reason bodynet does a poor job with xxxa's looks is that they contain bone rotation morphs. Currently, BodyNet only adjusts bone lengths, which is why the "loss" value doesn't go down beyond a certain point. You'll set that with the "draw skeleton" preview with the legs, especially.

Hmmh, yeah with xxxa's weird feet morphs it's probably due to rotations. But afaics, there's other skeleton morphs it doesn't have in its set and that it doesn't do well adjusting for - mind you, those aren't terribly common, but still.

When I eventually get around to learning blender and making custom morphs for bodynet's male support, I want to create a full new set of morphs, including rotation morphs.
Sounds good.
 
But afaics, there's other skeleton morphs it doesn't have in its set and that it doesn't do well adjusting for - mind you, those aren't terribly common, but still.
Could you give me some examples? Maybe I can do something about that.

Here are some examples of rotation morphs. BodyNet calculates "Loss" (basically a float value representing the difference between both skeletons) based on the difference between bone lengths, as well as the difference between joint locations. The latter is the reason why loss will often be huge in situations like these:

1743868966829.png
1743869066601.png
 
Back
Top Bottom