Search Issue Tracker
By Design
Votes
0
Found in [Package]
13.1.3
Issue ID
1387668
Regression
No
A Spawn Node's Block properties affect another Spawn Node's visible particles
Reproduction steps:
1. Open the user's attached "Testbed.zip" project
2. Open the "Scene" Scene
3. In the Assets open the "New VFX" Visual Effect Graph
4. Change the Count property of the "Spawn system (1)" to 10
5. Change the Count property of the "Spawn system" to 5
6. Observe the Scene
Expected result: Both Spawn Nodes spawn visible particles based on the Count property of each Spawn Node's Block
Actual result: Both Spawn Nodes spawn visible particles based on the Count property of the "Spawn system" Block
Reproducible with: 10.8.0 (2020.3.25f1), 12.1.2 (2021.2.7f1), 13.1.3 (2022.1.0b2)
Could not test with: 7.7.1 (2019.4.34f1) (Missing required context for Visual Effect Graph)
Notes:
- The "Spawn system (1)" spawns particles based on its Block's Count property, but only the amount of particles in the Count property of the "Spawn system" Block is visible.
- After reproducing the issue, you can select "New VFX" GameObject in the Hierarchy window and see that some particles are invisible.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Volumetric fog shader variants are missing from build when "Strict Shader Variant Matching" is disabled
- Unnecessary modifications clutter the Scene when using a RectTransform driven by a LayoutGroup in a Prefab
- Files in the target folder are deleted without a proper warning when building an iOS project
- Character animation freezes when toggling animator on/off in a coroutine
- Certain textures are incorrectly marked in the render pass list when observed through Render Graph Viewer
Resolution Note:
For this specific issue, the problem was actually in user code, we were trying to render the second VFXSystem with the rendering draw call of the first one.
In VFXPass.cs (1387668_Testbed\Assets\Scripts\VFXPass.cs), replace
ctx.cmd.DrawRenderer(VFXPass.Renderers[i], materials[j]);
By
ctx.cmd.DrawRenderer(VFXPass.Renderers[i], materials[j], j);