Development status
Added 2024-05-10 10:48:46 +0000 UTCHey everyone, just checking in with a progress update.
Developments since the last update
Joint angle morphing system requirements are mostly done, it works similarly to the acceleration system but the lower and upper limits are defined as joint angles rather than as G-forces
Morph values are adjusted along a smooth curve, so that they change more slowly near the lower and upper acceleration or angle limits
Support for morph values to be influenced by a secondary joint's acceleration or angle (more on that at further below)
When a morph configuration is selected, its anchor joint is visualized similarly to how VAM shows the selected controller "gizmo": arrows for xyz directions in the case of an acceleration morph, and rotation circles in the case of an angle morph. But this is shown at the exact location of the joint itself rather than its controller (or if using a secondary anchor joint, at the average position/rotation of the primary and secondary anchors)
Figured out a good workflow for producing joint angle morphs, and created a couple of test morphs (they didn't look good enough to actually demo)
To-do before next release (at minimum)
Create morphs for acceleration based adjustments
Create morphs for joint angle based adjustments
Support saving/loading presets in Shapeshift
Finish up the UI for editing the included morph configurations
UI work in progress, notes on planned features

The morph config dropdown shows the name of the anchor that drives the morph value ("Chest" in this example), allowing grouping/filtering by region without a separate dropdown
An anchor means the joint that the morph is anchored to. In the case of acceleration morphing, the morph's value is driven by the anchor joint's acceleration along the specified linear axes, while in the case of angle morphs it's driven by the joint's angle in the specified rotational axes.
Each anchor can use any of the three axes and define their own limits for each axis. The primary anchor must be set, while the secondary anchor is optional. When a secondary anchor is set, both anchors calculate the amount that they'd want to set as the morph value, and the resulting value is then the average of those. An example use case would be thigh acceleration morphing: since we can't directly calculate acceleration at the center of the thigh region of the skin mesh, the amount of morphing should be based on the average of accelerations acting on the thigh joint (which is near the hip) and the knee joint.
Once custom morph configurations are supported later on, the Add New button will open a page where you select the morph and the primary anchor joint, and save. The configuration then shows up in the Morph Config dropdown and can edited/adjusted. I'm planning for the configurations to always save with the Shapeshift plugin data itself, so these configurations will work like normal plugin parameters (rather than separate profiles like in the clothing profiles system).
There needs to be also support for exporting and importing morph configurations and groups of configurations, so that it's possible to create a custom morph pack with a pre-defined set configurations that users can simply import without having to deal with the overall Shapeshift preset. How this will work exactly is very much on the drawing board
The morph configuration sliders/toggles etc won't be triggerable since the configurations aren't meant to be dynamically adjusted
There will be additional data panels/windows for viewing the current angles and accelerations of the anchors of the selected morph configuration, and of all possible anchors in the body. This, alongside the visualization of the selected anchor in the 3D space should help make configuring morphs sufficiently intuitive, although there's still a necessary learning curve. I'm considering making some tutorial videos for Shapeshift later when the v1.4 features are complete.
There will be some kind of main Shapeshift tab where you'll have the preset buttons familiar from the other modules, introductory texts to explain how to use the module, and some other functionalities like adjusting the overall effects of acceleration morphing and angle morphing, possibly grouped by region or something like that.
I updated the trello to reflect the current state of Naturalis v1.4: https://trello.com/b/AcnDeqFr/naturalis-public-roadmap
Any feedback is welcome.
Given the amount of work involved still, it's going to take a while. It's hard to make any estimate, but let's just say I want to get a release out this month. I fully understand if people want to cancel renewal and join again when there's a release. 😅 Regardless, thanks for your patience!
-everlaster