自由视角

自由视角

最好的免费相机回来了!

相机

前言:

对于在老版本上游玩过游戏的玩家来说,你可能会记得原生调试自由视角,它通过诸如这个模组中包含的原生调试控制台启用。它无疑是最好的视角:移动平滑、自然且快速,无碰撞、无裁剪,还能将玩家传送至视角所在位置。它是用于调试、截图或探索的完美自由视角,并且与 PhotoMode 2inOne 完美搭配。

本模组旨在重现这个自由视角。

在剖析 exe 文件以重建类似旧版本的 asi/dll 解决方案后,我未能成功定位到启用自由视角输入处理的函数。然而,原生自由视角依然存在,启用它的函数也存在。而且,就像游戏旧版本一样,这个函数也被导入到了 Witcher Script 中。这正是我需要的。因此,我转而完全使用 Witcher Script 来重建这个自由视角,并借此机会进行了一些改进。

模组内容:

通过本模组,你将获得可能是 Nexus 上最好的自由视角,具备以下特性:

  • 平滑移动
  • 无碰撞
  • 无裁剪
  • 自然的输入布局
  • 支持手柄和键盘
  • 可配置灵敏度
  • 包含原始版本的所有功能,甚至更多
  • 基于 Witcher Script,不受版本限制(兼容 DX11 和 DX12)
  • 通过注解实现面向未来
  • 通过注解实现无需合并
  • 仍然与 PhotoMode 2inOne 完美搭配

输入列表:

名称 手柄输入 键盘输入
启用 左+右摇杆按下 F1
禁用 B / 圆圈 F1
移动 左摇杆 W/A/S/D
向上移动 Y / 三角 E
向下移动 A / 叉 A
旋转 右摇杆 鼠标
向右翻滚 RB / R1 R
向左翻滚 LB / L1 F
视野放大 十字键上 无
视野缩小 十字键下 无
快速移动(倍率) RT / R2 左Shift
慢速移动(倍率) LT / L2 左Ctrl
传送玩家至视角位置 X / 方块 空格键
显示/隐藏 HUD 长按右摇杆 Home
三脚架模式切换 Back / Select End
视角类型切换 长按左摇杆 X
截图 长按十字键左 C

大多数输入不言自明,但我觉得还是应该详细说明其中一些:

  • 在手柄上通过「左+右摇杆按下」启用自由视角,仅当模组菜单中「拦截拍照模式」选项开启时才有效。如果你没有安装菜单,则默认开启。

  • 三脚架模式切换是一个临时开关,允许你将自由视角固定在当前位置作为三脚架,同时你重新完全控制杰洛特。在旧版本的自由视角中,你需要长按 RB / R1 来实现这一点。现在只需按一次按钮即可,无需长按。再次按下按钮即可回到常规的自由视角模式。

  • 视角类型切换允许你在原生自由视角和静态视角(静态视角并非真的静止,它只是该类的名称)之间切换。每种视角类型都有其自身问题,因此你可以根据当前用途即时切换到更喜欢的那个。以下是每种视角问题的详尽列表:

    • 原生自由视角:

      • 没有抗锯齿
      • 在启用自由视角时不处于玩家视野内的 Speedtree 资源在近距离时无法正确显示
      • 视野控制是硬编码的
    • 静态视角:

      • 当 Speedtree 资源遮挡了从视角到玩家的视线时,它们会消失
      • 继承当前场景的景深
      • 不会加载自身周围的整个世界
  • 视野变化仅在手柄上可用。实际上在 Witcher Script 中无法改变原生自由视角的视野,因此无法手动绑定按键。之所以在手柄上可行,是因为 exe 文件中的硬编码。我可不想去碰那个东西。我让静态视角也可以改变视野,并且它与原生自由视角是同步的。但是,它们有时可能会不同步。在这种情况下,你只需改变视野直到触及上限或下限,这将强制两个视角再次拥有相同的视野。

安装方法:

  1. 下载并解压文件。
  2. 将 Mods/modFreeCamera 目录复制粘贴到 你的游戏目录/Mods。
  3. (重要)如果你使用了 Community Patch - Shared Imports,请务必删除 你的游戏目录/Mods/modFreeCamera/content/scripts/local/CCameraComponent.ws。你不需要它。
  4. 将 freecamera.input.settings 文件的内容复制粘贴到 Documents\The Witcher 3\input.settings 文件的末尾。记得保存文件。你可能需要将其设置为只读,以防止游戏随机重置你的输入设置。
  5. (可选)模组已经可以工作,但你可以将 bin/config/r4game/user_config_matrix/pc/freecamera.xml 文件复制粘贴到 你的游戏目录/bin/config/r4game/user_config_matrix/pc,以便能够配置视角灵敏度。记得根据你使用的 DX11 或 DX12,将文件名分别添加到 dx11filelist.txt 或 dx12filelist.txt 中。或者你可以直接使用 Menu Filelist Updater 来自动处理。

未来计划:

我已经重建了原始原生调试自由视角的所有功能,甚至还进行了改进。作为一个模组作者,我对它在个人使用上的表现很满意。

然而,如果有需求使其更适合截图,我可能会放弃原生自由视角,转而使用常规的视角类(前提是能保持同样的无碰撞和无裁剪行为)。这将允许对视野进行更精细的控制,包括在键盘上。 我还可以添加一个景深和特效菜单,以有效取代 CDPR 制作的拍照模式。