Search Issue Tracker

Fixed in 2020.1.X

Fixed in 2018.4.X, 2019.2.X, 2019.3.X

Votes

3

Found in

2018.4.0f1

2018.4.11f1

2019.2

2019.3

2020.1

Issue ID

1195750

Regression

Yes

Shader is rendered incorrectly when loaded from an Asset Bundle made in Unity 2017.4 in a newer version

Graphics - General

-

Steps to reproduce:
1. Open User-supplied project
2. In the "Sample" scene, select 'loader' in the Hierarchy window and in Inspector window, under 'Loader 2' select 'Bundle VRCA2017'
3. Run the Scene

Expected: the object looks identical to how it looks in 2017.4 (picture attached)
Actual: the object differs from the look from 2017

Reproduced in: 2018.4.0f1, 2018.4.12f1, 2019.2.12f1, 2018.3.0b10, 2020.1.0a12
Not reproduced in: 2017.4.34f1

Notes:
Errors upon entering Play mode:
Failed to create DX11 vertex declaration; something wrong with vertex shader input data? (hr=80070057)

Repro on Win Standalone
Repro on DX11

No repro on OpenGLES3, Vulkan, DX12, Metal, OpenGLES2

  1. Resolution Note (fix version 2020.1):

    Serialized shader data format was accidentally changed between 2017 and 2018 causing shaders in old asset bundles to have corrupt vertex channel masks. We fixed this by patching the asset bundle data when reading it to match the current format. Backports will follow.

Comments (2)

  1. J_P_

    Nov 30, 2019 22:10

    It says fixed in "Fixed in 2018.4" but it's still listed as a known issue for Fixed in 2018.4.13?

  2. andrewkw

    Nov 25, 2019 11:03

    Annoying! Shaders are a huge problem with Asset bundles and a good reason to drop them for us!
    If only a shader 'description' could be used instead and then final shaders generated by platform/Unity-version on loading, such problems may be much improved

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.