Search Issue Tracker
Fixed in Unity 2017.1
[GPUInstancing][Player] Shadow instancing doesn't work with primitive gameobject groups having different instanced materials
You'll need to have Unity Editor along with Android and iOS players installed.
Steps to repro:
1. Open attached project;
2. Open '01_SimpleMultipleLights' scene;
3. Launch the scene;
4. Open FrameDebugger (Window -> FrameDebugger);
5. Click Enable button;
6. Observe draw calls, issued under Shadows.RenderJobDir pass;
7. Notice that there is Draw Mesh (instanced) call (see attached Editor.png screenshot).
8. Exit Play mode;
9. Deploy the scene either to standalone player or to mobile device (either Android or iOS);
10. Open FrameDebugger (Window -> FrameDebugger);
11. Expand 'Connected Player' dropdown list;
12. Select mobile device that you've just built your project for;
13. Click Enable button;
14. Observe draw calls, issued under Shadows.RenderJobDir.
Draw Mesh (instanced) calls in Shadows.RenderJobDir should be issued for standalone player.
Lots of Draw Mesh calls are issued (see attached Mobile.png screenshot). This behaviour is inconsistent with instancing on standalone platforms.
Frame Debugger tells that objects have different shadow casters (which isn't correct, since all shadow casters per-object group are similar) and Dynamic batching is off (note that instancing should still work when it's turned off).
- Reproducible in 2017.1.0b1, 5.6.0p2;
- Reproducible in Standalone player;
- Reproducible for both Android and iOS (Samsung Galaxy S7 Edge and iPhone 5s);
- Not reproducible for scene with instanced Speedtrees.
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- Editor crashes after enabling certain modules in Particle System while particles are being emitted
- Warning not accounting for the first variable when multiple variables are listed after Type declaration
- Particle bounds are not being calculated correctly when transform scale is non-uniform
- Editor crashes at Transform::GetLocalScale when opening scene
- Unity crashes at GfxDeviceD3D11Base::BindBuffersForDraw when LinerRenderer.positionCount is set to big number