Namespace UnityEngine.Rendering
Classes
AdditionalGIBakeRequestsManager
A manager to enqueue extra probe rendering outside of probe volumes.
AdditionalPropertyAttribute
Attribute used to customize UI display to allow properties only be visible when "Show Additional Properties" is selected
AnimationCurveParameter
A VolumeParameter that holds an AnimationCurve
value.
ArrayExtensions
Array utilities functions
BitArrayUtilities
Bit array utility class.
Blitter
Various blit (texture copy) utilities for the Scriptable Render Pipelines.
BoolParameter
A VolumeParameter that holds a bool
value.
BufferedRTHandleSystem
Implement a multiple buffering for RenderTextures.
CameraCaptureBridge
Bridge class for camera captures.
CameraSwitcher
Utility component allowing users to setup many different static camera and cycle through their positions using the Debug Window.
ClampedFloatParameter
A VolumeParameter that holds a float
value clamped between a minimum and a
maximum value.
ClampedIntParameter
A VolumeParameter that holds an int
value clamped between a
minimum and a maximum value.
ColorParameter
A VolumeParameter that holds a Color
value.
ColorUtils
A set of color manipulation utilities.
CommandBufferPool
Command Buffer Pool
ComponentSingleton<TType>
Singleton of a Component class.
ConstantBuffer
Constant Buffer management class.
ConstantBufferBase
The base class of Constant Buffer.
ConstantBuffer<CBType>
An instance of a constant buffer.
CoreMatrixUtils
Set of utility functions for the Core Scriptable Render Pipeline Library related to Matrix operations
CoreRPHelpURLAttribute
Attribute to define the help url
CoreRenderPipelinePreferences
CoreRenderPipelinePreferencesTests
CoreUnsafeUtils
Static class with unsafe utility functions.
CoreUtils
Set of utility functions for the Core Scriptable Render Pipeline Library
CoreUtils.Priorities
Class to store the menu priorities on each top level menu
CoreUtils.Sections
Class to store the menu sections
CubemapParameter
A VolumeParameter that holds a Cubemap
value.
DebugDisplaySettingsPanel
The abstract common implementation of the IDebugDisplaySettingsPanelDisposable
DebugDisplaySettingsPanel<T>
Class to help declare rendering debugger panels
DebugDisplaySettingsUI
The UI implementation for a debug settings panel
DebugDisplaySettingsVolume
Debug Dispaly Settings Volume
DebugDisplaySettings<T>
Templated class for IDebugDisplaySettings
DebugFrameTiming
Debug frame timings class
DebugManager
Manager class for the Debug Window.
DebugShapes
Debug class containing several debug shapes for debugging
DebugUI
Debug UI Class
DebugUI.BitField
Bitfield enumeration field.
DebugUI.BoolField
Boolean field.
DebugUI.Button
Button widget.
DebugUI.ColorField
Color field.
DebugUI.Container
Base class for "container" type widgets, although it can be used on its own (if a display name is set then it'll behave as a group with a header)
DebugUI.EnumField
Enumerator field.
DebugUI.EnumField<T>
Generic DebugUI.EnumField that stores enumNames and enumValues
DebugUI.Field<T>
Generic field - will be serialized in the editor if it's not read-only
DebugUI.FloatField
Float field.
DebugUI.Foldout
Unity-like foldout that can be collapsed.
DebugUI.HBox
Horizontal Layout Container.
DebugUI.HistoryBoolField
Boolean field with history.
DebugUI.HistoryEnumField
Enumerator field with history.
DebugUI.IntField
Integer field.
DebugUI.MessageBox
Simple message box widget, providing a couple of different styles.
DebugUI.ObjectField
Object field.
DebugUI.ObjectListField
Object list field.
DebugUI.ObjectPopupField
Object PopupField
DebugUI.Panel
Root panel class.
DebugUI.ProgressBarValue
Progress bar value.
DebugUI.Table
Array Container.
DebugUI.Table.Row
Row Container.
DebugUI.UIntField
Unsigned integer field.
DebugUI.VBox
Vertical Layout Container.
DebugUI.Value
Read only Value widget.
DebugUI.ValueTuple
Tuple of Value widgets for creating tabular UI.
DebugUI.Vector2Field
Vector2 field.
DebugUI.Vector3Field
Vector3 field.
DebugUI.Vector4Field
Vector4 field.
DebugUI.Widget
Base class for all debug UI widgets.
DelegateUtility
Delegate utility class.
DictionaryPool<TKey, TValue>
Dictionary Pool.
DisplayInfoAttribute
Attribute used to customize UI display.
DocumentationInfo
Documentation Info class.
DocumentationUtils
Set of utils for documentation
DynamicArrayExtensions
Extension class for DynamicArray
DynamicArray<T>
Generic growable array.
DynamicResolutionHandler
The class responsible to handle dynamic resolution.
FSRUtils
Utility functions relating to FidelityFX Super Resolution (FSR)
These functions are expected to be used in conjuction with the helper functions provided by FSRCommon.hlsl.
FloatParameter
A VolumeParameter that holds a float
value.
FloatRangeParameter
A VolumeParameter that holds a Vector2
value holding a range of two
float
values clamped between a minimum and a maximum value.
FreeCamera
Utility Free Camera component.
GenerateHLSL
Attribute specifying that HLSL code should be generated.
GenericPool<T>
Generic pool.
HDROutputUtils
Utility class for outputting to an HDR display.
HDROutputUtils.ShaderKeywords
Shader keywords for communicating with the HDR Output shader implementation.
HLSLArray
Attribute defining an HLSL array.
HableCurve
An implementation of Hable's artist-friendly tonemapping curve. http://filmicworlds.com/blog/filmic-tonemapping-with-piecewise-power-curves/
HableCurve.Segment
Individual curve segment.
HableCurve.Uniforms
An utility class to ease the binding of curve parameters to shaders.
HaltonSequence
An utility class to compute samples on the Halton sequence. https://en.wikipedia.org/wiki/Halton_sequence
HashSetPool<T>
HashSet Pool.
IntParameter
A VolumeParameter that holds an int
value.
KeyframeUtility
A helper function for interpolating AnimationCurves together. In general, curves can not be directly blended because they will have keypoints at different places. InterpAnimationCurve traverses through the keypoints. If both curves have a keypoint at the same time, they keypoints are trivially lerped together. However if one curve has a keypoint at a time that is missing in the other curve (which is the most common case), InterpAnimationCurve calculates a synthetic keypoint at that time based on value and derivative, and interpolates the resulting keys. Note that this function should only be called by internal rendering code. It creates a small pool of animation curves and reuses them to avoid creating garbage. The number of curves needed is quite small, since curves only need to be used when interpolating multiple volumes together with different curve parameters. The underlying interp function isn't allowed to fail, so in the case where we run out of memory we fall back to returning a single keyframe.
LayerMaskParameter
A VolumeParameter that holds a LayerMask
value.
LensFlareCommonSRP
Common code for all Data-Driven Lens Flare used
LensFlareComponentSRP
Data-Driven Lens Flare can be added on any gameobject
LensFlareDataElementSRP
LensFlareDataElementSRP defines collection of parameters describing the behavior a Lens Flare Element.
LensFlareDataSRP
LensFlareDataSRP defines a Lens Flare with a set of LensFlareDataElementSRP
ListBufferExtensions
Extensions for ListBuffer<T>.
ListChangedEventArgs<T>
On List Changed Event Args.
ListPool<T>
List Pool.
MaterialParameter
A VolumeParameter that holds a bool
value.
MaterialQualityUtilities
Material Quality utility class.
MaxFloatParameter
A VolumeParameter that holds a float
value clamped to a max value.
MaxIntParameter
A VolumeParameter that holds an int
value clamped to a
maximum value.
MinFloatParameter
A VolumeParameter that holds a float
value clamped to a minimum value.
MinIntParameter
A VolumeParameter that holds an int
value clamped to a
minimum value.
MousePositionDebug
Provides mouse position for debugging purpose.
NoInterpClampedFloatParameter
A VolumeParameter that holds a non-interpolating float
value clamped between
a minimum and a maximum value.
NoInterpClampedIntParameter
A VolumeParameter that holds a non-interpolating int
value
clamped between a minimum and a maximum value.
NoInterpColorParameter
A VolumeParameter that holds a non-interpolating Color
value.
NoInterpCubemapParameter
A VolumeParameter that holds a non-interpolating Cubemap
value.
NoInterpFloatParameter
A VolumeParameter that holds a non-interpolating float
value.
NoInterpFloatRangeParameter
A VolumeParameter that holds a non-interpolating Vector2
value holding
a range of two float
values clamped between a minimum and a maximum value.
NoInterpIntParameter
A VolumeParameter that holds a non-interpolating int
value.
NoInterpMaxFloatParameter
A VolumeParameter that holds a non-interpolating float
value clamped to
a maximum value.
NoInterpMaxIntParameter
A VolumeParameter that holds a non-interpolating int
value that
clamped to a maximum value.
NoInterpMinFloatParameter
A VolumeParameter that holds a non-interpolating float
value clamped to
a minimum value.
NoInterpMinIntParameter
A VolumeParameter that holds a non-interpolating int
value that
clamped to a minimum value.
NoInterpRenderTextureParameter
A VolumeParameter that holds a non-interpolating RenderTexture
value.
NoInterpTextureParameter
A VolumeParameter that holds a non-interpolating Texture
value.
NoInterpVector2Parameter
A VolumeParameter that holds a non-interpolating Vector2
value.
NoInterpVector3Parameter
A VolumeParameter that holds a non-interpolating Vector3
value.
NoInterpVector4Parameter
A VolumeParameter that holds a non-interpolating Vector4
value.
ObjectParameter<T>
A VolumeParameter that holds a serializable class or struct.
ObjectPool<T>
Generic object pool.
ObservableList<T>
Observable list.
PackingAttribute
Attribute defining packing.
PowerOfTwoTextureAtlas
Texture atlas with rectangular power of two size.
ProbeReferenceVolume
The reference volume for the Probe Volume system. This defines the structure in which volume assets are loaded into. There must be only one, hence why it follow a singleton pattern.
ProbeReferenceVolumeProfile
An Asset which holds a set of settings to use with a Probe Reference Volume.
ProbeTouchupVolume
A marker to determine what area of the scene is considered by the Probe Volumes system
ProbeVolume
A marker to determine what area of the scene is considered by the Probe Volumes system
ProbeVolumePerSceneData
A component that stores baked probe volume state and data references. Normally hidden from the user.
ProbeVolumeSceneData
A class containing info about the bounds defined by the probe volumes in various scenes.
ProfilingSampler
Wrapper around CPU and GPU profiling samplers. Use this along ProfilingScope to profile a piece of code.
RTHandle
A RTHandle is a RenderTexture that scales automatically with the camera size. This allows proper reutilization of RenderTexture memory when different cameras with various sizes are used during rendering. RTHandleSystem
RTHandleSystem
System managing a set of RTHandle textures
RTHandles
Default instance of a RTHandleSystem
ReloadAttribute
Attribute specifying information to reload with ResourceReloader. This is only used in the editor and doesn't have any effect at runtime.
ReloadGroupAttribute
Attribute specifying that it contains element that should be reloaded. If the instance of the class is null, the system will try to recreate it with the default constructor. Be sure classes using it have default constructor!
RemoveRangeExtensions
A set of extension methods for collections
RenderPipelineResources
Base of resources assets in SRP
RenderTextureParameter
A VolumeParameter that holds a RenderTexture
value.
ResourceReloader
The resources that need to be reloaded in Editor can live in Runtime. The reload call should only be done in Editor context though but it could be called from runtime entities.
SceneRenderPipeline
Setup a specific render pipeline on scene loading. This need to be used with caution as it will change project configuration.
SerializableEnum
Class to serizalize Enum as string and recover it's state
SerializedDictionary<K, V>
Unity can't serialize Dictionary so here's a custom wrapper that does. Note that you have to extend it before it can be serialized as Unity won't serialized generic-based types either.
SerializedDictionary<K, V, SK, SV>
Dictionary that can serialize keys and values as other types
ShaderDebugPrintInputProducer
Reads system input to produce ShaderDebugPrintInput parameters.
ShaderDebugPrintManager
Internal development tool. Manages gpu-buffers for shader debug printing.
SphericalHarmonicsL2Utils
A collection of utility functions used to access and set SphericalHarmonicsL2 in a more verbose way.
SurfaceDataAttributes
Attribute specifying the parameters of a surface data field.
SwapCollectionExtensions
A set of extension methods for collections
Texture2DAtlas
A generic Atlas texture of 2D textures. An atlas texture is a texture collection that collects multiple sub-textures into a single big texture. Sub-texture allocation for Texture2DAtlas is static and will not change after initial allocation. Does not add mipmap padding for sub-textures.
Texture2DParameter
A VolumeParameter that holds a 2D Texture
value.
Texture3DParameter
A VolumeParameter that holds a 3D Texture
value.
TextureCurve
A wrapper around AnimationCurve
to automatically bake it into a texture.
TextureCurveParameter
A VolumeParameter that holds a TextureCurve value.
TextureParameter
A VolumeParameter that holds a Texture
value.
TextureXR
Utility class providing default textures compatible in any XR setup.
TileLayoutUtils
Utility for tiles layout
UnsafeGenericPool<T>
Generic pool without collection checks. This class is an alternative for the GenericPool for object that allocate memory when they are being compared. It is the case for the CullingResult class from Unity, and because of this in HDRP HDCullingResults generates garbage whenever we use ==, .Equals or ReferenceEquals. This pool doesn't do any of these comparison because we don't check if the stack already contains the element before releasing it.
Vector2Parameter
A VolumeParameter that holds a Vector2
value.
Vector3Parameter
A VolumeParameter that holds a Vector3
value.
Vector4Parameter
A VolumeParameter that holds a Vector4
value.
Volume
A generic Volume component holding a VolumeProfile.
VolumeComponent
The base class for all the components that can be part of a VolumeProfile. The Volume framework automatically handles and interpolates any VolumeParameter members found in this class.
VolumeComponent.Indent
Local attribute for VolumeComponent fields only. It handles relative indentation of a property for inspector.
VolumeComponentDeprecated
An attribute to hide the volume component to be added through Add Override
button on the volume component list
VolumeComponentMenu
This attribute allows you to add commands to the Add Override popup menu on Volumes.
VolumeComponentMenuForRenderPipeline
This attribute allows you to add commands to the Add Override popup menu on Volumes and specify for which render pipelines will be supported
VolumeDebugSettings<T>
The volume settings
VolumeManager
A global manager that tracks all the Volumes in the currently loaded Scenes and does all the interpolation work.
VolumeParameter
The base class for all parameters types stored in a VolumeComponent.
VolumeParameter<T>
A generic implementation of VolumeParameter. Custom parameters should derive from this class and implement their own behavior.
VolumeProfile
An Asset which holds a set of settings to use with a Volume.
VolumeStack
Holds the state of a Volume blending update. A global stack is available by default in VolumeManager but you can also create your own using CreateStack() if you need to update the manager with specific settings and store the results for later use.
XRGraphics
XRGraphics insulates SRP from API changes across platforms, Editor versions, and as XR transitions into XR SDK
XRGraphicsAutomatedTests
Utility class to connect SRP to automated test framework.
XRUtils
XR Utility class.
Structs
BatchRendererGroupGlobals
Contains default values for built-in properties that the user is expected to manually
provide for DOTS_INSTANCING_ON
shaders. The struct layout matches the
unity_DOTSInstanceGlobalValues
constant buffer the shader expects the default
values in.
BitArray128
Bit array of size 128.
BitArray16
Bit array of size 16.
BitArray256
Bit array of size 256.
BitArray32
Bit array of size 32.
BitArray64
Bit array of size 64.
BitArray8
Bit array of size 8.
CoreUnsafeUtils.FixedBufferStringQueue
Fixed Buffer String Queue class.
DebugUI.Foldout.ContextMenuItem
Context menu item.
DebugUI.Widget.NameAndTooltip
Helper struct to allow more compact initialization of widgets.
DynamicArray<T>.Iterator
IEnumerator-like struct used to loop over this entire array. See the IEnumerator docs for more info: https://docs.microsoft.com/en-us/dotnet/api/system.collections.ienumerator
DynamicArray<T>.RangeEnumerable
IEnumerable-like struct used to iterate through a subsection of this array. See the IEnumerable docs for more info: https://docs.microsoft.com/en-us/dotnet/api/system.collections.ienumerable
DynamicArray<T>.RangeEnumerable.RangeIterator
IEnumerator-like struct used to iterate through a subsection of this array. See the IEnumerator docs for more info: https://docs.microsoft.com/en-us/dotnet/api/system.collections.ienumerator
GlobalDynamicResolutionSettings
User-facing settings for dynamic resolution.
HDROutputUtils.HDRDisplayInformation
ListBuffer<T>
A list that stores value on a provided memory buffer.
Usually use this to have a list on stack allocated memory.
ObjectPool<T>.PooledObject
Pooled object.
ProbeReferenceVolume.ExtraDataActionInput
The input to the retrieveExtraDataAction action.
ProbeReferenceVolume.RuntimeResources
The resources that are bound to the runtime shaders for sampling Adaptive Probe Volume data.
ProbeVolumeShadingParameters
Struct holiding the ProbeVolume shading parameters
ProbeVolumeSystemParameters
Initialization parameters for the probe volume system.
ProfilingSample
Profiling Sampler class.
ProfilingScope
Scoped Profiling markers
RTHandleProperties
List of properties of the RTHandle System for the current frame.
RTHandleStaticHelpers
This struct contains some static helpers that can be used when converting RTid to RThandle The common use case is to convert rtId to rtHandle and use the handle with other handle compatible core APIs
SHCoefficients
Contains spherical harmonic coefficients used for lighting representation in the format
expected by DOTS_INSTANCING_ON
shaders.
The size of the struct is padded to a power of two so arrays of such structs can be efficiently indexed in shaders.
ShaderDebugPrintInput
Shader constant input parameters.
ShaderGenUInt4
This type needs to be used when generating unsigned integer arrays for constant buffers.
SphericalHarmonicsL1
Structure holding Spherical Harmonic L1 coefficient.
VolumeIsolationScope
A scope in which a Camera filters a Volume.
Interfaces
CoreUnsafeUtils.IKeyGetter<TValue, TKey>
Key Getter interface.
DebugUI.IContainer
Interface for widgets that can contain other widgets.
DebugUI.IValueField
Any widget that implements this will be considered for serialization (only if the setter is set and thus is not read-only)
IAdditionalData
Interface to identify additional data components
IBitArray
IBitArray interface.
ICloudBackground
Volumetric Cloud Interface for CloudBackground on each SRP
IDebugData
IDebugData interface.
IDebugDisplaySettings
Interface for storing the debug settings
IDebugDisplaySettingsData
Debug UI panel interface
IDebugDisplaySettingsPanel
Debug UI panel
IDebugDisplaySettingsPanelDisposable
Debug UI panel disposable
IDebugDisplaySettingsQuery
Interface for determining what kind of debug settings are currently active.
IShaderVariantSettings
Exposes settings for shader variants
IVirtualTexturingEnabledRenderPipeline
By implementing this interface, a render pipeline can indicate to external code it supports virtual texturing.
IVolume
An interface for Volumes
IVolumeDebugSettings
Volume debug settings. This variant is obsolete and kept only for not breaking user code. Use IVolumeDebugSettings2 for all new usage.
IVolumeDebugSettings2
Volume debug settings.
IVolumetricCloud
Volumetric Cloud Interface for VolumetricCloud on each SRP
Enums
APVConstantBufferRegister
Defines the constant buffer register that will be used as binding point for the Probe Volumes constant buffer.
APVLeakReductionMode
Defines the method used to reduce leaking.
BoolParameter.DisplayType
Boolean widget type.
ClearFlag
Render Textures clear flag. This is an legacy alias for RTClearFlags.
DebugManager.UIMode
The modes of the UI of the Rendering Debugger
DebugProbeShadingMode
Modes for Debugging Probes
DebugUI.Flags
Flags for Debug UI widgets.
DebugUI.MessageBox.Style
Label style defines text color and background.
DepthBits
Bit depths of a Depth render texture. Some values may not be supported on all platforms.
DynamicResScalePolicyType
The type of dynamic resolution scaler. It essentially defines what the output of the scaler is expected to be.
DynamicResScalerSlot
The source slots for dynamic resolution scaler. Defines registers were the scalers assigned are stored. By default the User one is always used
DynamicResUpscaleFilter
Types of filters that can be used to upscale rendered result to native resolution.
DynamicResolutionHandler.UpsamplerScheduleType
The scheduling mechanism to apply upscaling.
DynamicResolutionType
Types of dynamic resolution that can be requested. Note that if Hardware is selected, but not available on the platform, the system will fallback to Software.
FieldPacking
Field packing scheme.
FieldPrecision
Field Precision
HDRColorspace
The available options for colorspace when outputting to an HDR device.
HDREncoding
The available options for color encoding when outputting to an HDR device.
HDROutputUtils.Operation
HDR color operations that the shader applies.
HDRRangeReduction
The available options for range reduction/tonemapping when outputting to an HDR device.
MSAASamples
Number of MSAA samples.
MaterialQuality
Material quality flags.
PackingRules
Packing Rules for structs.
ProbeVolume.Mode
Indicates which renderers should be considerer for the Probe Volume bounds when baking
ProbeVolumeBlendingTextureMemoryBudget
Possible values for the probe volume scenario blending memory budget (determines the size of the textures used).
ProbeVolumeSHBands
Number of Spherical Harmonics bands that are used with Probe Volumes
ProbeVolumeTextureMemoryBudget
Possible values for the probe volume memory budget (determines the size of the textures used).
ReloadAttribute.Package
Lookup method for a resource.
SRPLensFlareBlendMode
SRPLensFlareBlendMode defined the available blend mode for each LensFlareElement
SRPLensFlareDistribution
SRPLensFlareDistribution defined how we spread the flare element when count > 1
SRPLensFlareType
SRPLensFlareType which can be an image of a procedural shape If change order or add new member, need to update preview shader: LensFlareDataDrivenPreview.shader
ShaderVariantLogLevel
Specifies the logging level for shader variants
XRGraphics.StereoRenderingMode
Stereo Rendering Modes.
Delegates
ListChangedEventHandler<T>
List changed event handler.
PerformDynamicRes
The format of the delegate used to perofrm dynamic resolution.
ScaleFunc
Scaled function used to compute the size of a RTHandle for the current frame.