unity摄像机实现镜像效果

 using UnityEngine;
 [RequireComponent(typeof(Camera))]
 [ExecuteInEditMode]
 public class MirrorFlipCamera : MonoBehaviour {
     new Camera camera;
     public bool flipHorizontal;
     void Awake () {
         camera = GetComponent<Camera>();
     }
     void OnPreCull() {
         camera.ResetWorldToCameraMatrix();
         camera.ResetProjectionMatrix();
         Vector3 scale = new Vector3(flipHorizontal ? -1 : 1, 1, 1);
         camera.projectionMatrix = camera.projectionMatrix * Matrix4x4.Scale(scale);
     }
     void OnPreRender () {
         GL.invertCulling = flipHorizontal;
     }
     
     void OnPostRender () {
         GL.invertCulling = false;
     }
 }

挂摄像机上即可。

https://answers.unity.com/questions/20337/flipmirror-camera.html


版权声明:本文为zkq666666原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。