需求
之前項目做的是鍵鼠交互,鼠標點擊按鈕,需要改爲VR交互,手柄點擊按鈕,採用的方法是腳本模擬鼠標點擊按鈕
方法
可以通過VR手柄射線與按鈕進行碰撞(手柄射線的方法是在Player上掛載SteamVR_LaserPointer腳本),會進行碰撞檢測,如果射線與按鈕碰撞(我遇到的問題是按鈕不與射線碰撞,我採用的解決方法放置碰撞體,把按鈕作爲碰撞體的子物體,這樣就可以檢測射線與按鈕的碰撞),則用腳本模擬鼠標點擊按鈕
碰撞參考文章:https://blog.csdn.net/y18771025420/article/details/104674852
Button
控件的Inspector面板屬性如下:
OnClick()下面是按鈕掛載的方法
代碼
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Collections.Generic;
public class buttonTest : MonoBehaviour {
public Button btn; //在腳本掛載處輸入需要模擬點擊的按鈕
void Update ()
{
btn.onClick.Invoke(); //模擬鼠標點擊
}
}