VRC SDK
This project aims to completely document the VRChat Unity SDK
Loading...
Searching...
No Matches
VRC.SDKBase.VRC_MirrorReflection Class Reference
Inheritance diagram for VRC.SDKBase.VRC_MirrorReflection:
Collaboration diagram for VRC.SDKBase.VRC_MirrorReflection:

Classes

class  ReflectionData
 

Public Types

enum  MirrorQualitySetting : Enum
 

Public Member Functions

delegate void RenderMirrorEventDelegate (VRC_MirrorReflection sender)
 
void OnWillRenderObject ()
 

Public Attributes

bool m_DisablePixelLights = true
 
bool TurnOffMirrorOcclusion = true
 
LayerMask m_ReflectLayers = LayerMask.op_Implicit(-1)
 

Static Public Attributes

static MirrorQualitySetting MirrorQualityOverride = MirrorQualitySetting.Full
 

Protected Member Functions

virtual void UpdateCameraClearing (Camera src, Camera mirrorCamera, Skybox mirrorSkybox)
 

Properties

static VRC_MirrorReflection CurrentlyRenderingMirror [get, private set]
 
static Vector3 CurrentMirrorCenterEyePos [get, private set]
 
static RenderMirrorEventDelegate PreRenderMirror
 
static RenderMirrorEventDelegate PostRenderMirror
 

Private Types

enum  Dimension : Enum
 
enum  AntialiasingSamples : Enum
 
enum  ShaderMirrorMode : Enum
 

Private Member Functions

void OnValidate ()
 
void Start ()
 
void RenderMirrorCameras (Camera currentCamera)
 
void CameraPostRender (Camera currentCamera)
 
void OnDisable ()
 
void OnDestroy ()
 
bool ShouldRenderLeftEye (Camera cam)
 
bool ShouldRenderRightEye (Camera cam)
 
bool ShouldRenderMonoscopic (Camera cam)
 
Vector3 GetWorldEyePos (Camera cam, XRNode eye)
 
Quaternion GetWorldEyeRot (Camera cam, XRNode eye)
 
Matrix4x4 GetEyeProjectionMatrix (Camera cam, XRNode eye)
 
Vector3 GetNormalDirection ()
 
void RenderMirror (RenderTexture targetTexture, Vector3 camPosition, Quaternion camRotation, Matrix4x4 camProjectionMatrix)
 
void UpdateCameraModes (Camera src)
 
void UpdateParentTransform (Camera cam)
 
ReflectionData GetReflectionData (Camera currentCamera)
 

Static Private Member Functions

static void GetAutoResolution (Camera currentCamera, out int width, out int height)
 
static Vector4 Plane (Vector3 pos, Vector3 normal)
 
static Vector4 CameraSpacePlane (Camera cam, Vector3 pos, Vector3 normal)
 
static Matrix4x4 CalculateReflectionMatrix (Vector4 plane)
 
static float CopySign (float sizeValue, float signValue)
 
static Quaternion GetRotation (Matrix4x4 matrix)
 
static Vector3 GetPosition (Matrix4x4 matrix)
 

Private Attributes

Dimension mirrorResolution
 
AntialiasingSamples maximumAntialiasing = AntialiasingSamples.X4
 
Shader customShader
 

Static Private Attributes

const string VRC_MIRROR_CAMERA_POS_PROPERTY = "_VRChatMirrorCameraPos"
 
const string VRC_MIRROR_MODE_PROPERTY = "_VRChatMirrorMode"
 
static RenderMirrorEventDelegate m_PreRenderMirror
 
static RenderMirrorEventDelegate m_PostRenderMirror
 
const int MAX_AUTO_VR_RESOLUTION = 2048
 
const int MAX_AUTO_DESKTOP_RESOLUTION = 2048
 
const int MAX_AUTO_RESOLUTION_UNLIMITER = 32
 

Detailed Description

Definition at line 6024 of file VRCSDKBase.cs.

Member Enumeration Documentation

◆ AntialiasingSamples

Definition at line 6034 of file VRCSDKBase.cs.

◆ Dimension

Definition at line 6026 of file VRCSDKBase.cs.

◆ MirrorQualitySetting

◆ ShaderMirrorMode

Definition at line 6042 of file VRCSDKBase.cs.

Member Function Documentation

◆ CalculateReflectionMatrix()

static Matrix4x4 VRC.SDKBase.VRC_MirrorReflection.CalculateReflectionMatrix ( Vector4  plane)
staticprivate

Definition at line 6825 of file VRCSDKBase.cs.

◆ CameraPostRender()

void VRC.SDKBase.VRC_MirrorReflection.CameraPostRender ( Camera  currentCamera)
private

Definition at line 6405 of file VRCSDKBase.cs.

◆ CameraSpacePlane()

static Vector4 VRC.SDKBase.VRC_MirrorReflection.CameraSpacePlane ( Camera  cam,
Vector3  pos,
Vector3  normal 
)
staticprivate

