Search Issue Tracker

Fixed

Votes

3

Found in

2022.2.0a17

2023.1.0a1

2023.2.0a1

Issue ID

UUM-3311

Regression

No

[VFX Graph] Disabled block is enabled when changing block's value and saving graph

Visual Effects

-

1. How to reproduce:
# Open the attached VFX (HDRP)
# Make sure that Set Lifetime block is disabled
# Change value from 5 to 1 of the Set Lifetime block
# Save graph

 

2. How to reproduce:
# Create new project in 2021.3
# Create new VFX
# Open newly created VFX
# Disable 'Set Lifetime Random VFX' block
# Make sure to save changes and exit the project
# Open this project with latest 2022.2
# Notice that VFX asset has no shader dependencies generated
# Open VFX asset and notice that Set Lifetime Random block is disabled but block's background is not faded out

 

Expected result: block remains disabled, lifetime is not set for the effect

Actual result: block is enabled and Lifetime is applied to the effect

!image-2022-11-18-14-07-04-017.png!

Errror message: 

(Null Asset) : Exception while compiling expression graph: System.ArgumentException: This method should not be called on a disabled block
  at UnityEditor.VFX.VFXCodeGenerator.BuildBlock (UnityEditor.VFX.VFXContextCompiledData contextData, System.Collections.Generic.List`1[T] linkedEventOut, UnityEditor.VFX.VFXShaderWriter blockFunction, UnityEditor.VFX.VFXShaderWriter blockCallFunction, System.Collections.Generic.HashSet`1[T] blockDeclared, System.Collections.Generic.Dictionary`2[TKey,TValue] expressionToName, UnityEditor.VFX.VFXBlock block, System.Int32& blockIndex) [0x00360] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXCodeGenerator.cs:950 
  at UnityEditor.VFX.VFXCodeGenerator.Build (UnityEditor.VFX.VFXContext context, System.String templatePath, UnityEditor.VFX.VFXCompilationMode compilationMode, UnityEditor.VFX.VFXContextCompiledData contextData, System.Collections.Generic.HashSet`1[T] dependencies) [0x002fb] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXCodeGenerator.cs:602 
  at UnityEditor.VFX.VFXCodeGenerator.Build (UnityEditor.VFX.VFXContext context, UnityEditor.VFX.VFXCompilationMode compilationMode, UnityEditor.VFX.VFXContextCompiledData contextData, System.Collections.Generic.HashSet`1[T] dependencies) [0x0001e] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXCodeGenerator.cs:214 
  at UnityEditor.VFX.VFXGraphCompiledData.GenerateShaders (System.Collections.Generic.List`1[T] outGeneratedCodeData, UnityEditor.VFX.VFXExpressionGraph graph, System.Collections.Generic.IEnumerable`1[T] contexts, System.Collections.Generic.Dictionary`2[TKey,TValue] contextToCompiledData, UnityEditor.VFX.VFXCompilationMode compilationMode, System.Collections.Generic.HashSet`1[T] dependencies) [0x00079] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXGraphCompiledData.cs:768 
  at UnityEditor.VFX.VFXGraphCompiledData.Compile (UnityEditor.VFX.VFXCompilationMode compilationMode, System.Boolean forceShaderValidation) [0x00627] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXGraphCompiledData.cs:1114 :   at UnityEditor.VFX.VFXCodeGenerator.BuildBlock (UnityEditor.VFX.VFXContextCompiledData contextData, System.Collections.Generic.List`1[T] linkedEventOut, UnityEditor.VFX.VFXShaderWriter blockFunction, UnityEditor.VFX.VFXShaderWriter blockCallFunction, System.Collections.Generic.HashSet`1[T] blockDeclared, System.Collections.Generic.Dictionary`2[TKey,TValue] expressionToName, UnityEditor.VFX.VFXBlock block, System.Int32& blockIndex) [0x00360] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXCodeGenerator.cs:950 
  at UnityEditor.VFX.VFXCodeGenerator.Build (UnityEditor.VFX.VFXContext context, System.String templatePath, UnityEditor.VFX.VFXCompilationMode compilationMode, UnityEditor.VFX.VFXContextCompiledData contextData, System.Collections.Generic.HashSet`1[T] dependencies) [0x002fb] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXCodeGenerator.cs:602 
  at UnityEditor.VFX.VFXCodeGenerator.Build (UnityEditor.VFX.VFXContext context, UnityEditor.VFX.VFXCompilationMode compilationMode, UnityEditor.VFX.VFXContextCompiledData contextData, System.Collections.Generic.HashSet`1[T] dependencies) [0x0001e] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXCodeGenerator.cs:214 
  at UnityEditor.VFX.VFXGraphCompiledData.GenerateShaders (System.Collections.Generic.List`1[T] outGeneratedCodeData, UnityEditor.VFX.VFXExpressionGraph graph, System.Collections.Generic.IEnumerable`1[T] contexts, System.Collections.Generic.Dictionary`2[TKey,TValue] contextToCompiledData, UnityEditor.VFX.VFXCompilationMode compilationMode, System.Collections.Generic.HashSet`1[T] dependencies) [0x00079] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXGraphCompiledData.cs:768 
  at UnityEditor.VFX.VFXGraphCompiledData.Compile (UnityEditor.VFX.VFXCompilationMode compilationMode, System.Boolean forceShaderValidation) [0x00627] in C:\Users\Vita\Test\Library\PackageCache\com.unity.visualeffectgraph@14.0.3\Editor\Compiler\VFXGraphCompiledData.cs:1114 
UnityEditor.EditorApplication:Internal_CallUpdateFunctions ()

Reproduced with: 2022.2.0a16.2406 + local packages trunk

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.