机甲战士VR

机甲战士VR

这款模组引入了自定义驾驶舱,内置屏幕、全新HUD、VR支持、平板屏幕支持、头部瞄准、头部追踪、视觉效果改进、性能优化以及更多功能。

游戏玩法

2.00 重大更新现已发布! 本次更新带来了 DLC7 兼容性、氏族机甲座舱(Perq)、动画大修(psycho063)、DLSS 支持、图形改进、完全支持的机甲外 VR 体验,以及大量优化和新功能。

2.10 更新增加了对平面屏幕玩家的原生支持。这包括重写了注入式 HUD 渲染系统以支持输出到单个屏幕、VR 用户获得的反向工程修复、视场控制、鼠标视角控制以及 TrackIR/OpenTrack 头部追踪支持。

如果您想对我们付出的巨大努力表示支持,欢迎请我们喝杯咖啡。

https://ko-fi.com/sicsix https://ko-fi.com/perqq https://ko-fi.com/psycho063

我还要向 MechWarriorVR Discord 中所有帮助测试此次最新更新的人致以诚挚的谢意。

MechWarriorVR 最初使用的是 MW5 自带的 VR 插件。不幸的是,这些 VR 插件过时、缓慢、充满漏洞且容易崩溃。UEVR 注入器提供了一种在 MW5 中启用 VR 的替代方法,它使用 OpenXR,显著提升了性能,同时允许 MWVR 注入自定义 DLL 以提供大量额外功能和错误修复。

在我们的 Discord 上获取支持、了解模组兼容性、模组推荐以及预发布更新:MechWarriorVR Discord

如果您想要一种更具战术性和挑战性的游戏体验来配合 MWVR,请查看 BATTLETECH 3015;对于拥有 Buttkicker 或 Dayton 等低音震动器的用户,请查看我的另一个模组 MechShaker

功能

  • 同时支持 VR 和平面屏幕
  • 完全兼容合作模式——即使只有部分玩家安装了 MWVR 也能正常工作
  • 79 个定制座舱,内置屏幕,涵盖所有基础游戏和 DLC 机甲
  • 大量图形改进,包括重做的光照、色调映射、世界阴影,以及追求高保真、写实风格的全新清晰座舱阴影
  • 头部瞄准功能——在 VR 中使用头部瞄准手臂挂载武器、选择目标和向小队成员下达命令
  • 头部追踪功能——平面屏幕玩家可以使用 OpenTrack、TrackIR 或摇杆输入控制视角
  • 完全重建的用户界面,包括新的投射 HUD、屏幕、目标框和目标/任务标记
  • 为每个机甲重做动画以提升 VR 易用性——减弱过度特效、去除剧烈摇晃,并修复了大量错误(非常感谢 psycho063 的这项工作)
  • 自定义注入式 DX11 渲染流程,用于在放大后渲染 HUD 元素——修复了 DLSS 导致 HUD 模糊的问题,现在强烈推荐使用 DLSS
  • 对 Unreal 中有问题的 GTAO 进行反向工程修复,启用一种在 VR 中能够正确工作且不会产生双眼视觉差异的环境光遮蔽方法
  • 修复了 VR 中的星图,包括修正其位置并替换了有问题的鼠标拖拽行为
  • 新的 Leopard 舰桥内部建模和修复的视角位置,以改善机甲外体验
  • 反向工程控制器检测,强制在菜单中启用 VR 控制器的使用
  • 所有地方的 VR 缩放比例都得到修正并自动应用,包括步行、舰桥上、机甲内和过场动画中
  • 自定义热成像着色器和缩放视角
  • 为提升性能重建地图渲染,并在地图屏幕上增加了指示器以高亮当前选中的目标
  • 捕获/搜索/摧毁和拾取区域环已从世界中移除并移至地图屏幕上
  • 新增绑定:目标前一队友目标后一队友命令目标的队友——现在可以快速循环切换队友、查看其状态并下达命令
  • 使用 Niagara 编写了座舱内受击粒子特效,仅使用 GPU,修复了受击时性能低下和卡顿的问题
  • 重新编译着色器并修改资源文件以移除分散注意力的抖动图案并修复 VR 渲染问题
  • 座舱内 Ares 系统菜单(Ares System Menu 绑定),允许自定义 HUD、屏幕和团队配色主题,以及调整屏幕亮度和 HUD 缩放
  • 用于控制 HUD 和屏幕亮度的快捷键,让您的摇杆旋钮或额外按钮真正发挥作用
  • 修复了多个机甲的臂部瞄准范围,包括可选的扩展万向臂范围,为没有下臂驱动的机甲提供了 5-10 度的臂部移动范围,而不是零度
  • 可选的基于躯干的目标锁定,使用来自躯干的固定锥体进行导弹锁定;禁用时将默认为头部注视方向
  • 还有更多功能,包括额外的图形设置、性能选项、UI 改进、渲染错误修复、基础游戏错误修复以及大量生活质量变化

