• Hi Guest!

    We are extremely excited to announce the release of our first Beta1.1 and the first release of our Public AddonKit!
    To participate in the Beta, a subscription to the Entertainer or Creator Tier is required. For access to the Public AddonKit you must be a Creator tier member. 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.
  • Hi Guest!

    VaM2 Resource Categories have now been added to the Hub! For information on posting VaM2 resources and details about VaM2 related changes to our Community Forums, please see our official announcement here.
Physics Attachment Engine

Plugins + Scripts Physics Attachment Engine

Download [<1 MB]

Kimowal

Well-known member
Joined
Dec 27, 2022
Messages
226
Reactions
425
Kimowal submitted a new resource:

Physics Attachment Engine - Attach any controller to any other controller with smooth physics.

Attach any controller to any other controller using smooth, physics-based joints.(Not tested in VR)
Perfect for natural interactions like hand-to-object, body-to-body, or person-to-prop.


Physics Attachment Engine lets you connect two controllers with configurable joints that fade in smoothly, remain stable, and detach gracefully. Clean UI, full scene save/load, and safe error handling included.


Features


  • Attach any controller → any...

Read more about this resource...
 
Thank you for checking out Physics Attachment Engine!
This is just the beginning — upcoming updates will add Limited Motion Mode, Timeline actions, and more tools for natural interactions.


Let me know what attachments or behaviors you want to see next! ❤️
 
It's a nice plugin


I hope option to tracking position only

The rotation seems to be applied even if the rotation of the joint is turned off


And when I added a few target controllers and ran Detach All as a trigger, all the target controllers I added were deleted, so I had to add the few target controller all over again to try to attach again.

So I ran plugins in duplicate and set up one target controller for each plugin to solve it.


If the All Attach/All Detach toggle trigger is added while maintaining the list of target controllers,

It is Attach/Detach is possible while maintaining the target controller list, so it will be convenient to manage multiple target controllers with one plugin.
 
Hey genesis 2 and thank you for the feedback il deffently have a look, as for multiple controllers with one plugin, i agree and i do have this on my list for improvements.🙂👍 Il try to have an update later tonight(8:11pm here now) if im able.
 
Kimowal updated Physics Attachment Engine with a new update entry:

1.0.2

Physics Attachment Engine – Update


This update brings major workflow improvements, more control over attachment behavior, and full trigger-friendly management of multiple attachments.




✔ New Features & Fixes


1. Position-Only Tracking


You can now choose to follow position only while keeping the rotation completely free.


  • Added toggle: “Position Only (No Rotation)”...

Read the rest of this update entry...
 
Kimowal updated Physics Attachment Engine with a new update entry:

Physics Attachment Engine v2.0

Physics Attachment Engine 2.0 Update (experimental)


This update builds on the previous improvements (Position-Only tracking, rotation fixes, and the new “Enable All Attachments” system) and brings the plugin to a full behavior-driven attachment system.
Physics Attachment Engine is no longer just an attach/detach tool — it now provides realistic grab, hold, hug, sit, and soft-follow behaviors with offset capture and scene presets.



...

Read the rest of this update entry...
 
Hi. Loving where this plugin is going. I was starting to make something similar but didn't get super far yet and this is better. The one use that I'm trying to have is where a have a dildo that has a (not yet released) plugin on it that does the thrusting. I'm trying to attach the hand to it so that it follows it exactly (without the physics delay). Even with the Hold settings, there's that physics delay. It's not horrible and there very likely may not be a way to make it completely stick (this is the issue I was running into on my own version of the plugin). But curious if you might know how to implement something like that into the plugin. Also, you may want to add a searchable field to the selectors as there's so many options that it's really hard to find the one you're looking for by scrolling. Especially in VR. Looking forward to seeing where this plugin goes. :)
 


Hello, I tried the updated plugin


It seems that the position of the 2 controller is newly recorded when the attach is released and re-applied

The distance between of the ball and hand be different from the beginning when reattach it in video 0:07


I thought wearing it again like the Rubber Leash plugin would restore the same distance between the hand and the ball as when I first attached it

But Rubber Leash plugins only support hand 'Control' and no hand 'Object', so it is difficult to reattach accurately


Is it possible to move towards the ball at the interval the hand first attached when executing the reattachment trigger?


If it is determined that this is not a necessary feature in the plugin, You don't have to add
 
Last edited:
Hi. Loving where this plugin is going. I was starting to make something similar but didn't get super far yet and this is better. The one use that I'm trying to have is where a have a dildo that has a (not yet released) plugin on it that does the thrusting. I'm trying to attach the hand to it so that it follows it exactly (without the physics delay). Even with the Hold settings, there's that physics delay. It's not horrible and there very likely may not be a way to make it completely stick (this is the issue I was running into on my own version of the plugin). But curious if you might know how to implement something like that into the plugin. Also, you may want to add a searchable field to the selectors as there's so many options that it's really hard to find the one you're looking for by scrolling. Especially in VR. Looking forward to seeing where this plugin goes. :)
Hi! Thank you so much for the awesome feedback and suggestions! I've just implemented both features you requested 😁👌:

