Unreal 示例
更新时间: 2026年4月17日
这些 Unreal 示例说明如何在您的应用中实现基本的 VR 概念和 Meta Quest 功能。
打开 HandTrackingSample 或 HandTrackingCustomSample 贴图(位于 Content/HandGameplay/Maps/ 文件夹),查看如何实现手势追踪。
该应用会显示两个以 VR 合成图层方式渲染的 UMG 小工具,并支持将其中一个小工具在合成层与主渲染通道之间切换显示。
Actor_Blueprint 演示将小工具渲染到立体图层中的过程。其 Menu 小组件的渲染目标会被设置为立体图层的纹理。
打开
Menu 或
Menu_CompositorLayer,在
UMG 编辑器中打开 UMG 小工具。
LayerGameMode 和 VRCharacter 用于初始化场景,并让场景以正确的高度显示。
下表列出移动类型和相关的玩家控制选项:
- 指向和瞬移:将摇杆从任一控制器上的中立位置移开,并指向您想去的地方。地面上的弧线和指示符将显示您将瞬移到的目的地和方向。旋转摇杆来更改您的目标方向。摇杆回到中立位置,您就会瞬移到目的地。
- 指向和瞬移(使用第三人虚拟形象):对于步行前往目的地的第三人虚拟形象来说,此操作方法与“指向和瞬移”相同。
- 阶梯式平移和旋转:向前或向后推左摇杆,可调整跳跃高度。向左或向右推右摇杆,可以 35 度的间隔旋转。
- 抓住并拖动:按住动作按钮或触发器,在地面上移动控制器,将自己拖向某个方向。
- 手臂摆动:按住动作按钮或触发按钮,摆动手臂,朝着控制器指向的方向前进。
- 双摇杆步行:左摇杆控制平移,右摇杆控制旋转,就像标准的第一人称非 VR 游戏一样。这类动作在 VR 中会让人感觉不舒服,所以我们建议您只短暂地试一试,或在习惯前不要让头戴设备完全遮住您的眼睛。
这些移动方法在 MotionControllerPawn Blueprint 中实现。
该示例应用聚焦于用双手操纵对象,这可能会非常棘手。因此,该示例只提供了几个可互动对象供您研究。
- 蓝色方块:可以使用任一控制器上的抓取按钮拿起这些方块并扔出。我们已经在
BP_PickupCube Blueprint 中实现了这种互动。 - 枪:拿起武器,单手抓住。让另一只手靠近枪管然后抓住,控制目标。枪支会根据您双手之间的距离进行伸展。我们已经在
BP_PickupTwoHandedAim Blueprint 中实现了这种互动。 - 蓝杆:拿起杆子,单手抓住。这只手将控制杆子的位置和方向。用另一只手抓住杆子,激活双手模式。如果让杆子在双手之间呈一条直线,则您的第一只手将保持在这个位置。我们已经在
BP_PickupTwoHandedCylinder Blueprint 中实现了这种互动。 - 弓:拿起弓,单手抓住。用另一只手抓住它,然后开始拉箭。放手射箭。我们已经在
BP_Bow Blueprint 中实现了这种互动。
所有互动均使用 PickupActorInterface Blueprint,并通过 BP_MotionController Blueprint 和 MotionControllerPawn Blueprint 进行协调。
您将在下方找到提供的贴图信息。欲知更多信息,请参阅示例的 Readme。
Cascaded Shadows Map(级联阴影贴图)
运行示例时,使用 Touch 控制器上的触发器拖动贴图中的滑块。附加在灯上的 Blueprint 可以控制它的旋转。
该贴图演示如何使用查找表 (LUT) 来调整场景的外观。
颜色分级贴图需要在
ColorGradingLUTPatch 子目录中应用补丁。应用补丁后,您即可使用颜色分级的查找表。欲详细了解颜色分级的查找表,请参阅
使用查找表 (LUT) 进行颜色分级。
距离场烘焙阴影贴图 (Distance Field Baked Shadows Map)
该贴图演示
距离场阴影。运行距离场阴影,需要将光源类型设置为“静止”,并按如下所示启用
编辑 >
项目设置 >
引擎 >
渲染 >
减少移动着色器组合 >
支持预烘焙的距离场阴影:
该贴图演示了在 VR 中渲染传送门的两种方法。
第一种使用在您查看的传送门处捕捉到的静态视差校正立方体贴图。该贴图可以预烘焙,性能成本相对较低,但查看时可能出现扭曲等问题。
第二种方法使用立体渲染目标,渲染每只眼睛能看到的场景,以及通过传送门能看到的场景。效果非常逼真,但性能成本更高。该示例将功能拆分到 PortalCaptureActorBP Blueprint、MF_ScreenAlignedUV_VR 素材功能、PortalSampleMaterial 素材中。PortalCaptureActor 类中还包含一些辅助性 C++ 方法。
该贴图演示不同过滤设置结合高对比度纹理(如文本)所产生的效果。它还展示如何使用 VR 立体涂层来渲染高质量的文本或纹理。
该示例提供初始化平台 SDK、进行权限检查以及实现各种平台功能的示例。如果您尚未进行这些操作,请
下载并解压缩平台 SDK。请在 SDK 解压缩目录下的
\Samples\UnrealSample\ 内查找示例。
如需设置说明,请参阅示例的 Readme。如需更多信息,请前往平台解决方案版块下的
示例应用。