Class VolumeStack
Represents the state of a Volume blending update within the Volume system.
Implements
Inherited Members
Namespace: UnityEngine .Rendering
Assembly: Unity.RenderPipelines.Core.Runtime.dll
Syntax
public sealed class VolumeStack : IDisposable
Remarks
This class is responsible for storing the blending of Volume components across multiple scenes and cameras,
By default, a global volume stack is provided by the Volume
- Volume Weight: Determines how strongly a particular volume influences the final result.
- Volume Parameters: These can be visual settings such as post-processing effects, lighting adjustments, or other specialized effects defined in the Volume components.
- Camera Volume Stack: Volume blending can vary per camera, allowing different volumes to be blended for different camera views or scenes.
While the default global volume stack works for most use cases, custom stacks provide greater flexibility and control, allowing developers to manage and store volume blending results at a per-scene or per-camera level. This can be particularly useful in complex rendering setups or when you want to apply different volume blends for different gameplay contexts or visual effects.
Keep in mind that frequent updates to the volume blending process (e.g., every frame) may have an impact on performance, especially when dealing with large numbers of volumes or complex blending operations.
Properties
isValid
Check if the stack is in valid state and can be used.
Declaration
public bool isValid { get; }
Property Value
Type | Description |
---|---|
bool |
See Also
Methods
Dispose()
Cleans up the content of this stack. Once a VolumeStack
is disposed, it shouldn't
be used anymore.
Declaration
public void Dispose()
See Also
GetComponent(Type)
Gets the current state of the Volume
Declaration
public VolumeComponent GetComponent(Type type)
Parameters
Type | Name | Description |
---|---|---|
Type | type | The type of Volume |
Returns
Type | Description |
---|---|
Volume |
The current state of the Volume |
See Also
GetComponent<T>()
Gets the current state of the VolumeT
in the stack.
Declaration
public T GetComponent<T>() where T : VolumeComponent
Returns
Type | Description |
---|---|
T | The current state of the Volume |
Type Parameters
Name | Description |
---|---|
T | A type of Volume |