1. Perfect Follow Mode (Zero-Lag Attachment)
I've added a new "Perfect Follow" mode specifically for your use case! This uses kinematic following instead of
physics springs, giving you ZERO lag between the dildo and the hand.(your the testing doll so tell me how it works 😂)

How to use:
- Set "Attachment Mode" to "Perfect Follow"
- The target will follow the source with no physics delay
- Still respects position-only and offset settings

How it works:
- Makes the target rigidbody kinematic
- Uses `MovePosition()` and `MoveRotation()` for physics-aware movement
- No spring calculations = no delay
- Perfect for scripted thrusting dildos with hand attachment

2. Searchable Selector Fields

Added search/filter text fields for ALL selectors:
- Source Atom Filter
- Source Controller Filter
- Target Atom Filter
- Target Controller Filter

How to use:
- Just type in the filter field (appears right below each selector)
- Instantly filters the dropdown to show only matching items
- Case-insensitive search
- Super helpful in VR with hundreds of rigidbodies!

Both features are live in next update(coming soon). Try "Perfect Follow" mode for your dildo + hand setup - it should give you the
instant, lag-free tracking you're looking for!
 
Hi! Thank you so much for the awesome feedback and suggestions! I've just implemented both features you requested 😁👌:

1. Perfect Follow Mode (Zero-Lag Attachment)
I've added a new "Perfect Follow" mode specifically for your use case! This uses kinematic following instead of
physics springs, giving you ZERO lag between the dildo and the hand.(your the testing doll so tell me how it works 😂)

How to use:
- Set "Attachment Mode" to "Perfect Follow"
- The target will follow the source with no physics delay
- Still respects position-only and offset settings

How it works:
- Makes the target rigidbody kinematic
- Uses `MovePosition()` and `MoveRotation()` for physics-aware movement
- No spring calculations = no delay
- Perfect for scripted thrusting dildos with hand attachment

2. Searchable Selector Fields

Added search/filter text fields for ALL selectors:
- Source Atom Filter
- Source Controller Filter
- Target Atom Filter
- Target Controller Filter

How to use:
- Just type in the filter field (appears right below each selector)
- Instantly filters the dropdown to show only matching items
- Case-insensitive search
- Super helpful in VR with hundreds of rigidbodies!

Both features are live in next update(coming soon). Try "Perfect Follow" mode for your dildo + hand setup - it should give you the
instant, lag-free tracking you're looking for!
Awesome, I look forward to testing the new version once you put it on the hub. Thank you!
 
Awesome, I look forward to testing the new version once you put it on the hub. Thank you!
Man is my pleasure! really❤️‍🔥🍺 your plugins and looks are out of this world! uve been one of my inspirations to start creating so im emencly(did i writh it correctly??) honored that you find interest for my plugin🥲🫡
 
View attachment 547486

Hello, I tried the updated plugin


It seems that the position of the 2 controller is newly recorded when the attach is released and re-applied

The distance between of the ball and hand be different from the beginning when reattach it in video 0:07


I thought wearing it again like the Rubber Leash plugin would restore the same distance between the hand and the ball as when I first attached it

But Rubber Leash plugins only support hand 'Control' and no hand 'Object', so it is difficult to reattach accurately


Is it possible to move towards the ball at the interval the hand first attached when executing the reattachment trigger?


If it is determined that this is not a necessary feature in the plugin, You don't have to add
Hey Genesis2 :) im working on it so there will be an update either later today or tomorrow :) (The 2,1 update is not it sorry, but im pushing for the next one :) )
 
Last edited:
Kimowal updated Physics Attachment Engine with a new update entry:

Physics Attachment Engine v2.1

Physics Attachment Engine – Update 2.1


This update introduces two major improvements: a zero-lag attachment mode and searchable selector fields for faster workflow.




✅ 1. Perfect Follow Mode (Zero-Lag Attachment)


A brand-new attachment mode designed for situations where absolute, instant following is required.


What it does:


  • Zero delay between source and target
  • Uses kinematic...

Read the rest of this update entry...
 
Man is my pleasure! really❤️‍🔥🍺 your plugins and looks are out of this world! uve been one of my inspirations to start creating so im emencly(did i writh it correctly??) honored that you find interest for my plugin🥲🫡
Thank you for the kind words. and the quick turnaround on the update. :) I'll be checking it out very shortly.
 
This resource has been removed and is no longer available.
 
Kimowal updated Physics Attachment Engine with a new update entry:

2.2

⭐ Physics Attachment Engine — Major System Upgrade