重要键位

F9:重设 VR 视角中心 Ins:打开 UEVR 菜单

如果您从低于 2.00 的版本更新,请删除现有的 MechWarrior VR 模组文件夹

VR 快速入门指南

  1. Nexus 下载最新版本,包括 UEVR 插件文件
  2. 下载 Mod Options
  3. UEVR GitHub 下载 UEVR 1.05,您需要 UEVR.zip 文件
  4. 在某处解压 UEVR 压缩包,您可能需要为此文件夹添加杀毒软件例外
  5. MechWarriorVRMod Options 解压到您的模组目录;您可以在启动游戏后的主菜单中启用它们
  6. 在某处解压 UEVR 插件文件,其中会包含 MechWarrior-Win64-Shipping.zip(保持为压缩状态)
  7. 如果您要使用 DLSS,需要更新到最新版本——可以使用 DLSS Swapper 来完成
  8. 连接您的头显并启动头显软件
  9. 启动 MW5
  10. 确保在 MW5 选项中禁用光线追踪——否则会导致崩溃
  11. 在 MW5 仍在运行时启动 UEVR,使用 ALT+ENTER 将 MW5 切换到窗口模式可能更容易操作
  12. 在 UEVR 中确保选择了 OpenXR 并且启用Nullify VR Plugins
  13. 点击 Import Config 并导航到您在第 6 步中解压的 MechWarrior-Win64-Shipping.zip 文件
  14. Inject 按钮上方,打开下拉框并在列表中找到并选择 MechWarrior-Win64-Shipping
  15. UEVR 会警告您在 MW5 中检测到了 VR 插件,点击“是”前往插件目录并删除 OculusOpenVR 文件夹(您需要关闭 MW5 才能执行此操作,删除后重新启动它)
  16. 完成后,再次启动 MW5 并点击 UEVR 中的 Inject 按钮——您现在应该已进入 VR 模式
  17. 在 MW5 内,您现在可以按 Ins 键来开关 UEVR 菜单。稍后您可以在其中更改键位(如果需要)
  18. F9 键重置头显位置
  19. 今后您只需在启动 MW5 后注入 UEVR 即可

