thank you for the video, it made the issue very clear, and I'll fix it as soon as i can.I have a problem with the rotation of the knee along the X axis. It is not clear in relation to what it rotates.
View attachment 249546
.rotation issue(credit:SinFear)
- now,when the axis is set to local the node rotates around it's own axis instead of the atoms axis ( like it should have been from the beginning).
.Keep the UI Open
- now you can choose to keep using the UI,even when toggling F1 or U ( to help you take different screenshots without leaving the screenshot view).
shift + middle click any node to swap it with it's mirrored node.Hello,
Starting from version .40 i don't see anymore the option to "swap" arms and legs, was it removed?
thanks
sorry for taking so long to respond.Tiny bug: when you select 2 nodes with shift, IK Link doesn't work.
i didn't mention this, but in the previous versions the shoulder buttons actually controlled the Arm controls, so it was actually lying.Apologies if this was already mentioned somewhere else but, the shoulder nodes seem to be absent in the most recent version - 2.01. Was this intentional? I noticed screenshots of previous versions still have them.
Oh, thanks for the quick reply! Yeah I'm only needing it for preset poses that keep the shoulders set to On/Comply instead of Off, which is easily remedied by setting them to Off myself.i didn't mention this, but in the previous versions the shoulder buttons actually controlled the Arm controls, so it was actually lying.
i didn't add the shoulder controls because they aren't necessary. also they clutter up the UI.
wow , this oversight has been in the plugin since the very beginning. thanks for pointing it out. i'll patch it in next update.Oh, thanks for the quick reply! Yeah I'm only needing it for preset poses that keep the shoulders set to On/Comply instead of Off, which is easily remedied by setting them to Off myself.
For a quick and lazy "I have to parent everything to one node immediately," it does mean I have to make sure the shoulders are red before linking.
switch selection mode:
. keep -> the selected nodes stay selected when switching characters.
. retrieve -> remember selected nodes per atom and retrieve them ( basically if you selected the hand ,switched characters ,selected something else ,went back , you'll find that the hand is pre-selected for you).
. clear -> clears selection every time you switch characters (the old default behavior)
bug fixes:
. shift-selecting fix (...
!> Exception during RestoreFromLast of plugin#7_Ruvik.PH: System.NullReferenceException: Object reference not set to an instance of an object
at Ruvik.PH.<Init>m__15 (Single val) [0x00000] in <filename unknown>:0
at (wrapper delegate-invoke) UnityEngine.Events.UnityAction`1<single>:invoke_void__this___single (single)
at UnityEngine.Events.InvokableCall`1[System.Single].Invoke (Single args0) [0x00000] in <filename unknown>:0
at UnityEngine.Events.UnityEvent`1[System.Single].Invoke (Single arg0) [0x00000] in <filename unknown>:0
at UnityEngine.UI.Slider.Set (Single input, Boolean sendCallback) [0x00000] in <filename unknown>:0
at UnityEngine.UI.Slider.Set (Single input) [0x00000] in <filename unknown>:0
at UnityEngine.UI.Slider.set_value (Single value) [0x00000] in <filename unknown>:0
at JSONStorableFloat.InternalSetVal (Single f, Boolean doCallback) [0x00000] in <filename unknown>:0
at JSONStorableFloat.set_val (Single value) [0x00000] in <filename unknown>:0
at JSONStorableFloat.RestoreFromJSON (SimpleJSON.JSONClass jc, Boolean restorePhysical, Boolean restoreAppearance, Boolean setMissingToDefault) [0x00000] in <filename unknown>:0
at JSONStorable.RestoreFromJSON (SimpleJSON.JSONClass jc, Boolean restorePhysical, Boolean restoreAppearance, SimpleJSON.JSONArray presetAtoms, Boolean setMissingToDefault) [0x00000] in <filename unknown>:0
at Atom.RestoreFromLast (.JSONStorable js) [0x00000] in <filename unknown>:0
i have no idea what that error is but it will be fixed ASAP.A couple small issues (were happening before current update too):
If I select mirrored (greyed out) node, and then select a different one, it doesn't return to grey, but to white color.
Also, I keep getting this error every time I start VaM:
Code:!> Exception during RestoreFromLast of plugin#7_Ruvik.PH: System.NullReferenceException: Object reference not set to an instance of an object at Ruvik.PH.<Init>m__15 (Single val) [0x00000] in <filename unknown>:0 at (wrapper delegate-invoke) UnityEngine.Events.UnityAction`1<single>:invoke_void__this___single (single) at UnityEngine.Events.InvokableCall`1[System.Single].Invoke (Single args0) [0x00000] in <filename unknown>:0 at UnityEngine.Events.UnityEvent`1[System.Single].Invoke (Single arg0) [0x00000] in <filename unknown>:0 at UnityEngine.UI.Slider.Set (Single input, Boolean sendCallback) [0x00000] in <filename unknown>:0 at UnityEngine.UI.Slider.Set (Single input) [0x00000] in <filename unknown>:0 at UnityEngine.UI.Slider.set_value (Single value) [0x00000] in <filename unknown>:0 at JSONStorableFloat.InternalSetVal (Single f, Boolean doCallback) [0x00000] in <filename unknown>:0 at JSONStorableFloat.set_val (Single value) [0x00000] in <filename unknown>:0 at JSONStorableFloat.RestoreFromJSON (SimpleJSON.JSONClass jc, Boolean restorePhysical, Boolean restoreAppearance, Boolean setMissingToDefault) [0x00000] in <filename unknown>:0 at JSONStorable.RestoreFromJSON (SimpleJSON.JSONClass jc, Boolean restorePhysical, Boolean restoreAppearance, SimpleJSON.JSONArray presetAtoms, Boolean setMissingToDefault) [0x00000] in <filename unknown>:0 at Atom.RestoreFromLast (.JSONStorable js) [0x00000] in <filename unknown>:0
Everything still works so it's not a big deal, but would be nice to not see it Is it something on my end?
hiHey,
I'm just gonna throw out there a suggestion for maybe future feature, which is - finger posing.
Right now in VAM there are few ways to do it. First one is morph based, which means morph like each finger bending (native VAM morphs), or every finger (except thumb), or whole hand (with the thumb). It is pretty limited though. Outside of that, morph based option is using HandPose plugin - https://hub.virtamate.com/resources/handpose.8171/ , which allows for nice customization. Some morphs, like joint 2/3 Y position are little of use normally, but overall it gives the most flexibility.
Other option, JSON based (gotta set your hand to JSON based instead of morph in VAM UI), is used in Timeline - you can simply add "fingers" target preset which is there by default in Timeline. It has similar bending options, although you don't have as much control.. but for most use cases it's pretty good.
Another option is Tongue and Finger Controllers - https://hub.virtamate.com/resources/experimental-tongue-and-finger-controllers.26808/ - but for Timeline usage it's way more clunky, depending on your use case. Sometimes you want to use only 3rd joint, someone only 2nd etc.. but since these are controllers, you'd need to always keep track of what's enabled, or else it will mess up the animation. So physics/morph based ones, like the two mentioned above, are way better.
Considering essential movements, based on HandPose plugin, would be: each joint Z rotation (so 3 per finger, it's simply bending), and for each finger I believe it was X rotation (so sideways, only first joint needs that). That alone satisfies most use cases. For the thumb it's more like Y instead of Z from what I tested. Plus is, if you want to rotate the whole finger, you can just use first joint rotation, and the rest should adjust.
If you ever consider this or want to play around with this, hit me up and I can help with listing the necessary sliders and what they do. I imagine it would need a dependency of e. g. HandPose plugin, so potential UI would simply serve as a shortcut for changing sliders inside of the plugin (just as Posing Helper is simply a shortcut for manually moving things).
Right now using plugin is kinda pain because you need to sift through unnecessary morphs etc, but if you could click the visual in the ui and choose "1/2/3 bend" + "left/right" bend, for each finger, that would be epic.
hand[0].finger[0].segment[0].bone = containingAtom.transform.Find("rescale2/PhysicsModel/Genesis2" + gender + "/hip/abdomen/abdomen2/chest/rCollar/rShldr/rForeArm/rHand/rThumb1").GetComponent<DAZBone>();
hand posing mode (Credit : @babul )
. hands down the easiest way to pose fingers on desktop , yet.
. very handy for posing fingers.
. a includes a handful of selection choices.
. buns very much intended.
Load Pose Button
. works exactly like vam pose presets , "Select Existing ..." button.
. sorry for the previous pose loading button ( i implemented it...
Thank you for the update!Ruvik updated PosingHelper with a new update entry:
hand posing mode , a better load pose button , a save pose button and bug fixes.
Read the rest of this update entry...
I understand the current system gives us that additional 1%, I just struggle to think of a case I'd need it and choose it over just using existing morphs.
.fixed save and load hand presets:
- now the plugin detects which side is being used during saving and loading.
.added preview to saved hand preset:
- any preset saved after this update will have a preview image for convenience.
.Bug fixes:
- undo bug(credit qdaro)