Rope Minikit
The Rope Minikit brings stable rope physics to your project. The rope component can be used to simulate simple wires or more advanced setups with pulleys and weights that require active collision detection. The bundled example scene shows how to connect the rope for a physically simulated crane, a rope bridge and set of swings. The rope component is written with performance in mind and many compute intensive tasks are handled by Unity jobs on separate threads accelerated using the Burst compiler.
Features
- Stable rope physics
- Many tweakable user parameters
- Ability to dynamically split ropes using the SplitAt() method
- 4 different rope connection types allow interaction with the rest of the scene
- Pin Rope To Transform
- Pin Transform To Rope
- Pull Rigidbody To Rope
- Two Way Coupling Between Rigidbody And Rope
- Scene view handles for adjusting rope spawn curve
- High performance is achieved using Unity jobs and the Burst compiler
- Typical performance for the example scene with collisions enabled:
- ~0.2 ms spent in job threads
- ~0.7 ms spent on the main thread
- Typical performance for the example scene with collisions disabled:
- ~0.15 ms spent in job threads
- ~0.35 ms spent on the main thread
- Typical performance for the example scene with collisions enabled:
- Full source code
- Example scene contains:
- Physically simulated crane
- Rope bridge
- Swings
- Mouse interaction script
Current Limitations
- Collision support for convex Mesh, Box, Sphere and Capsule colliders only
- It is difficult to get perfectly stiff ropes unless very small physics time steps are used
- Rope bridge currently only takes the resting mass of colliding rigidbodies into account, there is no impact effect
- Scripting knowledge required for creating stable rope suspended platforms other than rope bridges
Requirements
- Burst 1.1.2 or above
About the Minikits
Minikits are small, tweakable and extendable packages with full source code that illustrate how to implement interesting behaviours for your project. They’re designed to be easy-to-use and self-explanatory.