Search Unity

VFX Graph effects only appear when camera is looking at them

Discussion in 'Visual Effect Graph' started by Graigy1337, Oct 22, 2021.

  1. Graigy1337

    Graigy1337

    Joined:
    Oct 26, 2019
    Posts:
    9
    Hi All,

    Is there a way to tell an effect to render even when its off screen? I get that this is a optimization thing but I have some effects that are quite large (like smoke effects that cover massive backgrounds) but the problem is the effect will only start once the VFX object is on screen.

    Meaning the vfx object is at say 0,0,0 and the effect stretches to 100,0,0. When the camera is looking at 50,0,0, the effect cant be seen, it hasn't started till the camera is looking at 0,0,0.

    Thanks.
     
    JaoMarcos likes this.
  2. Qriva

    Qriva

    Joined:
    Jun 30, 2019
    Posts:
    1,307
    Did you try changing "Bounds" in initialize context?
     
    VladVNeykov likes this.
  3. VladVNeykov

    VladVNeykov

    Unity Technologies

    Joined:
    Sep 16, 2016
    Posts:
    550
    Hi @Graigy1337 ,

    You can either increase/move your bounds at the top of the Initialize context, or connect the bounds to your main camera's position. You can see how to do both of these in this forum post.

    In 2021.2 we also added different bounds settings:
    - Manual: the default where you specify the size
    - Recorded: you can play the effect for a bit and record the largest size it needs
    - Automatic: for a small performance cost, the bounds will update continuously


    Hope this helps!
     

    Attached Files:

    JaoMarcos likes this.
  4. Graigy1337

    Graigy1337

    Joined:
    Oct 26, 2019
    Posts:
    9
    Thanks! This is exactly what I needed!
     
    VladVNeykov likes this.