SteamVR2.0 进阶交互效果

3D实体按钮效果

HoverButton预制件

资源位置

关键组件

需要HoverButton、Collider、Interactable三个基础组件

参数介绍

  • movingPart:交互对象(实体按钮)
  • localMoveDistance:按钮交互的移动方向
  • engageAtPercent:接触百分比
  • disengageAtPercent:脱离百分比
  • onButtonDown:按下事件
  • onButtonUp:抬起事件
  • onButtonIsPressed:按压事件
  • engaged、buttonDown、buttonUp:表示按钮状态的,无法外部控制

方向盘效果

CircularDrive

关键组件

需要CircularDrive、Collider、Interactable三个基础组件

 参数介绍

  • axisOfRotation:旋转轴
  • childCollider:子游戏对象,它有Collider组件来启动交互,只有当有多个Collider子对象时才需要设置  
  • linearMapping:一个用于驱动的线性映射组件,如果没有指定,将被动态添加到这个游戏对象中  
  • hoverLock:如果为真,则只要按下按钮,驱动器就会保持操作状态,如果为假,则控制器移出碰撞器,驱动器就会停止  
  • limited:如果为true,旋转将被限制为[minAngle, maxAngle],如果为false,旋转是无限的  
  • frozenDistanceMinMaxThreshold:最小最大值阈值的冻结距离
  • onFrozenDistanceThreshold:当数值超过阈值,调用这个事件
  • minAngle:如果limited为true,则指定下限,否则该值未使用  
  • freezeOnMin:如果受限,设置当达到最小角度时,驱动器是否冻结其角度  
  • onMinAngle:如果受限,则在到达minAngle时调用事件  
  • maxAngle:如果limited为true,则指定上限,否则该值未使用  
  • freezeOnMax:如果受限,设置当达到最大角度时,驱动器是否冻结其角度  
  • onMaxAngle:如果受限,则在到达maxAngle时调用事件  
  • forceStart:如果limited为真值,这将强制起始角度为startAngle,并固定为[minAngle, maxAngle]  
  • startAngle:如果limited为真且forceStart为真,起始角度将是这个,固定为[minAngle, maxAngle]  
  • rotateGameObject:如果为真,这个组件所在的游戏对象的将被旋转  
  • debugPath:如果为真值,将绘制手的路径(红色)和投影值(绿色)  
  • dbgPathLimit:如果debugPath为true,这是绘制路径时需要创建的游戏对象的最大数量  
  • debugText:如果不为空,TextMesh将显示这个圆形驱动器的线性值和角度值  
  • outAngle:驱动器的输出角度值以度为单位,无限制地增加或减少,取360模数求旋转次数  

拉杆效果

LinearDrive

关键组件

需要LinearDrive、Collider、Interactable三个基础组件

 参数介绍

  • startPosition、endPosition:拉杆可以移动在两点之间
  • linearMapping:个用于驱动的线性映射组件,如果没有指定,将被动态添加到这个游戏对象中  
  • repositionGameObject:重新定位对象
  • maintainMomemntum:保持惯性动能
  • momemtumDampenRate:惯性动能抑制率

猜你喜欢

转载自blog.csdn.net/Liu_ChangC/article/details/124861247