Search Unity

  1. All Pro and Enterprise subscribers: find helpful & inspiring creative, tech, and business know-how in the new Unity Success Hub. Sign in to stay up to date.
    Dismiss Notice
  2. Dismiss Notice

Help Wanted The `afterCullingOutputReady.Invoke` is taking 2x longer than rendering of the entire scene

Discussion in 'General Graphics' started by NightElfik, Jan 22, 2021.

  1. NightElfik

    NightElfik

    Joined:
    Oct 27, 2014
    Posts:
    11
    I have a scene with a few hundred of trees. When debugging rendering performance, I have found out that `afterCullingOutputReady.Invoke` takes majority of the frame time. And the more trees are on the screen the longer it takes. I have also found out that this time is only caused by trees in the view frustum as trees outside of view do not increase this time.

    All trees are clones of 3 prefabs generated by SpeedTree, with original materials, and with 3 LoDs where the last level is billboard (all generated by SpeedTree).

    Is there any way to cut down on this time? I had to reduce the number of trees in the scene to half to get FPS above 60.

    Here is an output from profiler: CulllingSpeedTreeLods.PNG

    Thanks!
     
  2. NightElfik

    NightElfik

    Joined:
    Oct 27, 2014
    Posts:
    11
    Anyone has an idea what is causing the excessive time during culling here? I am thinking that it is the LoD group on the trees resolving what to show? Any ideas on how to optimize this?
     
unityunity