1.Main Camera→OVRCameraRig

将新建场景中的Main Camera替换为Packages文件夹中的OVRCameraRig预制体,OVRCameraRig实际上是在Meta XR Core SDK的Prefabs文件夹中的,接下来就要配置挂载其中的OVR Manager组件。
notion image

2.配置OVR Manager组件

notion image
Tracking Origin Type:修改为Floor Level
 
notion image
Passthrough Support:改为Supported或Required
Enable Passthrough:勾选启用透视

3.创建透视层

在场景中创建一个空物体Passthrough,然后挂载上OVR Passthrough Layer脚本,将其Placement属性设置为Underlay。
notion image
在Quest中看到的现实场景属于一个图层,虚拟场景和虚拟物品相当于另外的图层
当Placement属性为Underlay时,透视的现实图层会在应用图层的最底端,这时虚拟图层就会在现实图层之上;
反之,为Overlay时,现实图层位于最顶端,现实图层就会位于虚拟图层之上了;
这与Photoshop中的图层的规律是一样的,上面的图层会覆盖下面的图层,所以透视图层的Placement值为Underlay时所展现的效果是展示虚拟物体和场景,Overlay则是不展示虚拟物体和场景;
 

4.去除背景

首先按Ctrl + 9,将天空盒材质置空
notion image
没有了Main Camera,OVRCameraRig是游戏对象,CenterEyeAnchor中的Camera组件则代表了头部相机,将Clear Flags设置为Solid Color,背景颜色设置为纯黑色。
notion image
 
notion image

5.开启调试

将任意一个物体放在场景中,调整好其变换属性,如图是创建了一个小正方体,运行项目,在头显中观察。
notion image
由于Meta的隐私政策,Unity的Game视图中不会显示现实场景,所以刚才的背景设成黑色是便于展示。

6.基本交互功能的实现

继续使用Packages文件夹中的对象

notion image
OVRInteraction:将其作为玩家物体OVRCameraRig的子物体,负责玩家的所有交互功能;
OVRHands:作为OVRInteraction的子物体;
OVRHandPrefab:LeftHandAnchor和RightHandAnchor的子物体;
OVR[Left/Right]HandSyntheticOVRHands的子物体,手部模型的渲染目标;
HandGrabInteractor:负责处理手部抓取的交互动作
 

配置这些对象

 
OVRHandPrefab
notion image
在这里只需要使用到OVR HandOVR Skeleton这两个脚本的功能,其余脚本可以先不用;
LeftHandAnchor下的OVRHandPrefab的脚本组件中的HandType都设置为Hand Left,RightHandAnchor的则设置为Hand Right;
若勾选Enable Physics Capsules,则会给手自动添加上碰撞体,是否勾选依需求而定;
OVR[Left/Right]HandSynthetic
将同一层级下的[Left/Right]Hand对象分别赋值给OVR[Left/Right]HandSynthetic的SyntheticHand组件的I Modify Data From Source属性,注意左右不要弄混;
notion image
 
HandVisuals[Left/Right]
notion image
因为OVR[Left/Right]HandSynthetic会渲染手部模型,为了防止重复渲染,隐藏或删除HandVisuals[Left/Right]
 
HandGrabInteractor
notion image
激活Visuals下面的HandGrabVisualHandGrabGlow
HandGrabVisual
将左右手的OVR[Left/Right]HandSynthetic分别赋给其对应的HandGrabVisual的属性。
notion image
 
HandGrabGlow
给Hand Visual, Hand Renderer, Material Editor属性赋值,依旧是左右手对应;
notion image
notion image
 

让物体变成可抓取的

给物体添加刚体,再添加Grabbable和Hand Grab Interactable脚本,勾选Transfer On Second Selection,这样就能够实现双手的交替抓取;
notion image
最后运行项目
Loading...
Cloud
Cloud
Free writing
最新发布
RPG Maker MZ素材规格
2025-1-15
Project Pianting设计文档
2025-1-7
第一年
2025-1-6
水族馆
2025-1-6
Flow in Games
2025-1-6
MISIDE текстовое интервью с разработчиком
2025-1-6
公告