Definition at line 6805 of file VRCSDKBase.cs.

◆ CopySign()

static float VRC.SDKBase.VRC_MirrorReflection.CopySign ( float  sizeValue,
float  signValue 
)
staticprivate

Definition at line 6850 of file VRCSDKBase.cs.

◆ GetAutoResolution()

static void VRC.SDKBase.VRC_MirrorReflection.GetAutoResolution ( Camera  currentCamera,
out int  width,
out int  height 
)
staticprivate

Definition at line 6773 of file VRCSDKBase.cs.

◆ GetEyeProjectionMatrix()

Matrix4x4 VRC.SDKBase.VRC_MirrorReflection.GetEyeProjectionMatrix ( Camera  cam,
XRNode  eye 
)
private

Definition at line 6556 of file VRCSDKBase.cs.

◆ GetNormalDirection()

Vector3 VRC.SDKBase.VRC_MirrorReflection.GetNormalDirection ( )
private

Definition at line 6564 of file VRCSDKBase.cs.

◆ GetPosition()

static Vector3 VRC.SDKBase.VRC_MirrorReflection.GetPosition ( Matrix4x4  matrix)
staticprivate

Definition at line 6894 of file VRCSDKBase.cs.

◆ GetReflectionData()

ReflectionData VRC.SDKBase.VRC_MirrorReflection.GetReflectionData ( Camera  currentCamera)
private

Definition at line 6712 of file VRCSDKBase.cs.

◆ GetRotation()

static Quaternion VRC.SDKBase.VRC_MirrorReflection.GetRotation ( Matrix4x4  matrix)
staticprivate

Definition at line 6855 of file VRCSDKBase.cs.

◆ GetWorldEyePos()

Vector3 VRC.SDKBase.VRC_MirrorReflection.GetWorldEyePos ( Camera  cam,
XRNode  eye 
)
private

Definition at line 6533 of file VRCSDKBase.cs.

◆ GetWorldEyeRot()

Quaternion VRC.SDKBase.VRC_MirrorReflection.GetWorldEyeRot ( Camera  cam,
XRNode  eye 
)
private

Definition at line 6544 of file VRCSDKBase.cs.

◆ OnDestroy()

void VRC.SDKBase.VRC_MirrorReflection.OnDestroy ( )
private

Definition at line 6452 of file VRCSDKBase.cs.

◆ OnDisable()

void VRC.SDKBase.VRC_MirrorReflection.OnDisable ( )
private

Definition at line 6423 of file VRCSDKBase.cs.

◆ OnValidate()

void VRC.SDKBase.VRC_MirrorReflection.OnValidate ( )
private

Definition at line 6201 of file VRCSDKBase.cs.

◆ OnWillRenderObject()

void VRC.SDKBase.VRC_MirrorReflection.OnWillRenderObject ( )

Definition at line 6258 of file VRCSDKBase.cs.

◆ Plane()

static Vector4 VRC.SDKBase.VRC_MirrorReflection.Plane ( Vector3  pos,
Vector3  normal 
)
staticprivate

Definition at line 6794 of file VRCSDKBase.cs.

◆ RenderMirror()

void VRC.SDKBase.VRC_MirrorReflection.RenderMirror ( RenderTexture  targetTexture,
Vector3  camPosition,
Quaternion  camRotation,
Matrix4x4  camProjectionMatrix 
)
private

Definition at line 6571 of file VRCSDKBase.cs.

◆ RenderMirrorCameras()

void VRC.SDKBase.VRC_MirrorReflection.RenderMirrorCameras ( Camera  currentCamera)
private

Definition at line 6280 of file VRCSDKBase.cs.

◆ RenderMirrorEventDelegate()

delegate void VRC.SDKBase.VRC_MirrorReflection.RenderMirrorEventDelegate ( VRC_MirrorReflection  sender)

◆ ShouldRenderLeftEye()

bool VRC.SDKBase.VRC_MirrorReflection.ShouldRenderLeftEye ( Camera  cam)
private

Definition at line 6474 of file VRCSDKBase.cs.

◆ ShouldRenderMonoscopic()

bool VRC.SDKBase.VRC_MirrorReflection.ShouldRenderMonoscopic ( Camera  cam)
private

Definition at line 6524 of file VRCSDKBase.cs.

◆ ShouldRenderRightEye()

bool VRC.SDKBase.VRC_MirrorReflection.ShouldRenderRightEye ( Camera  cam)
private

Definition at line 6499 of file VRCSDKBase.cs.

◆ Start()

void VRC.SDKBase.VRC_MirrorReflection.Start ( )
private

Definition at line 6223 of file VRCSDKBase.cs.

◆ UpdateCameraClearing()

virtual void VRC.SDKBase.VRC_MirrorReflection.UpdateCameraClearing ( Camera  src,
Camera  mirrorCamera,
Skybox  mirrorSkybox 
)
protectedvirtual

