Search Unity

  1. Looking for a job or to hire someone for a project? Check out the re-opened job forums.
    Dismiss Notice
  2. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    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