[ VRTK ] --- 学习日记02
- VR游戏不仅能给人强烈的沉浸感还能锻炼身体,有着巨大的潜在价值,因此找到了B站 精彩体验 Up主老师的视频,学习了解,VR是如何与unity相结合工作的。
- 如果笔记有不对或大佬有更好的见解,请不吝赐教,多多指点。
二、事件检测
1.什么是插件?什么是SDK?
相同点:都是由代码组成的。
不同点:
插件:是面向功能的,
SKD:全称软件开发工具包,是面向平台的。
2.事件检测使用步骤
1.在左右手柄控制器中,附加 VRTK ControllerEvent 组件。
2.为左手柄控制器,添加 LiftController 脚本(右手控制器 同理)。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
// 引用 VRTK 的命名空间
using VRTK;
// 挂在 LiftController 物体上的脚本
public class LiftControl : MonoBehaviour
{
// 存储自身的 VRTK_ControllerEvents 控件
private VRTK_ControllerEvent controller;
private void Awake()
{
// 获取自身的 VRTK_ControllerEvents 控件
controller = GetComponent<VRTK_ControllerEvents>();
}
private void OnEnable()
{
// 进行相关事件的监听
controller.TriggerPressed += OnTriggerPressed;
}
private void OnDisable()
{
// 进行相关事件的卸载
controller.TriggerPressed -= OnTriggerPressed;
}
// 按下扳机键时执行
private void OnTriggerPressed(object sender, ControllerInteractionEventArgs e)
{
// sender 谁引发的这个事件
//e 事件探出类,事件调用的一些信息
Debug.LogFormat("{0}--{1},sender,e.touchpadAxis);
//e.buttonPressure 那个按钮被按下
//e.controllerIndex 这个手柄的索引
//e.touchpadAxis 触摸时使用
//e.touchpadAngle 触摸时使用,触摸角度
}
private void Update()
{
//检测用户是否按下
if(controller.triggerPressed)
{
print("按住扳机键");
}
}
}
3. VRTK ControllerEvent 中的事件
1.TriggerPressed 扳机键按下事件
2.TriggerReleased 扳机键释放事件
3.TriggerTouchStart 扳机键触摸事件
4.TriggerTouchEnd 扳机结束键触摸事件
5.TriggerHairlineStart 扳机键使劲按下事件
6.TriggerHairlineEnd 扳机键使劲释放事件
7.TriggerClicked 扳机键单机事件(按倒底)
8.TriggerUnclicked 扳机键结束单机事件
。。。。。。
接上一篇:[ VRTK ] — 学习日记01
接下一篇:[ VRTK ] — 学习日记03