Class XRBuiltinShaderConstants
Helper static class used by render pipelines to setup stereo constants accessed by builtin shaders.
Namespace: UnityEngine.Experimental.Rendering
Syntax
public static class XRBuiltinShaderConstants
Fields
unity_StereoCameraInvProjection
Cached unique id for unity_StereoCameraInvProjection
Declaration
public static readonly int unity_StereoCameraInvProjection
Field Value
Type | Description |
---|---|
Int32 |
unity_StereoCameraProjection
Cached unique id for unity_StereoCameraProjection
Declaration
public static readonly int unity_StereoCameraProjection
Field Value
Type | Description |
---|---|
Int32 |
unity_StereoMatrixInvP
Cached unique id for unity_StereoMatrixInvP
Declaration
public static readonly int unity_StereoMatrixInvP
Field Value
Type | Description |
---|---|
Int32 |
unity_StereoMatrixInvV
Cached unique id for unity_StereoMatrixInvV
Declaration
public static readonly int unity_StereoMatrixInvV
Field Value
Type | Description |
---|---|
Int32 |
unity_StereoMatrixInvVP
Cached unique id for unity_StereoMatrixInvVP
Declaration
public static readonly int unity_StereoMatrixInvVP
Field Value
Type | Description |
---|---|
Int32 |
unity_StereoMatrixP
Cached unique id for unity_StereoMatrixP
Declaration
public static readonly int unity_StereoMatrixP
Field Value
Type | Description |
---|---|
Int32 |
unity_StereoMatrixV
Cached unique id for unity_StereoMatrixV
Declaration
public static readonly int unity_StereoMatrixV
Field Value
Type | Description |
---|---|
Int32 |
unity_StereoMatrixVP
Cached unique id for unity_StereoMatrixVP
Declaration
public static readonly int unity_StereoMatrixVP
Field Value
Type | Description |
---|---|
Int32 |
unity_StereoWorldSpaceCameraPos
Cached unique id for unity_StereoWorldSpaceCameraPos
Declaration
public static readonly int unity_StereoWorldSpaceCameraPos
Field Value
Type | Description |
---|---|
Int32 |
Methods
SetBuiltinShaderConstants(CommandBuffer)
Bind the shader constants used by the C++ builtin renderer via a command buffer. UpdateBuiltinShaderConstants
should be called before to update the constants.
This is required to maintain compatibility with legacy code and shaders.
Declaration
public static void SetBuiltinShaderConstants(CommandBuffer cmd)
Parameters
Type | Name | Description |
---|---|---|
UnityEngine.Rendering.CommandBuffer | cmd |
Update(XRPass, CommandBuffer, Boolean)
Update and bind shader constants used by the C++ builtin renderer given the XRPass. For better control of setting up builtin shader constants, see UpdateBuiltinShaderConstants
and SetBuiltinShaderConstants
which do the same logic but could take in custom projection and view matricies instead.
This is required to maintain compatibility with legacy code and shaders.
Declaration
public static void Update(XRPass xrPass, CommandBuffer cmd, bool renderIntoTexture)
Parameters
Type | Name | Description |
---|---|---|
XRPass | xrPass | |
UnityEngine.Rendering.CommandBuffer | cmd | |
Boolean | renderIntoTexture |
UpdateBuiltinShaderConstants(Matrix4x4, Matrix4x4, Boolean, Int32)
Update the shader constant data used by the C++ builtin renderer.
Declaration
public static void UpdateBuiltinShaderConstants(Matrix4x4 viewMatrix, Matrix4x4 projMatrix, bool renderIntoTexture, int viewIndex)
Parameters
Type | Name | Description |
---|---|---|
UnityEngine.Matrix4x4 | viewMatrix | |
UnityEngine.Matrix4x4 | projMatrix | |
Boolean | renderIntoTexture | |
Int32 | viewIndex |