Search Unity

Ultimate Rope Editor - New powerful rope physics for Unity3D [RELEASED]

Discussion in 'Assets and Asset Store' started by UGTools, Feb 11, 2013.

  1. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Good question. I haven't checked it out yet :)

     
  2. realifant

    realifant

    Joined:
    Oct 24, 2013
    Posts:
    11
    Hi, UGTools!
    1)Yes, I`m assigning the same objects again. (video capture is not very good;))
    2)"Reset Rope" helps like reassigning the 4 rope ends. It does the same. They are interchangeable.
    3)Physics materials with friction to both, the ground and the weight, don`t help.
     
  3. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    2)"Reset Rope" helps like reassigning the 4 rope ends. It does the same. They are interchangeable.

    Thanks! This will help tracking down the issue :)
    Meanwhile you can try forcing to regenerate the ropes through scripting (rope.Regenerate()) when the simulation starts.
     
  4. OzDave

    OzDave

    Joined:
    May 19, 2008
    Posts:
    144
  5. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Yes, I think it's perfectly doable. If you need any assistance just contact me through info@ultimategametools.com
     
    Last edited: Nov 23, 2013
  6. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hello everybody!


    We have brand new social media links to follow our latest asset store updates, videos, new releases and work in progress.
    For those of you interested, here they are:


     
  7. rainonrooftop

    rainonrooftop

    Joined:
    Apr 18, 2013
    Posts:
    6
    Hi. I've got a coil with extensible rope and I wanna be able to change the amount of space between the rope on the coil. I've got it set to "coil axis right - Y" and "coil axis up - Z". I want to iterate the distance between the rope on the coil so I can give it a springy effect. Any ideas?
     
  8. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hello,

    I'm not sure if I understood the question correctly. The space between the rope on the coil? Do you mean the amount of rope that is on the coil?

     
  9. rainonrooftop

    rainonrooftop

    Joined:
    Apr 18, 2013
    Posts:
    6
    Here's a picture of my character $sgetti.jpg

    When he's running I wanna give him a slinky effect. Currently the rope in the coil is coiled up tightly. I want to make it look like a spring and change the distance between each loop on the coil $spring.gif
     
  10. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    I'm afraid the coil can't be used as a spring that way. That is a whole different use than what it is intended for :)
     
  11. juangauthier

    juangauthier

    Joined:
    Sep 16, 2013
    Posts:
    10
    With the rope system, is it possible to use it for climbing on it? (example idea, you enter a building that has an elevator shaft, and you jump on the elevator cable and start climbing up or down)

    /J
     
  12. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Yes, but there is no built-in functionality to make something climb automagically :)
    You would use the link positions to know where the rope is, and the link gameobjects themselves to attach your hand to.
     
  13. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Version 1.14 has been uploaded that fixes some warnings about obsolete functions in newer versions of Unity!
     
  14. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Yes, in Unity rigidbodies can react to wind and the rope itself is modeled physically using rigidbodies.
    Currently, there already is a project using the Rope Editor to model a scarf. The scarf has been created and rigged externally and the Rope Editor is being used to assign rope physics to the bones. You can also create ropes procedurally using the editor but the shape will be cylindrical and I'm not sure if this will meet your requirements. Maybe for ribbons, but certainly not for a scarf :)

     
  15. Chomprel

    Chomprel

    Joined:
    Jul 7, 2013
    Posts:
    3
    Hi,
    I'm having a lot of fun playing with the rope editor but Im running into a small problem with one of my demo scenes. Basically I'm simulating a flail (ball-and-chain weapon on the end of a stick....like a mace but with a chain) using a razer hydra controller. IT works really well, but if the user starts swinging too fast the rope goes "haywire" as it extends beyond it's length limit. I've tried playing with the values, and can mitigate this issue somewhat but can never get rid of it fully. At worst, I Would say that the rope extends 2x it's length. Is there any way to force the length to not be exceeded?
    For details, the rope attaches a rigid-body "ball" to a GameObject that is connected to a hand object which is controlled by the razer hydra joystick.
     
  16. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hi Chomprel,

    Which settings are you currently using?
    I'm interested in the rope settings, and also the weights of the ball and the hand.
    Unity's physx system can't "lock" joints in place, but there are ways to make ropes way more solid :)

     
  17. Chomprel

    Chomprel

    Joined:
    Jul 7, 2013
    Posts:
    3
    Hi,
    Here is a screenshot of the settings:
    $ropeSettings.png

    Those are the "best" settings I have found so far to keep the rope from going haywire when really slinging the controller around. The hand actually has no RigidBody so it has no weight...and the ball has a mass of 5.

    Let me know if you have any suggestions! It's pretty fun to play with this, and I imagine making the rope more solid will improve the feel of it even more. Thanks!
     
  18. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hi! I'll take a look at it. Meanwhile, out of curiosity, if you uncomment the 3 commented lines at around line 3357 in UltimateRope.cs (could be more or less, I'm not sure if I'm looking at the very last version). Does that fix something?
    The lines look like this:

    Code (csharp):
    1.  
    2.         joint.projectionMode     = JointProjectionMode.PositionAndRotation;
    3.         joint.projectionDistance = 0.1f;
    4.         joint.projectionAngle    = 0.1f;
    5.  
     
  19. Chomprel

    Chomprel

    Joined:
    Jul 7, 2013
    Posts:
    3
    It's hard to be certain if that completely fixes the issue as the rope is moving very fast when it occurs, but if it doesn't completely fix it - it certainly helps it enough to where I can no longer notice it. :)
    Thanks very much!

     
  20. Ambro

    Ambro

    Joined:
    May 29, 2013
    Posts:
    34
    Could you share with us how you setup the rope system for the crane project ? And how you move the crane after that ?

    I have a similar system : an object in movement with a rope and a hook at the end of the rope. But if I begin to move my object, I get a jittering effect on the hook which get more visible if I'm accelerating. It seems that the hook is "late" and reattach itself at the end of the rope too late. I tried to do my movement in Update, FixedUpdate and LateUpdate, but didn't notice any changes.

    Thanks !
     
  21. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hi Ambro,

    Send me an e-mail to info at ultimategametools com and I'll attach you the crane scene so you can take a deeper look at it :)

     
  22. GuTyKa

    GuTyKa

    Joined:
    Sep 12, 2013
    Posts:
    4
    Hi! I've tried to implement a run-time rope as you've suggested above with luck. My problem is when the game starts the rope will go insane and flicker all around. I connect two ships on a bouncy water so both of the ships are moving constantly. Do you have an idea why will the rope act strange? If you need further information please ask! Thanks!

    [EDIT]
    It seems that the rope won't pull the other ship just goes beyond it's length. I've tired to set the Link Mass to a higher value and experimented with other values as well with no luck so far.
     
    Last edited: Feb 20, 2014
  23. Peter Pankras

    Peter Pankras

    Joined:
    Oct 31, 2013
    Posts:
    5
    Hi,

    I'm trying to get a crane setup going but can't really get the desired results.
    Do you have any example files of lifting situations like the crane setup you show in the video.. and also of lifting a single object with 2 or 4 connected ropes. (That connect again to 1 lifting point)

    Also, how can I minimize the stretching of the rope.. I read somewhere what it cannot be turned of.

    Thanx

    Peter
     
  24. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Are the two ships dynamic rigidbodies? How do they move?
    The rope goes haywire when it is extended beyond its length by force.
    .
     
  25. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Send me an e-mail to info at ultimategametools com and I'll send you the source scene shown in the webplayer demo.
    I personally have no examples where 4 ropes lift an object, but have tested several scenes in user projects that have that kind of configuration. It seems to be working well in all cases after carefully tweaking the parameters :)
    To minimize stretching try increasing the Link Joint Max Force and Link Joint Spring to very high values. Also play with the mass parameter and maybe the angular limits...

     
  26. isacan

    isacan

    Joined:
    Jul 18, 2013
    Posts:
    37
    Hello,

    Can i use crane in my 2d level?
     
  27. thienhaflash

    thienhaflash

    Joined:
    Jun 16, 2012
    Posts:
    509
    How can I create a fixed-length rope ? Where I can constantly moving the two ends (I will perform checks to ensure distance between them will never exceeds the predefined length. The rope should be curve down when the distance is smaller than the defined length and it should never be twisted .... Is it possible with your tool ? Maybe a demonstration ?
     
  28. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    I'm afraid it is a 3D asset. It won't work in 2D :)

     
  29. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    It is possible, that is how it works. The variable length is only if you want to model cranes or harpoons or things like that where you need to be able to modify the rope length at runtime, but by default it works exactly the way you describe.

     
  30. Hamersr

    Hamersr

    Joined:
    Mar 20, 2013
    Posts:
    14
    Hi there,

    I've been searching for some kind of Rope Asset and I found the Ultimate Rope Editor.
    From what I've seen it's very impressive and realistic, but I was wondering if there's a Trail version available to test the tool?

    Thanks!
     
  31. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hi Hamersr,

    I'm afraid there is no trial version available at the moment... :-/

     
  32. mcarriere

    mcarriere

    Joined:
    Sep 14, 2012
    Posts:
    78
    Hello!

    I sent an email to your info@ address and haven't received a response yet. Can you go into a bit of detail as to why the rope goes crazy when two connecting rigidbodies (driven by forces) cause it to past it's length?

    It would be great if we had the option to simply limit the length of the rope at this point or have the rope points act a bit more like springs, so we can simulate two physics bodies being tied together by chains or bungie cords.
     
  33. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hi mcarriere!

    Sorry, I usually give an answer in a matter of hours! :)
    The problem is the rope is built using Unity's joint components. In order for the rope to fully interact with Unity's physics system we need to use the physics elements that Unity provides to build the rope. In this case we connect a series of rigidbodies using the Configurable Joint component.
    At the same time, Unity uses nVIDIA PhysX internally as physics system, so they get "translated" to D6 joints. PhysX implementation of joints in the version Unity uses (2.81) has no support for spring-type behaviors and what happens when two rigidbodies get stretched too far away is they get unstable and start going crazy trying to get back to their rest state.
    I hope to be able to implement springs and rock-solid joints in the future but that depends on how Unity/PhysX evolve...

     
  34. spotd

    spotd

    Joined:
    Mar 12, 2014
    Posts:
    4
    Hi

    Firstly, i think the rope script is really very cool. I even bought the other one to see how it compares (and yours is easier to setup!), so a great buy for all future projects

    That said i am having huge problems getting the effect i need from your script. I am using a procedural rope between two points. I have had to lock start / end z axis, otherwise the end starts floating away from the horses neck

    But in doing this the rope goes rigid for the first few sections when the horses are at speed, and doesn't look very good (see attached). I am not using colliders, as shouldn’t need to. Also removing drag and gravity on links didn't effect anything.

    Can you give me a steer on how i may be able to get rid of the kink and make it flow more naturally ?? Ps its fine when the horses are going slow

    $Screen-Shot-2014-03-12-at-09.29.jpg
     
  35. jamie-lowes

    jamie-lowes

    Joined:
    Jul 5, 2012
    Posts:
    47
    Hey! Just posting to say thanks for the asset.

    After an hour or so of number-fiddling I got a nice dangling rope connected to my chopper and a placeholder hook, and the rope wraps over my level. Perfect! Thanks! :D



     
  36. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hi Jamie,

    Wow! that looks very nice! :)
    I should do a video with what all of you guys are doing with the tool. There are some really nice projects there!
    Thanks for the screenshots, have fun!

     
  37. jamie-lowes

    jamie-lowes

    Joined:
    Jul 5, 2012
    Posts:
    47
    Thanks!

    Cool. If you need some footage of it in action I can send you some soon.
     
  38. rrh

    rrh

    Joined:
    Jul 12, 2012
    Posts:
    331
    Do you have any advice on what settings help if I'm trying to keep it non-bouncy?

    I have a Kinematic rigidbody which I'm moving with MovePosition() and MoveRotation() as the start of the rope, and a rigidbody under gravity as the end of the rope. The rope is procedural and is extensible.

    I find as I extend the rope to lower the weight on the end, it stretches out and bounces back more than I would like. Any suggestions?
     
  39. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hi there!

    Unity joints sometimes have undesired stretching which can be annoying. I usually play with Link Joint Spring (setting it very high) Link Joint Max Force (again, high) and set the solver iteration count to the maximum value. That should be the first step. Also the masses have sometimes a lot to do with the behaviour, you need to keep reasonable ratio between links and attached weights...

     
  40. rrh

    rrh

    Joined:
    Jul 12, 2012
    Posts:
    331
    Thanks, I've been playing with that a bit.

    I'm also wondering what can I do to set the rope to extend straight downward? Does that depend upon the rotation of the UltimateRope or the rotation of the Rope Start or something else?

    Update: I've got it working. My trouble was I wasn't always setting the properties of the rope to make it refresh. And it seems to depend upon making sure the Rope Start is positioned directly above the Rope End.
     
    Last edited: Apr 3, 2014
  41. yehiel

    yehiel

    Joined:
    Jan 16, 2013
    Posts:
    1
    Hi,
    I'm new to the rope editor and wonder if there is a way to demonstrate a weight effect on the rope.
    For example wheel with weight moving on a rope.
     
  42. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hi yehiel,

    Any rigidbody will be able to interact with the rope. If you put a wheel with a collider and a rigidbody on a rope, the rope will bend accordingly.

     
  43. iddqd

    iddqd

    Joined:
    Apr 14, 2012
    Posts:
    414
    Hey i just got your asset and it's really great so far.

    Just one question:
    I'm generating a rope in code with Regenerate(false);

    My Rope should start long and then needs to be shortened, so i'm making it extensible, but how can i create the rope via code in an already extended state so i can then only shorten it?

    Calling ExtendRope before Regenerate doesn't do anything and calling it right after, will make the rope jump as it extended instantly.

    Any ideas?

    Many Thanks.
     
    Last edited: May 4, 2014
  44. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hi iddqd (nice nick!)

    I'm afraid right now you can't do it via code (I can't predict the physics, which are computed by Unity and internally by PhysX by nVIDIA). What you can do is save an extended state using the editor and the "Persist after playmode" parameter, but I'm not sure if that will solve your problem since you want it to be done completely at runtime...

     
  45. iddqd

    iddqd

    Joined:
    Apr 14, 2012
    Posts:
    414
    Ok thanks. I worked around it by extending it withing 0.1 seconds, although that makes the rope wiggle more than i'd like to.

    I guess there's no way to force the relaxed state of the rope, once it has motion? :)
     
  46. red2blue

    red2blue

    Joined:
    Feb 26, 2013
    Posts:
    200
    Hi,

    i don't have any experience with the rope so far, but if it uses rigidbody, you could try to set the drag temporarily to a high value (like 4) and reduce it instancely. That shoud work, if there are rigidbodys.

    Hope this may help.

    Cheers
    red2blue

    P.S. idkfa was also good ;)
     
  47. iddqd

    iddqd

    Joined:
    Apr 14, 2012
    Posts:
    414
    thanks, i'll give it a try :)
     
  48. rodrigoteski

    rodrigoteski

    Joined:
    Jul 10, 2012
    Posts:
    6
    http://www.youtube.com/watch?v=vLui2XgHK4E

    I am a happy owner of your program, but I need to make a game where the player is a submarine which is stuck on the end of the rope and can only move according to the distance of the rope, which is attached at the other end at a fixed point as in the video above. How to do this?
     
  49. red2blue

    red2blue

    Joined:
    Feb 26, 2013
    Posts:
    200
    Hope its working.....would be cool, if you could let me know... ;)
     
  50. UGTools

    UGTools

    Joined:
    Oct 10, 2012
    Posts:
    738
    Hello rodrigo,

    If you use a rigidbody for the submarine, the rope joints will do the rest. It will not allow the submarine to move further away...

     
unityunity