unity3D VR开发 手柄射线的事件回调增加

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// 
/// 定义一个射线类用于回调 记得增加一个射线控制模块
/// 
public class LineEvent : MonoBehaviour
{

    SteamVR_LaserPointer laserPoniter; //定义一个射线组件的对象
                                       // Use this for initialization
    void Start()
    {
        laserPoniter = GetComponent(); //将这个对象获得射线组件
        laserPoniter.PointerIn += OnPointerIn;//增加回调事件
        laserPoniter.PointerOut += OnPointerInOut;//增加回调事件
    }

    // Update is called once per frame
    void Update()
    {

    }
    void OnPointerIn(object sender, PointerEventArgs e)//定义函数事件(当射线碰撞到物体时)
    {
       print(e.target.gameObject.name) ;//获取射线碰触的物体对象的名字
    }
    void OnPointerInOut(object sender, PointerEventArgs e)//定义函数事件(当射线离开物体时)
    {
        print(e.target.gameObject.name);//当射线离开时物体对象的名字
    }
}

你可能感兴趣的:(unity3d,vr入门,手柄)