平面屏幕快速入门指南

  1. Nexus 下载最新版本,包括 UEVR 插件文件
  2. 下载 Mod Options
  3. UEVR GitHub 下载 UEVR 1.05,您需要 UEVR.zip 文件
  4. 在某处解压 UEVR 压缩包,您可能需要为此文件夹添加杀毒软件例外
  5. MechWarriorVRMod Options 解压到您的模组目录;您可以在启动游戏后的主菜单中启用它们
  6. 在某处解压 UEVR 插件文件,其中会包含 MechWarrior-Win64-Shipping.zip(保持为压缩状态)
  7. 如果您要使用 DLSS,需要更新到最新版本——可以使用 DLSS Swapper 来完成
  8. 启动 MW5
  9. 确保在 MW5 选项中禁用光线追踪——否则会导致崩溃
  10. 在 MW5 仍在运行时启动 UEVR,使用 ALT+ENTER 将 MW5 切换到窗口模式可能更容易操作
  11. 在 UEVR 中确保选择了 OpenXR 并且启用Nullify VR Plugins
  12. 点击 Import Config 并导航到您在第 6 步中解压的 MechWarrior-Win64-Shipping.zip 文件
  13. Inject 按钮上方,打开下拉框并在列表中找到并选择 MechWarrior-Win64-Shipping
  14. UEVR 会警告您在 MW5 中检测到了 VR 插件,点击“是”前往插件目录并删除 OculusOpenVR 文件夹(您需要关闭 MW5 才能执行此操作,删除后重新启动它)
  15. 完成后,再次启动 MW5 并点击 UEVR 中的 Inject 按钮——它会显示 VR 初始化失败,但这是正常的
  16. 关闭 UEVR 窗口
  17. 进入选项菜单,转到最右侧的 Mod Options,选择 MechWarriorVR 选项菜单,打开 Flatscreen 部分,并勾选 Enable Flatscreen Mode 复选框
  18. 今后您只需在启动 MW5 后注入 UEVR 即可

YAML 兼容性

MWVR 与 YAML 完全兼容,但不包括其替代视觉模式、隐身和预测性瞄准准星。视觉模式在 VR 中无法正常运作,瞄准准星算法是为在 HUD 的 2D 空间工作而设计的,无法正确对齐。在启用 MWVR 时,替代视觉模式会自动禁用以防止问题——如果您停止使用 MWVR,则需要手动在 YAML 的模组选项中重新启用它们。

平面屏幕玩家头部追踪简要概述

MWVR 中的头部追踪通过读取摇杆输入并使用这些输入来控制视角来实现。任何摇杆都可以控制视角,包括虚拟摇杆或油门杆上的摇杆。可以设置 OpenTrack,使用标准 USB 摄像头检测您的移动,并输出到 vJoy 虚拟摇杆。

为了让 MWVR 读取您的摇杆输入,需要编辑 HOTASMappings.Remap 文件,将摇杆输出指向游戏中的摇杆输入。如果您使用 vJoy 设置了 OpenTrack,将以下内容添加到 %LOCALAPPDATA%\MW5Mercs\Saved\SavedHOTAS\HOTASMappings.Remap 的映射文件中,将告诉 MW5,虚拟摇杆上的 rXrYrZ 值应映射到 MW5 中的 YawJoystick_Axis8)、PitchJoystick_Axis9)和 RollJoystick_Axis10)输入。如果您想使用,它还会告诉 MW5,XYZ 摇杆值应映射到视角位置移动。

START_BIND
NAME: vJoy
VID: 1234
PID: BEAD
AXIS: InAxis=GenericUSBController_Axis1, OutAxis=Joystick_Axis5, Invert=FALSE, Offset=-0.5, DeadZoneMin=0, DeadZoneMax=0, MapToDeadZone=FALSE
AXIS: InAxis=GenericUSBController_Axis2, OutAxis=Joystick_Axis6, Invert=FALSE, Offset=-0.5, DeadZoneMin=0, DeadZoneMax=0, MapToDeadZone=FALSE
AXIS: InAxis=GenericUSBController_Axis3, OutAxis=Joystick_Axis7, Invert=FALSE, Offset=-0.5, DeadZoneMin=0, DeadZoneMax=0, MapToDeadZone=FALSE
AXIS: InAxis=GenericUSBController_Axis4, OutAxis=Joystick_Axis8, Invert=FALSE, Offset=-0.5, DeadZoneMin=0, DeadZoneMax=0, MapToDeadZone=FALSE
AXIS: InAxis=GenericUSBController_Axis5, OutAxis=Joystick_Axis9, Invert=FALSE, Offset=-0.5, DeadZoneMin=0, DeadZoneMax=0, MapToDeadZone=FALSE
AXIS: InAxis=GenericUSBController_Axis6, OutAxis=Joystick_Axis10, Invert=FALSE, Offset=-0.5, DeadZoneMin=0, DeadZoneMax=0, MapToDeadZone=FALSE

