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

使用Unity引擎开发Rokid主机应用的模型交互操作

系列文章目录

unity知识点


文章目录

  • 系列文章目录
  • 👉前言
  • 👉效果实现
  • 👉一、基础环境配置
  • 👉一、先把Demo素材导入
  • 👉四、创建UI交互应用
  • 👉壁纸分享
  • 👉总结


👉前言

Rokid Unity OpenXR Plugin 是为Unity 开发者提供的在 YodaOS-Master 空间计算操作系统上开发空间计算应用的工具。它基于OpenXR 标准开发,帮助开发者在 YodaOS-Master 上进行空间构建、虚实交互、空间感知,并最终构建完整的空间应用。

博客将会介绍如何实现 用Unity引擎开发Rokid主机的射线交互操作。希望这篇博客对Unity的开发者有所帮助。
大家好,我是心疼你的一切,不定时更新Unity开发技巧,觉得有用记得一键三连哦。
欢迎点赞评论哦.下面就让我们进入正文吧 !


提示:以下是本篇文章正文内容,下面案例可供参考
在这里插入图片描述

👉效果实现

Rokid模型操作

👉一、基础环境配置

配置的话跟着官网配置就好了,就不过多赘述了。
开发环境搭建文档
SDK导入

👉一、先把Demo素材导入

导入示例demo步骤:
第一步先打开:Package Manager
第二步:选择Rokid UXR SDK 在选择Sampies 点击Install就可以了
在这里插入图片描述
第三步:如下图找到示例demo学习即可

在这里插入图片描述
里面一共20几个Demo

👉四、创建UI交互应用

  1. 新建场景scene,把主摄像机删除掉,切记先导入示例项目哦

  2. 找到Packages里面的相机添加进去
    在这里插入图片描述

  3. 添加UI预制体(如下图)
    在这里插入图片描述

  4. 添加鼠标交互预制体(如下图)
    在这里插入图片描述

  5. 场景新建一个Plane,然后调整相机距离稍微调远一点,X轴的旋转角度也调一下,可以稍微俯视的视角。

  6. 把UI预制体放在相机的下面,UI就可以跟着镜头旋转了,相当于固定UI在镜头上。

  7. UI预制体下面新建五个按钮 场景结构如下图,
    在这里插入图片描述

  8. 场景搭建好之后开始编写脚本进行交互,代码如下

代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Battlehub.RTHandles;public class ModelData : MonoBehaviour
{public Transform carPrefab;private Transform cartemporary;   //临时的public PositionHandle positionHandle;public RotationHandle rotationHandle;public ScaleHandle scaleHandle; // Start is called before the first frame updatevoid Start(){}/// <summary>/// 生成模型/// </summary>public void CreateModel(){if (cartemporary==null){Transform transfo = Instantiate(carPrefab);cartemporary = transfo;}}/// <summary>/// 移动模型/// </summary>public void PosModel(){CloseJH();if (cartemporary != null){cartemporary.GetComponent<PositionHandle>().enabled = true;}}/// <summary>/// 旋转模型/// </summary>public void RotModel(){CloseJH();if (cartemporary != null){cartemporary.GetComponent<RotationHandle>().enabled = true;}}/// <summary>/// 缩放模型/// </summary>public void ScaModel(){CloseJH();if (cartemporary != null){cartemporary.GetComponent<ScaleHandle>().enabled = true;}}/// <summary>/// 删除模型/// </summary>public void DesModel(){if (cartemporary != null){Destroy(cartemporary.gameObject);}}void CloseJH(){if (cartemporary != null){cartemporary.GetComponent<PositionHandle>().enabled = false;cartemporary.GetComponent<RotationHandle>().enabled = false;cartemporary.GetComponent<ScaleHandle>().enabled = false;}}// Update is called once per framevoid Update(){}
}
  1. 最后给按钮绑定事件,上面都有注释,按注释绑定即可。

  2. 最后运行点击即可看到效果,然后发布即可测试效果。

  3. 效果实现需要一个坐标轴的插件,记得导入,导入链接过两天上传一下,记得下载

如果想要更深,更复杂的场景,需要结合其他的Demo学习,就能编辑更多功能的应用


👉壁纸分享

在这里插入图片描述

👉总结

Rokid是一家专注于人机交互技术的产品平台公司,深耕5G+AI+AR领域的软硬件产品开发,为不同垂直领域的客户提供全栈式解决方案,打造智能时代的超级工人,有效提升用户体验、助力增效。
本次总结的就是使用Unity引擎开发Rokid主机的射线交互操作实现, 有需要会继续增加功能
如能帮助到你,就帮忙点个赞吧,三连更好哦,谢谢
你的点赞就是对博主的支持,有问题记得留言评论哦!
不定时更新Unity开发技巧,觉得有用记得一键三连哦。么么哒!

http://www.dtcms.com/a/453086.html

相关文章:

  • 数据中台的数据源与数据处理流程
  • Oracle数据库impdp/expdp
  • Java学习之旅第第二季-10:包装类
  • 微信网站与响应式网站有哪些如何建立营销型网站
  • PanguHA,一款Windows双机热备工具
  • PostgreSQL 从入门到精通:Windows 环境下安装与使用指南
  • ChatMemory连续对话保存和持久化
  • 从Excel到AI:机器学习如何重塑数据分析,以及MLquick的破局之道
  • 子网站怎么做做网站的公司那家好。
  • PyTorchTensorFlow
  • 廊坊网站排名优化报价wordpress如何写个插件
  • 什么是DDoS攻击?DDoS攻击介绍
  • 类与对象 --1
  • C++异常处理全面解析:从基础到应用
  • Linux 命令:tree
  • Altium Designer元器件NAME从竖向改为横向
  • 天津网站建设费用佛山企业网站建设策划
  • 吴恩达机器学习课程(PyTorch适配)学习笔记:1.2 优化算法实践
  • 服务端之NestJS接口响应message编写规范详解、写给前后端都舒服的接口、API提示信息标准化
  • 【开题答辩全过程】以 安康毛绒玩具展示及销售平台为例,包含答辩的问题和答案
  • H7-TOOL的I2C控制器主机模式的时钟扩展功能支持
  • Keil 单片机笔记1
  • 一个人做运营网站仿站网站开发
  • Linux -- 传输层协议TCP
  • 浅谈 Protobuf——高效、安全的跨语言通信基石
  • SpringBoot安全进阶:利用门限算法加固密钥与敏感配置
  • [工作流节点17] 数据校验与错误处理机制:让自动化更安全、更可靠
  • 佛山高端网站制作wordpress免费用户
  • 《SaaS双优实战:数据驱动下的体验迭代与性能攻坚全指南》
  • 人力资源管理的思维方式学习笔记6