当前位置: 首页 > wzjs >正文

福田网站设计哪家好企业管理培训

福田网站设计哪家好,企业管理培训,门户网站怎样做,wordpress后台中文设置文章目录 手部设置物体交互物体抓取添加抓取抓取三种类型抓取点偏移抓取事件抓取时不让物体吸附到手部 射线抓取交互层级 手部设置 为手部(LeftHandController)添加XRDirInteractor脚本 并添加一个球形碰撞盒,勾选isTrigger,调整大小为0.1 …

文章目录

    • 手部设置
    • 物体交互
    • 物体抓取
      • 添加抓取
      • 抓取三种类型
      • 抓取点偏移
      • 抓取事件
      • 抓取时不让物体吸附到手部
    • 射线抓取
    • 交互层级

手部设置

为手部(LeftHandController)添加XRDirInteractor脚本
并添加一个球形碰撞盒,勾选isTrigger,调整大小为0.1
在这里插入图片描述

物体交互

创建一个cube当桌子,再创建一个cube当交互物体,交互cube建议大小为0.1
在这里插入图片描述
创建三个材质球,将交互物体的材质改为红色
在这里插入图片描述
为交互物体添加刚体,
为交互物体添加一个XRSimpleInteractable脚本,注意不需要拖拽Colliders
在这里插入图片描述
然后如下设置交互事件,在事件上右键可以复制粘贴
在这里插入图片描述
此时运行,手碰到cube会变成绿色,按下抓取键会变成换色,手离开cube会重新变红

物体抓取

添加抓取

创建一个新cube,添加刚体,添加XR Grab Interactable组件,不需要拖拽colliders属性

取消勾选retain Transform Parent,这会让物体在结束抓取时重新返回原来的父物体下,到那时如果父物体的缩放xyz值不同,会导致模型顶点选择错误
在这里插入图片描述

此时运行即可抓取

抓取三种类型

在这里插入图片描述
VelocityTracking:不能穿过桌子,使用碰撞盒进行物理交互
Kinematic:可以穿过桌子,使用碰撞盒进行物理交互
Instantaneous:可以穿过桌子,使用碰撞盒进行物理交互,但是会不精确

抓取点偏移

创建一个空物体作为抓取对象的子物体,然后放在合适的抓取点上,将空物体拖拽给XRGrabInteractable上的AttachTransform上
在这里插入图片描述

抓取事件

可以通过在XRGrabInteractor脚本直接拖拽的方式绑定事件
在这里插入图片描述
也可以使用脚本绑定,例如

public class FireBulletOnActivate : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){//被抓取物体的交互组件XRGrabInteractable grabable = GetComponent<XRGrabInteractable>();grabable.activated.AddListener(FireBullet);}public void FireBullet(ActivateEventArgs arg){print("射击");}
}

抓取时不让物体吸附到手部

对于interaction Toolkit2.1以上的版本,可以直接勾选Use Dynamic Attach
在这里插入图片描述
对于旧版本,我们可以自己重写抓取脚本,将抓取点放到手上,即可实现不吸附的效果

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.XR.Interaction.Toolkit;public class XROffsetGrabInteractable : XRGrabInteractable
{private void Start(){if (!attachTransform){GameObject attachPoint = new GameObject("Offset Grab Pivot");attachPoint.transform.SetParent(transform,false);attachTransform = attachPoint.transform;}}protected override void OnSelectEntered(SelectEnterEventArgs args){print("进入");attachTransform.position = args.interactorObject.transform.position;attachTransform.rotation = args.interactorObject.transform.rotation;base.OnSelectEntered(args);}
}

直接挂载,不需要其他操作
在这里插入图片描述

射线抓取

就是普通的射线,默认就可以进行抓取操作
右键XR/RayInteractor(Action-base),然后设置好XRController组件的预制数据,对准需要抓取的物体,按下抓取键即可进行抓取

射线抓取和手部的XR Direct Interactor同时使用会造成可以抓两次的错误

如果将射线的XR Interactor Line Visual的颜色透明度改为0,那么将只在只想可抓取物体时,才会显示射线

如果取消勾选射线的XR Ray Interactor组件上的ForceGrab,那么抓取时将保持射线的距离
在这里插入图片描述

抓取时可以用摇杆控制旋转和远近

交互层级

射线本身是多功能的,既可以用来移动也可以用来抓取
但是我们希望有些射线只能用来移动,有些只能用来抓取
可以使用分层功能

注意,不是Unity本身的layer,而是interaction toolkit自己的layer

使用方法
找到手上的XR Direct Interactor 或者射线的XR Ray Interactor,选择层级,点开,添加新层级,然后设置
在这里插入图片描述

在这里插入图片描述
为需要交互的物体找到各自的层级设置,如地面,可抓取物体等,设置好要响应的层级,此时他们将只响应对应层级的交互器
在这里插入图片描述
在这里插入图片描述

http://www.dtcms.com/wzjs/261279.html

相关文章:

  • 网站建设技术包括哪些百度地图轨迹导航
  • 推广网站技巧google入口
  • 免费企业信息黄页网南宁seo服务公司
  • 汉滨网站建设奶茶店推广软文500字
  • 简单网站建设公司三只松鼠网络营销案例分析
  • 提升网站速度seo整站优化吧
  • 营销型网站的特点对网络营销的理解
  • 郑州做网站制作的公司网站建设与维护
  • 合肥市做效果图的网站手机网址大全123客户端下载
  • 大兴模版网站开发公司哪家好网页seo优化
  • 沧州免费网站建设网站关键词如何快速上首页
  • 全国人大官方网站社会建设委员会哈尔滨推广优化公司
  • 日本做黄视频网站有哪些百度seo怎么样优化
  • 做传单网站网络营销软件下载
  • 常用来做网站首页百度开户推广
  • 八上电脑课做网站需要什么软件企业网络推广最简单方法
  • 网站设计做什么的百度用户服务中心电话
  • 长春做网站团队seo外链推广工具
  • 网页qq登录手机版西安网站优化公司
  • 公司经营范围网站开发及运营优秀软文范例100字
  • 老板说做个网站我要怎么做海外seo是什么
  • 四川工程信息网官网seo策略
  • 旅游网站建设费用搜索引擎优化方案案例
  • gif表情包制作网站站长工具关键词查询
  • 上海网站建设海淘科技英雄联盟更新公告最新
  • 学校网站建设开发商自助建站系统开发
  • rss 网站插件百度关键词热度
  • 网站建设营销的技巧哪个好用?
  • 为什么要进行网站备案晚上国网app
  • icp网站建设网站关键词排名外包