Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Static ropes possible?
#1
Hi - I am considering Obi Rope for a VR game - I am intending to have a lot of "ropes" - some interactable through physics and the player's hands - Obi's capabilities of which are well publicised, but also a lot of static ones (eg. electric wires running along walls, connecting puzzles etc) which never need to be interactable.

Obi seems like a great way to create realistically accurate ropes / cables which drape along other meshes / trees / walls / terrain. However for those ropes / cables etc which are static - is there a way to set up Obi-ropes using the physics to drape the rope around other objects at design time initially, then once they are in the correct position obtain just the mesh of the rope's generated skin and discard the particles for performance reasons? Or is it possible to completely disable the physics so that for static ropes this does not take up unnecessary processing power? The latter would be preferable, as that would allow modification to the ropes as the game is being designed / terrain changed / etc.

Any help would be much appreciated.
Reply
#2
(26-09-2017, 07:58 PM)Sauerkraut Wrote: Hi - I am considering Obi Rope for a VR game - I am intending to have a lot of "ropes" - some interactable through physics and the player's hands - Obi's capabilities of which are well publicised, but also a lot of static ones (eg. electric wires running along walls, connecting puzzles etc) which never need to be interactable.

Obi seems like a great way to create realistically accurate ropes / cables which drape along other meshes / trees / walls / terrain. However for those ropes / cables etc which are static - is there a way to set up Obi-ropes using the physics to drape the rope around other objects at design time initially, then once they are in the correct position obtain just the mesh of the rope's generated skin and discard the particles for performance reasons? Or is it possible to completely disable the physics so that for static ropes this does not take up unnecessary processing power? The latter would be preferable, as that would allow modification to the ropes as the game is being designed / terrain changed / etc.

Any help would be much appreciated.

Hi there!

Since v3.2, just disabling the ObiRope component stops updating physics and the current rope mesh is preserved. This turns the rope into basically a static mesh, consuming 0 resources. If you later need to resume the simulation, you just have to re-enable the component.

Note that this approach keeps all the particles in memory, so while a deactivated rope does not consume processing power, it does consume additional memory compared to a simple mesh.

cheers!
Reply
#3
(27-09-2017, 08:56 AM)josemendez Wrote: Hi there!

Since v3.2, just disabling the ObiRope component stops updating physics and the current rope mesh is preserved. This turns the rope into basically a static mesh, consuming 0 resources. If you later need to resume the simulation, you just have to re-enable the component.

Note that this approach keeps all the particles in memory, so while a deactivated rope does not consume processing power, it does consume additional memory compared to a simple mesh.

cheers!

Hi Jose - I have purchased and so far it does everything I need. Thanks for your reply. Man there are a lot of options! :-)
Reply
#4
(27-09-2017, 10:00 PM)Sauerkraut Wrote: Hi Jose - I have purchased and so far it does everything I need. Thanks for your reply. Man there are a lot of options! :-)

Although, you definitely got an amazing answer that I will keep in mind, have you considered exporting your rope mesh at runtime using a unity Editor Plugin? 

For instance, this one works pretty well, just tested with my ObiRope and exported the mesh just fine as an OBJ:
EditorObjExporter.cs
http://wiki.unity3d.com/index.php?title=...escription

Then you run your project, get the ropes looking the way you like and select all ropes you want to export in the scene view or object hierarchy, go to the Custom menu which now appears --> Export --> export whole selection to single obj. Then, the files appear 1 folder back *not* under the assets folder, but your unity project folder. 

If you want it in the same position, you could do what I do and just position a "calibration cube" that you delete after, but also export as part of your OBJ. Then, you hold "V" as you're importing it to your scene and the whole thing pops back in the same position it was before, since you snap it to vertex. After, delete the calibration cubes. 

I used it for a quick drawing app I made to draw out my train of thought in VR, then export the whole thing and design objects that match the size. Cheers, hope that helps! VR is awesome! Obi Rope is awesome too!
Reply
#5
(28-09-2017, 04:14 AM)dignifiedweb Wrote: Although, you definitely got an amazing answer that I will keep in mind, have you considered exporting your rope mesh at runtime using a unity Editor Plugin? 

For instance, this one works pretty well, just tested with my ObiRope and exported the mesh just fine as an OBJ:
EditorObjExporter.cs
http://wiki.unity3d.com/index.php?title=...escription

Then you run your project, get the ropes looking the way you like and select all ropes you want to export in the scene view or object hierarchy, go to the Custom menu which now appears --> Export --> export whole selection to single obj. Then, the files appear 1 folder back *not* under the assets folder, but your unity project folder. 

If you want it in the same position, you could do what I do and just position a "calibration cube" that you delete after, but also export as part of your OBJ. Then, you hold "V" as you're importing it to your scene and the whole thing pops back in the same position it was before, since you snap it to vertex. After, delete the calibration cubes. 

I used it for a quick drawing app I made to draw out my train of thought in VR, then export the whole thing and design objects that match the size. Cheers, hope that helps! VR is awesome! Obi Rope is awesome too!

As long as he doesn't need to switch between static/dynamic rope, this is a good solution and it consumes less memory than a deactivated rope. Thumbs up! 
Reply