SomaticCameraSF

SomaticCameraSF

Somatic Camera SF - Pseudo FPP Camera - 官方版V4 (1.16.244) 和测试版V7 (1.16.236)

Somatic Camera SF

一款《星空》第一人称相机改造模组,让你能在第一人称视角下看到完整的角色身体。

新官方版本 V4:

SomaticCameraSF for Starfield 1.16.244

官方 V4 版本发布说明:

  • 改进了腰射瞄准(ADS)。
  • 对 TPP Center 应用了修复和调整。
  • 修复了各种小错误。

TPP Center 概述:

TPP Center 是一组新的伪相机模式,模仿标准的第三人称相机,但定位在角色正后方中心,而不是右肩上方。

功能:

  • 自由视角行为,头部追踪与原版第三人称一致。
  • 支持第三人称瞄准。
  • 切换到 TPP Center 会自动应用隐形头饰和头盔层(无论你在 OSF UI 中的设置如何)。
  • 与载具或飞船互动时,会强制 TPP Center 进入伪第一人称模式并锁定(由于现存问题)。
  • 与家具互动时,会暂时将 TPP Center 切换到伪第一人称模式,但你可以手动切换回 TPP Center。

待办事项:

  • 为 TPP Center 添加自定义偏移控制。
  • 尝试使用 SomaticCameraFO4 的方法实现头部隐形。
  • 改进与飞船的集成。
  • 处理其他已知问题。

核心伪相机功能

  • 伪第一人称/第三人称相机 — 使用热键切换伪相机(默认 F4)。
  • 相机位置调整 — 通过 INI 或 OSF UI 调整前后、上下和侧面偏移。
  • 专用伪视场角(FOV) — 与游戏的基础视野独立。
  • 身体跟随 — 当偏航角差异超过阈值时,躯干会转向相机方向;在 TPP Center 中禁用
  • TPP Center — 两种近/远预设,玩家角色清晰可见,相机位于其正后方中心。
  • TPP Center 相机环绕 — 相机响应俯仰角(抬头/低头),更像经典第三人称。

头部 / 头盔隐藏

  • 隐藏头部 / 头盔 — 在普通伪模式下自动装备隐形物品 ICSF_Hide_Head/ ICSF_Hide_Head_SS。
  • 恢复原头盔 — 当伪模式禁用时,保存的头盔会重新装备。
  • 集成宇航服检测 — 如果一套宇航服同时占用头部和身体槽位,则跳过隐藏头部装备,以免宇航服被卸下。
  • TPP Center 中头盔可见 — 在拉远/环绕模式下,头盔保持在角色身上。

腰射瞄准(ADS)

  • 鼠标右键 / 手柄 LT 键 — 在普通伪模式下切换到真实第一人称视角。
  • TPP Center 中的瞄准
  • 近战武器 — 使用刀/铲/拳头瞄准时不会切换到第一人称。
  • 可配置 LT 阈值 — 可以在 INI 中设置左扳机需要按下多少才被视为瞄准。

飞船 / 载具

  • 飞行员座位检测 — 识别玩家是否坐在飞船的飞行员座位上。
  • 自动禁用 TPP Center — 在驾驶舱和载具中,预设会回退到普通伪模式,以免相机跑到玩家身后。

SAF(星空动画框架)

  • SAF 动画期间的伪模式 — 播放 SAF 动画时,相机保持在玩家头部。
  • 动画结束防抖 — 对瞬间的错误“动画结束”报告有短暂容忍,防止相机在循环之间跳出。

菜单 / 世界互动

  • 菜单中阻止库存操作 — 当 InventoryMenu、ContainerMenu、BarterMenu、CraftingMenu 等菜单打开时,EquipHideHeadgear / UnequipHideHeadgear 会被暂停,防止退出菜单时崩溃。
  • 菜单中消耗滚轮输入 — 在库存中滚动不会在菜单关闭后改变相机预设。
  • 延迟头盔恢复 — 如果玩家在菜单打开时按 F4 关闭伪模式,头盔会在菜单关闭后自动恢复。

杂项

  • 相机状态检测 — 区分第三人称、第一人称、机械瞄准、飞船飞行、载具和家具状态。
  • 卡死状态恢复 — 在意外相机状态转换时紧急启用 ForceThirdPerson。
  • 无全局地址数据库冲突 — 使用自己的私有偏移。

配置

  • Data\SFSE\Plugins\SomaticCameraSF.ini — 热键、偏移、FOV、LT 阈值和自动隐藏头饰的完整配置。

  • SFSE 插件 — 由 SFSE 自动加载;INI 更改需要重启游戏。

  • 感谢 HooliG4N83 提供的隐形头饰

Beta V7:

SomaticCameraSF for Starfield 1.16.236

将该模组移植到较旧的游戏版本,包含所有机制、功能、隐形头饰和隐形头盔 — 除了 Osf UI 功能(Osf UI 不支持 1.16.236 版本)。

所有设置,例如:

  • iToggleKey
  • fFOV
  • bAutoEquipHideHeadSS
  • bAutoEquipHideHead
  • fSideOffset
  • fForwardOffset
  • fUpOffset

都可以在 SomaticCameraSF.ini 文件中自定义。

待办事项:

  • 处理伪相机模式下从座位站起来的动画 (目前保留原生飞船飞行控制,因为伪相机在飞行期间会出错)。
  • 处理其他已知问题。

注意:这仍是测试版,还有一些问题需要解决,但我们正接近一个真正独特的版本!

概述

Somatic Camera SF 带回了经典的第三人称与第一人称混合相机——也称为 伪第一人称可见身体的第一人称。不同于游戏标准的第三人称模式(会隐藏你的角色),该模组将相机置于角色头部,同时保持整个身体渲染、动画化和可见。最终效果是一种身临其境的第一人称视角,你可以看到自己的身体、装备和影子。

使用热键在普通第三人称和增强的第一人称视角之间切换。

前置要求

  • Starfield 版本 1.16.244(或兼容)
  • SFSE(Starfield Script Extender)
  • Address Library(用于 SFSE)

安装

使用模组管理器或手动安装:

  1. 如果你还没有安装 SFSE 和 Address Library,请先安装
  2. 解压压缩包
  3. SomaticCameraSF.dllSomaticCameraSF.ini 复制到 YourGameFolder\Data\SFSE\Plugins\
  4. 通过 SFSE 启动游戏

使用方法

切换热键是可配置的。默认情况下:

  • 在第三人称状态下按下切换键以激活伪第一人称模式
  • 再次按下返回正常的第三人称

⚠ 这是测试版。模组可用但尚未完善。请做好遇到瑕疵的准备。

技术说明

使用 CommonLibSF 和 MinHook 构建。该模组会挂钩 ThirdPersonState::UpdateTESCamera::Update 来覆盖相机位置,而无需修改游戏文件。

致谢

Github: https://github.com/mielu91m/SomaticCameraSF

感谢大家的支持。如果有人想支持我,可以通过 PayPal 或 BuyMeCoffee。

(我正在攒钱买一台新笔记本电脑——我的 Acer Aspire VX5‑591G 有点散架了。)