UxrPlanarReflectionUrp Class

Component that renders a planar reflection image of the scene on an object, using the URP pipeline:  

  • If either Mirror Transform or Mirror Renderer ar not set, it will try to get these components on the same GameObjects where the planar reflection is.
  • The mirror normal is determined by the -forward axis of Mirror Transform.
  • For some reason the reflection will not work if the clear skybox is not set on the camera. Unity doesn’t seem to compute the projection matrices correctly.
  • The mirror renderer should have a material compatible with the URP planar reflection. They can be found in the UltimateXR/FX/ category.

Inheritance Hierarchy

System.Object
  Object
    Component
      Behaviour
        MonoBehaviour
          UltimateXR.Core.Components.UxrComponent
            UltimateXR.Rendering.FX.UxrPlanarReflectionUrp
Namespace: UltimateXR.Rendering.FX
Assembly: UltimateXR (in UltimateXR.dll) Version: 0.0.0.0

Syntax

C#

public class UxrPlanarReflectionUrp : UxrComponent


The UxrPlanarReflectionUrp type exposes the following members.

Constructors

NameDescription
Public methodUxrPlanarReflectionUrp

Methods

NameDescription
Protected methodAwake Stores the current material so that a “cheap” material can be assigned when disabled and the original material re-assigned when enabled back again. (Overrides UxrComponent.Awake().)
Protected methodOnDestroy Frees resources. (Overrides UxrComponent.OnDestroy().)
Protected methodOnDisable Unsubscribes from the URP camera rendering callback. (Overrides UxrComponent.OnDisable().)
Protected methodOnEnable Subscribes to the URP camera rendering callback. (Overrides UxrComponent.OnEnable().)

Extension Methods

NameDescription
Public Extension MethodCheckSetEnabled Enables/disabled the component if it isn’t enabled already. (Defined by MonoBehaviourExt.)
Public Extension MethodGetOrAddComponent<T> Gets the Component of a given type. If it doesn’t exist, it is added to the GameObject. (Defined by ComponentExt.)
Public Extension MethodGetPathUnderScene Gets the full path under current scene, including all parents, but scene name, for the given component. (Defined by ComponentExt.)
Public Extension MethodGetSceneUid Gets an unique identifier string for the given component. (Defined by ComponentExt.)
Public Extension MethodGetUniqueScenePath Gets an unique path in the scene for the given component. It will include scene name, sibling and component indices to make it unique. (Defined by ComponentExt.)
Public Extension MethodLoopCoroutine Creates a coroutine that simplifies executing a loop during a certain amount of time. (Defined by MonoBehaviourExt.)
Public Extension MethodSafeGetComponentInParent<T> Gets the Component of a given type in the GameObject or any of its parents. It also works on prefabs, where regular GetComponentInParent(Type, Boolean) will not work: https://issuetracker.unity3d.com/issues/getcomponentinparent-is-returning-null-when-the-gameobject-is-a-prefab (Defined by ComponentExt.)
Public Extension MethodShowInInspector(Boolean)Overloaded.
Controls whether to show the current object in the inspector. (Defined by ObjectExt.)
Public Extension MethodShowInInspector(Boolean, Boolean)Overloaded.
Controls whether to show the current object in the inspector and whether it is editable. (Defined by ObjectExt.)
Public Extension MethodThrowIfNull Throws an exception if the object is null. (Defined by ObjectExt.)

See Also

Reference

UltimateXR.Rendering.FX Namespace