其实应该叫“Replay FPV”,但我当时想到的是第一人称射击游戏
Replay Mod 是《我的世界:Java版》一款流行的模组,允许你录制游戏过程以便后续回放。虽然 Replay Mod 功能强大,但在第一人称游戏体验方面存在严重不足。
默认情况下,当你从玩家的第一人称视角渲染回放时,画面会显得极其迟缓。这是因为《我的世界》每秒仅正确更新玩家位置10次,因此游戏必须对缺失的数据进行插值处理。
本附加组件旨在解决此问题。
通过在主要回放数据旁存储客户端摄像机数据,可以更详细地捕捉本地客户端的移动,从而带来更好的第一人称回放体验。
本附加组件不包含超出常规 Replay Mod 功能之外的面向用户的操作。只需将其与回放模组一同安装并按常规方式使用即可。但请注意,本附加组件提供的增强效果仅适用于录制回放的玩家,且仅当该玩家在录制时安装了此附加组件才会生效。
> 注意:在当前版本(0.2.0)中,必须安装 Mod Menu 才能访问配置菜单。
第一人称移动看起来如此糟糕的原因在于,Replay Mod 仅记录服务器与客户端之间通信的游戏数据包。在大多数情况下,这与实时观察游戏看起来相同。然而,当涉及第一人称视角时,服务器发送的数据不足以准确重现原始移动。事实上,这正是《原版》中观察其他玩家时会出现同样迟滞感的原因。
解决方案是在数据包流旁存储额外的数据流。该数据流由一系列通道组成,每个通道以恒定采样率保存连续值。这些通道在捕捉时由客户端直接写入,完全绕过了服务器-客户端数据包系统。这不仅允许以比数据包更高的速率采集样本,还能捕捉通常不与服务器同步的数据。
为了以合理的方式存储这些大量数据,开发了一种自定义二进制格式。当使用此附加组件捕捉回放时,一个“客户端捕捉”(ccap)文件会被插入到回放存档中,与数据包数据并存。该文件的规范可在本代码库中找到。
然而,某些数据不适合以连续流的形式存储。离散形式的数据,如快捷栏内容的变化,会作为自定义数据包存储,并注入到回放数据包流中。这些所谓的“虚假数据包”在录制时被序列化为 PacketByteBuf,但不会发送到服务器,而是本地保存到回放文件中。在回放期间,Replay Mod 将这些虚假数据包作为普通数据包提供给《我的世界》,自定义处理器可以解析并将其应用到游戏世界中。
除了虚假数据包外,还可以注册“数据包重定向器”来覆盖原版数据包在回放期间的应用方式。这使得许多在回放中通常无法使用的数据包能够被解析并应用于重建原始客户端体验。
与大多数模组类似,要构建此项目,只需在根目录打开控制台并输入 ./gradlew build。但是,构建可能会因缺少名为“CraftFX”的依赖项而失败。这是 ccap_viewer 子项目的依赖项,目前与主项目一同构建。要解决此问题,请克隆并构建 CraftFX,并将其发布到 Maven Local。
友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作
历史访问人数:151,592 | 历史访问人次:247,851
今日访问人数:11,888 | 今日访问人次:12,937
昨日访问人数:25,313 | 昨日访问人次:28,419
Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.
❤ Powered by GermMC 京ICP备17023959号-6