Reimplemented in VRC.SDK3.Components.VRCMirrorReflection.

Definition at line 6621 of file VRCSDKBase.cs.

◆ UpdateCameraModes()

void VRC.SDKBase.VRC_MirrorReflection.UpdateCameraModes ( Camera  src)
private

Definition at line 6643 of file VRCSDKBase.cs.

◆ UpdateParentTransform()

void VRC.SDKBase.VRC_MirrorReflection.UpdateParentTransform ( Camera  cam)
private

Definition at line 6677 of file VRCSDKBase.cs.

Member Data Documentation

◆ customShader

Shader VRC.SDKBase.VRC_MirrorReflection.customShader
private

Definition at line 6089 of file VRCSDKBase.cs.

◆ m_DisablePixelLights

bool VRC.SDKBase.VRC_MirrorReflection.m_DisablePixelLights = true

Definition at line 6071 of file VRCSDKBase.cs.

◆ m_PostRenderMirror

RenderMirrorEventDelegate VRC.SDKBase.VRC_MirrorReflection.m_PostRenderMirror
staticprivate

Definition at line 6097 of file VRCSDKBase.cs.

◆ m_PreRenderMirror

RenderMirrorEventDelegate VRC.SDKBase.VRC_MirrorReflection.m_PreRenderMirror
staticprivate

Definition at line 6094 of file VRCSDKBase.cs.

◆ m_ReflectLayers

LayerMask VRC.SDKBase.VRC_MirrorReflection.m_ReflectLayers = LayerMask.op_Implicit(-1)

Definition at line 6077 of file VRCSDKBase.cs.

◆ MAX_AUTO_DESKTOP_RESOLUTION

const int VRC.SDKBase.VRC_MirrorReflection.MAX_AUTO_DESKTOP_RESOLUTION = 2048
staticprivate

Definition at line 6119 of file VRCSDKBase.cs.

◆ MAX_AUTO_RESOLUTION_UNLIMITER

const int VRC.SDKBase.VRC_MirrorReflection.MAX_AUTO_RESOLUTION_UNLIMITER = 32
staticprivate

Definition at line 6121 of file VRCSDKBase.cs.

◆ MAX_AUTO_VR_RESOLUTION

const int VRC.SDKBase.VRC_MirrorReflection.MAX_AUTO_VR_RESOLUTION = 2048
staticprivate

Definition at line 6117 of file VRCSDKBase.cs.

◆ maximumAntialiasing

AntialiasingSamples VRC.SDKBase.VRC_MirrorReflection.maximumAntialiasing = AntialiasingSamples.X4
private

Definition at line 6085 of file VRCSDKBase.cs.

◆ MirrorQualityOverride

MirrorQualitySetting VRC.SDKBase.VRC_MirrorReflection.MirrorQualityOverride = MirrorQualitySetting.Full
static

Definition at line 6091 of file VRCSDKBase.cs.

◆ mirrorResolution

Dimension VRC.SDKBase.VRC_MirrorReflection.mirrorResolution
private

Definition at line 6081 of file VRCSDKBase.cs.

◆ TurnOffMirrorOcclusion

bool VRC.SDKBase.VRC_MirrorReflection.TurnOffMirrorOcclusion = true

Definition at line 6074 of file VRCSDKBase.cs.

◆ VRC_MIRROR_CAMERA_POS_PROPERTY

const string VRC.SDKBase.VRC_MirrorReflection.VRC_MIRROR_CAMERA_POS_PROPERTY = "_VRChatMirrorCameraPos"
staticprivate

Definition at line 6066 of file VRCSDKBase.cs.

◆ VRC_MIRROR_MODE_PROPERTY

const string VRC.SDKBase.VRC_MirrorReflection.VRC_MIRROR_MODE_PROPERTY = "_VRChatMirrorMode"
staticprivate

Definition at line 6068 of file VRCSDKBase.cs.

Property Documentation

◆ CurrentlyRenderingMirror

VRC_MirrorReflection VRC.SDKBase.VRC_MirrorReflection.CurrentlyRenderingMirror
staticgetprivate set

Definition at line 6124 of file VRCSDKBase.cs.

◆ CurrentMirrorCenterEyePos

Vector3 VRC.SDKBase.VRC_MirrorReflection.CurrentMirrorCenterEyePos
staticgetprivate set

Definition at line 6133 of file VRCSDKBase.cs.

◆ PostRenderMirror

RenderMirrorEventDelegate VRC.SDKBase.VRC_MirrorReflection.PostRenderMirror
staticaddremove

Definition at line 6171 of file VRCSDKBase.cs.

◆ PreRenderMirror

RenderMirrorEventDelegate VRC.SDKBase.VRC_MirrorReflection.PreRenderMirror
staticaddremove

Definition at line 6141 of file VRCSDKBase.cs.


The documentation for this class was generated from the following file: