Search Issue Tracker

By Design

Votes

1

Found in

2017.4.0f1

2018.3.0a1

2018.4.2f1

2019.1.0a1

2019.2.0a1

2019.3.0a1

Issue ID

1166114

Regression

No

SkinnedMeshRenderer is updated for a Camera when it's culling mask does not intersect the renderer

Graphics - General

-

How to reproduce:
1. Open the attached "SkinnedMeshPerformance.zip" project
2. Open the Profiler window
3. Enter Play mode
4. Inspect the Camera.Render calls in the Profiler

Expected results: Only a single Camera.Render call contains a SkinnedMeshFinalizeUpdate call
Actual results: All Camera.Render calls contain a SkinnedMeshFinalizeUpdate call

Reproducible with: 2017.4.29f1, 2018.4.3f1, 2019.1.8f1, 2019.2.0b8, 2019.3.0a8

  1. Resolution Note (2019.3.X):

    The selection of what render layer mask to apply happens _after_ culling. This is intentional as it allows the same culling result to be used with different render layers selected (i.e depth only vs opaque tag).

Comments (1)

  1. LazloBonin

    Nov 18, 2024 20:31

    Is there a way to circumvent this for performance reasons? When multiple cameras are in use in a scene with a significant amount of skinned meshes that they don't render, this behaviour massively impacts performance.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.