This update is huge — Physics Attachment Engine has evolved from a simple controller-to-controller joint system into a fully featured attachment framework.
With new modes, presets, offset memory, perfect-follow logic, VR-optimized UI, and smarter triggers, the plugin is now ready for professional scene building.


Below is a full overview of everything new.




🔥 1. Perfect Follow Mode...


Read the rest of this update entry...
 
when i save the scene using the plugin with attachments and load it back attachments are removed
 
hey, thanks for the plugin.
i got some issues. if i want to attach somethin, then i get the error message inside the plugin that Error: could not create Joint. (Firm/PerfectFollow)
if i am trying the other variants, like Grab, then it creates the attachment on the right side, but the object didt moving.
The thing is, at the first time i used it, it worked, then not. Is there maybe something what the plugin saving and then not working later on?

EDIT:
i played around a little bit. Grab and other things works with the custom unity asset. But it dosnt matter, which one is the source atom. The Person or the CustomUnityAsset. Always the person is following the Asset. Means, i have to move the asset and not the hand of the person.
Do you think, is it possible to extend the script at a way like wearable asset? that you can attach an object more times, and chose one as active, instead of dettach?
e.g. if you want to give an Asset from person A to Person B. In Timeline, i would switch the saved attachment position. With wearable asset i am chosing Person_2 and the new position, which one i already saved in the list. So i can attach things to the new position on Person_2. At the end, it looks like, the person 1 giving the object to person 2 and it is always fixed on the correct position.


btw. the AI fixed it. Now it works for me.

Mr AI told me:

The message is coming from your own OnAttach() logic: if attachment.IsValid() returns false, you set statusText.val = "Error: Could not create joint";.


Your IsValid() currently is:

public bool IsValid() { return joint != null; }

Problem: in “Perfect Follow” mode (MODE_PERFECT) you intentionally do not create a ConfigurableJoint. You instead set targetRB.isKinematic = true and follow via MovePosition/MoveRotation. That means joint == null by design → IsValid() becomes false → you always get the error text, even though “Perfect Follow” is working as intended.

Fix:
  • Treat Perfect Follow as “valid” in IsValid()
  • Make detach/cleanup stop Perfect Follow properly (otherwise it can get “stuck” following and never fully detach)

That’s what I changed in the fixed file.

If you are not using Perfect Follow and you still get the error, then CreateJointDirect() is throwing an exception (you log it as PhysicsAttachment CreateJointDirect: ...). In that case the exact exception message from the VaM log is needed to pinpoint the root cause.
 
Last edited:
Hello, first of all, thank you for creating the plugin.

I have a question: when I add the plugin as a session plugin, finish my work, save the scene, and then load it later, the settings I worked on before saving are gone. Am I using it incorrectly, or does the plugin not support saving with the scene?
 
how do you use this on timeline? when i switch Animations in timeline the controllers are still attached from my previous animations and it fucks up my other animations
 
how do you use this on timeline? when i switch Animations in timeline the controllers are still attached from my previous animations and it fucks up my other animations
i think there is further development necessary. Like with wearable asset. The possibility to save where the object is attached. Eg. person1 or person2, then the position on the body.
Right now, i dont think that you can use it with timeline. maybe if youre click on the Control of e.g. Right Hand in timeline, and set for an animation run the weight of this control to zero. Then you add the control of the attached object to timeline and you animate the movement of the hand through the object control. In the next animation you can dettach the object and set the weight of the animation control for the Hand Control again to 1 from zero.
You can do the same with the animation weight of the object controller. Then, when you dettach the object from the hand, you set the animation weight for the object controller to 1 and giving him an instant new position. Then its not attached anymore to your person atom.

With the wearable asset Plugin you can do the same, but only on the controller Level and a few premade positions like LH, RH instead of LH/RH Controller. But not on the skin position. Depends on the usecase which way is the better one. But maybe i am misunderstanding you, what you want to do.
 
How do I actually use this to attach a hand to a breast, and not the nipple? I know the soft body for the breasts is made out of a ton of little colliders and joints so how would I go about attaching the hand to the closest collider/joint in the breast? I basically want to attach the hand to the bottom of the breast, and have it follow as it bounces and sways.

EDIT: Even whenever I try to attach the hands to the nipples using the plugin, it feels more like the nipples are following the hands rather than the other way round. I ended up finding a work around using this technique which I like, however I would still much prefer to be able to actually attach the hands to a specific section of the breasts.
 
Last edited:
Do you mean that? You want to attach also the nipple? So it cant wobble around, because the finger is blocking the movement?
Person2 is the blonde. The Plugin is loaded in the Dark Haired Atom.
1766567702151.png


Edit:
i think you can it only do with workarounds. What is your workaround?
i think stoppers attach to vertex plugin, and with some invisible object attached to the nipple (it works with the plugin) then attach it somehow to the thumbs or the hand and not to the hand controller.
 

Attachments

  • Vam_attach.mp4
    13.5 MB
Last edited:
Back
Top Bottom