Search Issue Tracker

By Design

Votes

0

Found in

2018.1.0b2

Issue ID

986817

Regression

No

[Android] Meshes not getting batched when GPU instancing is enabled

Android

-

Meshes not getting batched when GPU instancing is enabled

Steps to Repro:

1. Open attached project
2. Build and run on an Android Device
3. Unity > Window > Frame Debugger
4. Enable GPU Instancing > Observe in frame debugger that multiple draw calls are being generated

Expected Result:
Meshes should get batched in single draw call

Note:
1. Occurring with Vulkan and OpenGL3 graphics API
2. Also, note that sometimes when meshes are getting batched some of them are not getting rendered, please refer to attached screenshot
(Occurred with OnePlus3 Android 8.0 GPU Adreno530 API OpenGL3)

Environment:
Built with Windows & Mac

Occurring With:
2018.1.0b3, 2018.1.0b2, 2018.1.0a5, 2017.3.0p2, 2017.3.0f3, 2017.3.0f1, 2017.2.1p2, 2017.1.3f1

Devices Under Test:
Not working on:
1) OnePlus3
Android: 8.0.0
GPU: Adreno530

2) LGNexus4
Android: 5.1.1
GPU: Adreno 320

3) LG Nexus5
Android: 6.0.1
GPU: Adreno 330

4) ASUS Memo Pad
Android: 5.0.1 IMG
GPU: PowerVR Series 6 - G6430

5) Samsung Note 2
Android: 4.4.2
GPU: Mali-400MP4

6) Samsung Galaxy S6
Android: 7.0.0
GPU: Mali-T760MP8

Working as expected:
1) Nexus9
Android:7.1.1
GPU: Kepler DX1(Tegra)

Comments (3)

  1. richardkettlewell

    Nov 09, 2018 20:01

    I've looked into this bug. The reason why instancing batching behaves differently in Editor and on Android is Quality Settings. After I set the quality settings to same level in Editor and Android player and also set the same shadow distance, instancing batching behaves same.
    The reason is we choose different materials for different quality levels and different shadow distances. This makes batching different.

    Please check the attached screenshots for Editor and android player on Pixel2, also same on Samsung S7 Edge. In the screenshots, I set quality level to Medium, shadow distance to 150.

  2. richardkettlewell

    Nov 09, 2018 20:00

    We’ve started making our reasons public, so you can see them, but this bug is too old and predates that change. I will post our internal explanation here so you can see it :)

    PS i didn’t work on this bug, just copying the dev’s response who did look at it

  3. estradap

    May 15, 2018 20:21

    Can someone explain why this is considered 'By Design'?

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.