有关设置 HOTASMappings.Remap 文件的更多信息,请参阅 PGI 的文档:MW5HotasRemappingDocumentation.pdf

源代码

  • MWVR 的编辑器源文件可以在文件部分找到——模组制作者可以使用这些文件来创建子模组,例如添加新的座舱
  • DLL 插件的源代码可以在这里找到:https://github.com/sicsix/MW5-UEVR-Plugins

座舱建模鸣谢

  • Adder - Perq
  • Annihilator - Perq
  • Assassin - Perq
  • Atlas - Perq
  • Archer - Perq
  • Awesome - Perq
  • Banshee - sic*
  • BattleMaster - Stumblingdrunk
  • Blackjack - sic*
  • Black Knight - sic*
  • Bullshark - Perq
  • Catapult - Perq
  • Cataphract - Stumblingdrunk
  • Centurion - Perq
  • Champion - Perq
  • Charger - Stumblingdrunk
  • Cicada - sic*
  • Commando - sic*
  • Corsair - Perq
  • Crab - Perq
  • Crusader - Stumblingdrunk
  • Cyclops - Perq
  • Dervish - Perq
  • Dire Wolf - Perq
  • Dragon - Perq
  • Enforcer - sic*
  • Executioner - Perq
  • Fire Moth - Perq
  • Firestarter - Stumblingdrunk
  • Gargoyle - Perq
  • Grasshopper - sic*
  • Griffin - Stumblingdrunk
  • Hatamoto-Chi - Stumblingdrunk
  • Hatchetman - sic*
  • Hellbringer - Perq
  • Flea - Perq
  • Highlander - Stumblingdrunk
  • Hunchback - sic*
  • JägerMech - Perq
  • Javelin - sic*
  • Jenner - sic*
  • Kit Fox - Perq
  • King Crab - Perq
  • Kintaro - Perq
  • Loader King - sic*
  • Locust - sic*
  • Longbow - Stumblingdrunk
  • Mad Dog - Perq
  • Marauder - Perq
  • Marauder II - Perq
  • Mauler - sic*
  • Mist Lynx - Perq
  • Nightstar - Stumblingdrunk
  • Nova - Perq
  • Orion - Stumblingdrunk
  • Panther - sic*
  • Phoenix Hawk - sic*
  • Quickdraw - sic*
  • Raven - sic*
  • Rifleman - Perq
  • Shadow Cat - Perq
  • Shadow Hawk - Perq
  • Spider - sic*
  • Stalker - sic*
  • Stormcrow - Perq
  • Summoner - Perq
  • Thunderbolt - Stumblingdrunk
  • Timber Wolf - Perq
  • Trebuchet - Stumblingdrunk
  • UrbanMech - sic*
  • Victor - Perq
  • Vindicator - sic*
  • Viper - Perq
  • Vulcan - sic*
  • Warhammer - Perq
  • Warhawk - Perq
  • Wolfhound - sic*
  • Wolverine - Perq
  • Zeus - sic*

79 / 79 座舱已建模

鸣谢

Stumblingdrunk 和 Perq 的测试和座舱建模 psycho063 修复了每一个机甲的动画 MechWarriorVR Discord 上的所有成员帮助测试了最新的更新 KITT 的 VRWARRIOR 模组启发了本模组 praydog 在 UEVR 上的工作使我们能够绕过 MW5 捆绑的有缺陷的 VR 渲染插件并获得更好的性能 MagnumGB 关于模组打包的建议