Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Performance spike on generator
#1
Hey there,

I am trying to implement Curvy into my VR game as a path modifier at runtime. Basically, each time the player picks a new direction there is a path generated using Curvy. The paths seem to be working well but I am also generating a tube mesh to go along with it and it seems to be slowing me down quite a bit.

Each time I call the path generator it adds 38ms delay. You can see the attached screenshot below. The delay also occurs when I Clear() the spline as well as you can see by the spike later on in the graph as well.

Is there something I can do to optimize this? I am trying to keep my frame rate very consistent.

Thank you!
Mac

[Image: curvygenerator_slowdown.jpg]
Reply
#2
I setup a test scene and it looks like it's definitely being caused by the CurvyGenerator Refresh() after modifying the path spline. For instance, if I change the BuildShapeExtrusion Length and then Refresh(), it will spike the time, but if I don't call Refresh, there is no spike but of course no update to the mesh.

Is there any way around this? If there are any creative solutions I would definitely be willing to give them a go. I'm considering skinning a tube mesh and just translating it around the scene along the spline but that seems less than ideal for multiple reasons.
Reply
#3
We're currently working on a complete dynamic example scene (covering more or less exactly your scenario) and some optimizations and improvements in that department. This will be part of our next update release (after the "hotfix" 2.0.4 submitted this week).

But the delay looks quite long, did you tried to optimize extrusion settings? E.g. disable extrusion's optimize as it optimizes vertex count, not performance. Also Caps are quite costly due to poly2tri triangulation.
Reply
#4
(12-04-2015, 07:50 PM)Jake Wrote: We're currently working on a complete dynamic example scene (covering more or less exactly your scenario) and some optimizations and improvements in that department. This will be part of our next update release (after the "hotfix" 2.0.4 submitted this week).

But the delay looks quite long, did you tried to optimize extrusion settings? E.g. disable extrusion's optimize as it optimizes vertex count, not performance. Also Caps are quite costly due to poly2tri triangulation.

Hi Jake,

I tried unchecking the optimize options on both the path and the shape but it didn't have any noticeable effect. I am also not using any caps at the moment. I got the same delay on an empty scene with just the Curvy generator and spline using a default circle shape.

I'm looking forward to the demo scene you are planning. Thanks for the response!

Best,
Mac
Reply
#5
(12-04-2015, 07:50 PM)Jake Wrote: We're currently working on a complete dynamic example scene (covering more or less exactly your scenario) and some optimizations and improvements in that department. This will be part of our next update release (after the "hotfix" 2.0.4 submitted this week).

Hi Jake,

Do you have an ETA on this demo scene?

Thanks
Reply
#6
As soon as possible, hopefully by christmas. I'll keep you informed about the progress, perhaps having part of the scene done before that...
Reply
#7
(12-10-2015, 06:22 PM)Jake Wrote: As soon as possible, hopefully by christmas. I'll keep you informed about the progress, perhaps having part of the scene done before that...

Thanks, I'd definitely appreciate any updates or partial scenes.
Reply
#8
Hi Jake,

Any updates on the new release? I also have been noticing some errors when using Curvy with Unity 5.3. Specifically, that certain API methods are obsolete.

Mainly, I'm really trying to improve performance on the generator though.

Thanks,
Mac
Reply
#9
2.0.4 is already released removing all 5.3 warnings! Currently we're working on 2.0.5 with the above examples, fixes and improvements. No ETA yet though, but no celebrations or holidays in sight, so we're focused on this and only on this.
Reply
#10
Hi Jake,

Any updates on this issue? I'm still waiting on the examples you mentioned for your new release. If it would be possible to get feedback on my current project to see what I am doing wrong that would be great. I'd really like to get this issue sorted out within the next couple days.

Thanks,
Mac
Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
  Change Shape Extrusion of Generator by code UsernameHed 1 49 06-03-2019, 02:00 PM
Last Post: _Aka_
  One generator for multiple paths justinms66 10 1,695 05-30-2019, 03:48 AM
Last Post: Horibe
  Generator always broken dawtcalm 3 359 03-21-2019, 11:54 AM
Last Post: _Aka_
  Some strange issue with generator douoht 9 1,314 01-07-2019, 04:13 PM
Last Post: _Aka_

Forum Jump: