Search Issue Tracker

By Design

Votes

0

Found in

2017.4.0f1

2019.2.0a8

Issue ID

1134995

Regression

No

[OpenGL] Using Models with Blend Shapes causes the Skinning to happen on the CPU instead of the GPU

OpenGL

-

To reproduce:

1. Download attached project "blend-shapes.zip" and open in Unity
2. Open "SampleScene" scene
3. Make sure the current target is Standalone
4. Set Graphics API to OpenGLCore, OpenGLES2 or OpenGLES3
5. Make sure GPU Skinning is enabled in PlayerSettings
6. Open Unity Profiler
7. Enter to Play Mode
8. Record a few frames, then Pause/Stop PlayMode
9. In the CPU Profiler, click on a frame
10. Switch to Timeline view

Expected results: MeshSkinning.Skin marker should not be visible in the Worker Threads when analyzing the frame in the Profiler Timeline
Actual results: MeshSkinning.Skin is executed by Worker threads

Notes:
- This issue only appears on OpenGLCore, OpenGLES2, and OpenGLES3 Graphics API
- The Correct behavior would be if You see on Profiler MeshSkinning.SkinOnGPU
- The Project is attached in the Comments section

Reproduced on Unity 2017.4.0f1, 2017.4.23f1, 2018.3.8f1, 2019.1.0b6 and 2019.2.0a7

  1. Resolution Note:

    GPU skinning only works on GLES3. But Android GLES3 GPU Skinning is disabled due to driver instability.

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.