一、原理总述
首先通过PICO SDK透视开启接口开启透视;然后通过HLSL 着色器创建材质赋值于球体,并将球体作为主相机的子物体包裹相机,此处着色器包含_InvertedAlpha 和_FadeDirection 两种参数,分别用来控制球体透明度和淡入淡出方向;最后通过脚本来控制着色器的两种参数值。
二、环境配置
1、Unity版本
采用Unity 2022.3.36f1c1版本,目前已发现2022.3.7f1c1版本及以下版本对于MRTK3最新版本(截止2024.9.16)依赖项存在兼容问题。
2、SDK版本
PICO SDK版本为3.0.4,MRTK3采用MixedRealityFeatureTool导入最新版本,URP版本为14.0.11,其他依赖包体会在PICO SDK和MRTK3导入时自动添加。
三、实现方式
1、透视开启
参见:PICO 视频透视
2、手势交互
3、着色器控制
通过脚本获取着色器_InvertedAlpha和_FadeDirection参数,并采用MRTK3 UX元素Slider和Toggle分别更新_InvertedAlpha和_FadeDirection的数值。另外,可以控制球体的大小在透视模式下展示虚拟物体。
四、效果演示
效果演示参见:PICO4设备上MR和VR过渡效果演示