Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help  Obi rope renderer
#1
Hello, I encountered a problem with "obi rope". In my scene 38 wires. It gives out very little FPS. I reduced the resolution of "obi rope" and received a gain, but the problem is that there must be more than 100 wires in the scene. Are there any ways to optimize the rendering of ropes? P.S. If I reduce all parameters of "obi solver" to 1 improvement there is no noticeable performance improvement.
Is there any analogue of Rigidbody.IsSleeping in obiRope? Is it possible to find out that the obiRope is sleeping?



[Image: image.png]

Obi solver
[Image: image.png]

Rope
[Image: image.png]


Thank You


Sam Violin.
Reply
#2
(24-03-2019, 05:48 AM)SamViolin Wrote: Hello, I encountered a problem with "obi rope". In my scene 38 wires. It gives out very little FPS. I reduced the resolution of "obi rope" and received a gain, but the problem is that there must be more than 100 wires in the scene. Are there any ways to optimize the rendering of ropes? P.S. If I reduce all parameters of "obi solver" to 1 improvement there is no noticeable performance improvement.
Is there any analogue of Rigidbody.IsSleeping in obiRope? Is it possible to find out that the obiRope is sleeping?



[Image: image.png]

Obi solver
[Image: image.png]

Rope
[Image: image.png]


Thank You


Sam Violin.

Hi Sam,

Profile your scene. The culprit is probably not simulation but rendering, so changing values in the solver won't result in any gains. Each rope must be rendered from scratch every frame, so having that many ropes (their meshes looking smooth) is killing your framerate.

Possible solutions: use a simpler rope section with less segments (the default one has 8, using 3 or 4 is probably enough for your scene), switch to a more performant renderer (LineRenderer), use lower rope resolution.
Reply
#3
(25-03-2019, 12:17 PM)josemendez Wrote: Hi Sam,

Profile your scene. The culprit is probably not simulation but rendering, so changing values in the solver won't result in any gains. Each rope must be rendered from scratch every frame, so having that many ropes (their meshes looking smooth) is killing your framerate.

Possible solutions: use a simpler rope section with less segments (the default one has 8, using 3 or 4 is probably enough for your scene), switch to a more performant renderer (LineRenderer), use lower rope resolution.


Hi Jose, thanks for your reply. But the application I'm working on is oriented towards realism. I solved this problem by writing the sleep logic for "ObiRopeExtruder"
Reply