Check out the evolution of this plugin: VICODynamics: a particle based Soft-Body physics Plugin - Game Development - Epic Developer Community Forums
Hello Everyone, I’m very excited to show off something I have been working on for our next game, Action Arcade Wrestling 3 (AAW3): which is being developed in collaboration with Dave Horn (Action937) who is the originator of the Action Arcade Wrestling series.
We needed a better system for our ropes around the ring which are currently simple SkeletalMeshes with Animations for the bounces and so on. But we wanted something better that would be more interactive.
I set out to research and implement such a system. I started with the CableComponent which comes with UE4 and it had the look and physics we wanted but it did not interact with any other actors. Long story short, I ended up completely rewriting the physics, including wind and force interaction, and implementing collision. The rendering was also optimized to further push performance.
This was all well and good except for the fact that we lost the ability to have precise animations on the ropes for special moves. For this I implemented the SkeletalRopeComponent, it allowes us to specify a SkeletalMesh and an Animation to which the rope will conform too if enabled. We can now easily switch between a “fixed” animated rope and a fully dynamic simulated one as we wish. Really awesome feature for us!
Purchase pre-UE4 Marketplace release:
This page also has a more in-depth dev blog on how the core of this Rope System was created.
Link: https://www.vicogamestudio.com/development-blog/item/dynamic-rope-cable-system-for-ue4
The result can be seen here (First demo, many features added after this one):
Getting Started video:
Please let us know your thoughts and post features you would like implemented.
Thank you.
Updates released:
Update 1: Dynamic Rope/Cable Plugin - Game Development - Epic Developer Community Forums
Update 2: Dynamic Rope/Cable Plugin - Game Development - Epic Developer Community Forums
Update 3: Dynamic Rope/Cable Plugin - Game Development - Epic Developer Community Forums Mac support added!
Update 4: Dynamic Rope/Cable Plugin - Game Development - Epic Developer Community Forums Very big update with a lot of new features!
Update 5: https://forums.unrealengine.com/showthread.php?55332-Dynamic-Rope-Cable-Plugin&p=231969&viewfull=1#post231969
Changelist:
1.0:
Initial Release
1.1:
Added binaries for Unreal Launcher version of UE4
1.2:
Fixed RopeComponent Blueprint Node not showing up.
Refactored SkinnedRopeComponent properties to properly work in the Components Tab in Blueprints.
1.3:
Added Mac binaries, now works on Mac!
Added GetTrueLength to calculate the length of the rope including stretching.
Further improved SkinnedRope Properties.
1.4:
Added CollisionShape Property to control the rope segment collision. (Sphere, Capsule or Box)
Implemented Collision Shape Scaling as the rope stretches to not introduce gaps between segments.
Differentiated Static and Dynamic collision, now CollisionEnabled and CollisionResponse are split into Static and Dynamic variants. This allows for fine tuning of character collision.
Improved Collision Projection algorithm to reduce spikes in corrections when penetrating other Actors.
Fixed RenderDebugData bug that created a memory leak due to DrawDebug* calls.
1.5.1:
Updated to 4.7.1.
Implemented property widget for easy customization of collision settings/filtering.
Completely reworked collision code, unified static and dynamic collision. Now a single concept.
Collision with dynamic objects improved greatly.
WIP SplineRopeComponent added, though not yet fully tested in 4.7.
Collision Shape property disabled for this version, the whole shape collision code is still WIP so the shape defaults to Sphere.
If you run into any trouble please post here. If it’s order specific please email me directly: ujen@vicogamestudio.com
Thank you.