Legacy Documentation: Version 5.5
LanguageEnglish
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Camera.cullingMatrix

Switch to Manual
public Matrix4x4 cullingMatrix;

Description

Sets a custom matrix for the camera to use for all culling queries.

This lasts until it is disabled by calling ResetCullingMatrix.

A custom culling matrix can be useful in situations where multiple cameras must be culled identically in order to render effects such as reflections.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { Camera cullingCamera; void Awake () { cullingCamera = gameObject.AddComponent<Camera>(); SetMainCameraCustomCullingMatrix (new Vector3 (10.0f, 10.0f, 10.0f), Vector3.zero); } void SetMainCameraCustomCullingMatrix (Vector3 cameraPosition, Vector3 lookAtPosition) { transform.position = cameraPosition; transform.LookAt (lookAtPosition); Camera.main.cullingMatrix = cullingCamera.projectionMatrix * cullingCamera.worldToCameraMatrix; } void ResetMainCameraCullingMatrix () { Camera.main.ResetCullingMatrix(); } }