void Start () {
BG = GameObject.Find("BackGround");
UIBG = BG.GetComponent<RectTransform>();
ZeroScreen = new Vector3(Screen.width / 2, Screen.height / 2, 0);
}
void Update () {
//Debug.Log("UI" + UIBG.localPosition);
//Debug.Log("Zero : "+ZeroScreen);
MousePos = Input.mousePosition;
//Debug.Log("MousePos : " + MousePos);
Vector3 DetaMouse = MousePos - ZeroScreen;
BG.GetComponent<RectTransform>().localPosition = -1 * DetaMouse * rate;
}
原理很简单,就是鼠标到屏幕中心的位置,就是UGUI的位置的镜像
再把Vector乘个Rate 感觉效果就出来了