Unity

影创科技MR -Action One快速入门

2022-03-15  本文已影响0人  荼蘼toome

<main class="overflow-hidden pb-4 background-gray">

开发环境要求

  1. 对于Unity5,SDk适配Unity5.6及以上版本。
  2. 对于Unity 2017,支持Unity2017.1.1、Unity2017.2.0、Unity 2017.3.0,其他Unity2017版本暂未验证。

软件名称软件版本JDKjdk1.7.0_01及以上Android SDKAPI Level 23及以上

创建一个HelloWorld工程

参考示例:ShadowCreator/shadowAction/Examples/HelloWorld/HelloWorld

Step1 :打开Unity 新建HelloWorld工程

image

Step2 :导入sdk 如下图

image

Step3 :新建一个HelloWorld场景

image

Step4 :使用sdk

(1) 删除场景中的MainCamera

image

(2) 点击菜单栏 Tools->ShadowCreator->Action 添加Action组件

image

(3) 场添加完组件后会在舞台上生成两个组件 “ShadowSystem”和“ActionSystem”。

“ShadowSystem”和“ActionSystem”会持久化在舞台上,切换场景时会自行进行匹配。

image

Step5 :舞台上添加 一个“HelloWorld”的text

(1) 右键->3D Object->3D Text 添加一个3D Text组建到舞台

image

(2) 更改text的属性

image

Step6 :模拟运行

点击运行按钮,在Game窗口中可看到如下:

image

凝视

1. 凝视触发条件

(1) 被凝视的3D物体 必须添加BoxCollider组件,大小按照需求更改(2) 被凝视的3D物体所在的Layer比需被InputSystem的RaycastLayerMask包含在内

2. 3D凝视

参考示例: ShadowCreator/shadowAction/Examples/Gase/Gaze_Head参考示例: ShadowCreator/shadowAction/Examples/Gase/Gaze_Bluetooth

第一步,在3D物体上的脚本上实现IPointerDownHandler接口,或者直接SCButton,或者直接使用EventTrigger组件,注册OnPointerClick事件,第二步在3D物体上挂载组件AutoGaze,改写AutoGaze 的Auto Click Time属性 (大于0)即可触发凝视点击效果 Auto Click Time的单位为秒

image

按钮和按键

1. 3D按钮制作流程

参考示例:ShadowCreator/shadowAction/Examples/Click/3DClick

1.1 创建3D按钮

点击菜单 GameObject/右键->ShadowCreator->SCButton

image

image

1.2 SCButton类

image

1. Transition 被选中物体后的变化None 无变化Scale 缩放变化Position 沿Z轴坐标变化

2. UI按钮制作流程

参考示例:ShadowCreator/shadowAction/Examples/Click/CanvaClick

2.1 创建一个canvas

GameObject/右键->ShadowCreator->Canvas

image

image

2.2 Canvas设置

  1. Layer设置成Default2. Render Mode 设置成World Space3. Scale 设置0.001(即1000的画布长度对应3D场景的1个单位长度) 也可以按照自己需求改写这个比例4. Width 和Height按照需求更改 之作为一个标度

image

2.3 创建UI按钮

GameObject/右键->ShadowCreator->UIButton

image

image

2.3 创建UI按钮组件

image

UIButtonUIButton继承自系统Button 所以如果组件带有系统Button脚本的话请删除系统Button脚本参数与Button相同

按键监听

1. 按任意键触发监听

参考示例:ShadowCreator/shadowAction/Examples/AnyClick/AnyClick

添加脚本代码SCInput.AnyKeyDownEvent += onClick;即可监听任意案件点击

image

蓝牙手柄

参考示例:ShadowCreator/shadowAction/Examples/BluetoothHandle3dof/BlueTooth

1.开启/关闭蓝牙手柄凝视更改ActionSystem组建的Inspector中ActionSystem的Use Bluetooth Gaze 就可开启蓝牙手柄凝视

image

运行时可调用代码 ActionSystem.Instance.UseBluetoothGaze (true/false)开启/关闭蓝牙手柄凝视2.蓝牙3dof数据获取(1) 调用BluetoothHandleDevice.Instance.enable3Dof (true/false)开启或关闭蓝牙手柄3dof数据接收(2) 调用ActionInput.getBluetoothHandleRotation (0/1)获取手柄的3dof数据 0为1号手柄 1为2号手柄3.接收蓝牙手柄点击事件支持七种按键事件:BACK,TIGGER,POWER,TP,VOLUMEDOWN,VOLUMEUP,OTHER,(K02手柄只支持部分按键,硬件决定)通过ActionInput.BluetoothHandleClickEvent注册代理方法,通过这个方法可以获取蓝牙手柄的点击事件上报参数,用法类似如下:4.蓝牙手柄的TP滑动事件支持四种滑动事件,上下左右,通过ActionInput.TouchLeftEvent; ActionInput.TouchRightEvent;ActionInput.TouchUpEvent;ActionInput.TouchDownEvent;注册代理方法,通过这个方法可以获取蓝牙手柄的TP滑动事件,用法类似如下:

3D键盘和输入框

参考示例:ShadowCreator/shadowAction/Examples/keyboard/keyboard

1. 创建键盘

GameObject/右键->ShadowCreator->SCKeyboard

image

2. 创建输入框

GameObject/右键->ShadowCreator->SCInputField

image

3. 输入框设置

将键盘拖入到SCInputField类的Keyboard属性中

image

打包设置

PlayerSetting设置 点击菜单栏 Edit->Project Setting->Player(1) Resolution and Pressentation 中 Default Orientation 设置为 LandScape Left

image

(2) Other Setting中 取消勾选 Multithreaded Rendering

image

(3) Other Setting中 Minimum API Level 选择 Aneroid6.0(API level 23)或以上

image

(4) File->Build Setting 中Build System 选择 Internal

image

应用启动设置

在AndroiMainfest中添加此标签,可以控制应用以全屏模式启动(默认添加),如果希望在3DUI状态启动则可删除此标签

image

</main>

<footer>

</footer>

上一篇 下一篇

猜你喜欢

热点阅读