【Beat Saber 节奏光剑】全身动捕直播搭建指南
最近整个台PC,终于不用忍受折腾死人的一体机版Beat Saber了,
都上PC既然如此,不如试着把直播搭起来吧,
直播都搭起来了,总得挑个Avatar人物,把动捕绑上去吧~
Requirement
在看此教程之前,你最好:
- 愿意阅读非中文文档/内容/教程;
- 较为熟悉Beat Saber及其mod安装方式(包含手动安装和管理器自动安装);本文并不是新手上手教程。
新手教程可以看Zeyu的网站:https://bs.wgzeyu.com/
强烈推荐使用 BSManager 来管理所有的mod,由泽宇大佬开发的ModAssisant已经停止维护了,新的BSManager除了管理mod之外还支持了游戏版本、谱面和model的管理,社区也一直在维护。
如果你已经使用了ModAssisant,可以直接下载并使用BSManager,BSManager会自动识别你已经安装了的mod,从而无缝切换。
Introduction
Beat Saber (BS) 实现直播主要依靠Camera2插件实现,具体的,玩家可以在Camera2中自定义若干游戏空间内的摄像机,每一个摄像机将按照指定参数输出游戏中的画面,这些摄像机画面将会输出到BS在Windows中的窗口中,玩家可以组织排布这些摄像机画面。最后再通过OBS等直播软件捕捉BS窗口的画面,来实现直播。
目前BS实现全身追踪主要有以下两个大技术路线:
- 使用第三方软件实现Avatar渲染动捕+空间叠加(如 LIV,VMC)。
这种方案将Avatar的渲染和动作捕捉交给第三方软件完成,直接将渲染好了的Avatar叠加到SteamVR的空间之中。优点是无需侵入修改BS,在SteamVR这一层级即可完成模型渲染和动捕,缺点是只能使用LIV提供的摄像机输出带有人物的直播画面,BS输出的画面中是不存在人物的,因此完全无法使用Camera2插件提供的功能,而且LIV渲染的人物分辨率和BS渲染的游戏分辨率也不一样,光照也不对,效果很是不好。 - 在BS中实现Avatar渲染和动捕,直接通过Camera2输出画面。
这种方案实现了游戏画面渲染和Avatar渲染的统一,整个画面输出的效果能好非常多。坏处是要装不少BS的插件,踩不少坑。这也便是本文的由来。
目前在BS中实现Avatar渲染和动捕也有好几种不同的实现方式:
- Beat Saber Custom Avatars Plugin;BSManager里直接一键安装直接使用,方便快捷门槛低。
- NALULUNA Avater;支持更多Avatar格式(能把VRC的拿过来?),玩法更多,好像是版本答案?
订阅制度闭源软件 https://www.patreon.com/c/naluluna/home
关于VMC和NALULUNA Avater 的对比可以看这个 VR-两款动捕软件/插件使用的效果参考对比 (感谢卡达YanoKa大大的解答)
本文将介绍直接使用 Beat Saber Custom Avatars Plugin 实现动捕的教程。主要主要步骤包括:
- 安装并设置这两个 Beat Saber插件:Beat Saber Custom Avatars Plugin, Camera2;
- 为 Custom Avatar 插件增加 OpenVR 的支持;
(目前看下来似乎用 NALULUNA Avatar 会更好一点?先挖个坑)
安装并设置 Beat Saber Custom Avatars Plugin, Camera2
这两个插件均可以在 BSManager / ModAssisant 中一键安装,装上就好。
modelsaber 上有不少现成的模型,可以在这里上面找找自己喜欢的,BSManager里的那个在线avatar页面也是基于modelsaber。不过有不少avatar都是老版本的了,在新版本中可能无法正确渲染(呜呜呜我超喜欢Sour Miku Black这个avatar的可惜新版本渲染是错的呜呜呜)。安装好avatar之后就可以中BS游戏里更换。
关于Camera2的设置可以参考这两个视频:
- 关于节奏光剑HUD(UI)设置小经验 - 卡达YanoKa
- 节奏光剑 直播&录制相机设置小经验-BEAT SABER - 卡达YanoKa
值得注意的,其实我们可以用鼠标拖动BS窗口中被高亮的摄像头画面来调整位置,不用像视频里那样艰难的拖条子。
设置好这两个插件之后,你的手部和头部,以及计算出来的胸部、手臂,应该是能正确的追踪并输出到avatar上的。。如果没问题的话,恭喜你,你已经成功实现了半身追踪,去掉胸部以下的部分就可以食用了呢 😃
为 Beat Saber Custom Avatars Plugin 插件增加 OpenVR 支持
为了实现全身追踪,我们还需要为 Beat Saber Custom Avatars Plugin 新增对 OpenVR 的支持。
在不安装 OpenVR 的支持的情况下,你打开 Beat Saber Custom Avatars Plugin 插件的 Calibration 页面,应该会显示 Tracker Suppoert is not available. Please Install OpenXRTrackerProfile
首先你得先确认你的Tracker已经被 SteamVR 正确识别到,如果正确识别,在 SteamVR 的加载页面你是能看到身上的tracker 的。
根据 BeatSaberCustomAvatars Release Page 的说明,我们需要额外安装这几个东西:
- OpenVR API (for showing SteamVR controller/tracker models in-game)
- OpenXR Tracker Profiles (for full body tracking)
- OpenXR Hands (for finger tracking)
- OpenXR Feature Manager (dependent by Tracker Profiles)
其中 OpenXR Tracker Profiles 是实现全身动捕必要的组件。
这些插件有不少是BSManager中能够直接安装的(比如1.39.1版本可以在BSManager里直接一键装完)如果你发现缺少了某些插件,那你就需要手动安装了。
进入BeatSaber-ExtraOpenXRFeatures Release Page,下载缺少的插件(我是都用的最新版)
请注意,OpenXR Tracker Profiles 插件依赖于 OpenXR Feature Manager 插件,请保证这两插件均正确安装。
安装好之后,进游戏里校准一下就可以愉快的全身追踪辣。
Reference
这篇文章也写的挺好的,就是有点老了:Streaming with Full-Body Tracking in VR