using UnityEngine; using System.Collections; using System.Collections.Generic; public class SceneMask : MonoBehaviour { #region 变量 public Material Material { get { if (_Material == null) { _Material = GetComponent().material; } return _Material; } set { _Material = value; } } public Material _Material; #endregion public void SetArea(Transform tra, float radiusX, float radiusY) { Vector3 screenPos = Camera.main.WorldToScreenPoint(tra.position); screenPos = new Vector3(screenPos.x, Screen.height - screenPos.y, 0); Material.SetFloat("_RadiusX", radiusX*Screen.width/2); Material.SetFloat("_RadiusY", radiusY*Screen.width/2); Material.SetVector("_Center", screenPos); } }