Search Issue Tracker

In Progress

Fix In Review for 2021.3.X

Fixed in 2022.3.14f1, 2023.2.0b18, 2023.3.0a7

Votes

0

Found in

2021.3.28f1

2022.3.4f1

2023.1.3f1

2023.2.0a20

2023.3.0a1

Issue ID

UUM-5582

Regression

Yes

Shader using UsePass does not recompile when referenced shader is fixed after being broken

--

-

Steps:

1. Open attached project (ShaderBroken)
2. Open Repro3 scene
> All spheres renders red (correct)
3. On ProjectView, open BrokenSinglePass shader, edit line 47 to make it broken:
return col * float4(1,0,0,1)=;
4. Save file, go back to Unity
> All spheres renders pink (correct)
5. edit line 47 again to fix it:
return col * float4(1,0,0,1);
6. Save file, go back to Unity
> Only the SingleShader sphere is red, UsePass sphere stays pink (wrong)

Expected: both sphere renders red after SingleShader sphere is being fixed

Reproducible:
2022.2.0a3.602 (fc824837782c)
2022.1.0b4.2571 (0b1e54378c16)
2021.2.8f1.4208 (d0e5f0a7b06a)
2021.2.0b1.3027 (1e2674f03162)
2021.2.0a18

Not-reproducible:
2021.2.0a17
2021.1.21f1.3059 (f2d5d3c59f8c)
2021.1.0f1.2163.11 (61a549675243)
2020.3.18f1.979 (a7d1c678663c)

  1. Resolution Note (fix version 2023.3.0a7):

    Fixed UsePass handling to prevent referencing old data after reimporting the pass source

  2. Resolution Note (fix version 2021.3):

    Fixed UsePass shader to update its state whenever the pass owner shader is being modified

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.