SuperAPI AI 工具集

camera-system

通用与其它

查看项目

更新于 10-15 22:40

技能介绍

用途:在 Godot 4.3+ 项目中实现相机相关功能,示例均针对 4.3+ 且不使用已废弃 API,先给 GDScript 再给 C#。

主要能力:Camera2D 基础属性(position_smoothing_enabled、position_smoothing_speed、drag_horizontal/vertical_enabled、limit_left/right/top/bottom、zoom);手动平滑跟随(含 look-ahead 前瞻与 lerp 缓动,需关闭内置平滑并在 _process 中处理);基于 trauma 的屏幕震动(trauma 随时间衰减,偏移按 trauma 平方缩放,可用 FastNoiseLite 或随机数,通过 add_trauma() 触发并钳制到 1.0);相机区域/房间(每个房间一个 Area2D,在 body_entered 时补间当前相机的 limit 边界);Camera3D 三种模式(SpringArm3D 第三人称跟随、鼠标拖拽环绕、第一人称视角);相机转场(Tween + await ToSignal,补间下一相机的位置/缩放后调用 make_current());分屏本地多人(多相机渲染到独立 SubViewport,再用容器布局)。

使用方式:将对应脚本挂到 Camera2D/Camera3D 上,在 Inspector 或代码中指定 target 等导出变量;震动由其他节点调用 add_trauma(amount) 触发;区域、3D 模式、转场与分屏的完整实现见 references 目录下对应文档。

限制与注意:平滑跟随应放在 _process 而非 _physics_process;trauma 归零时需重置 offset 与 rotation;相机区域碰撞层应只让玩家触发;SpringArm3D 碰撞掩码需包含环境层;转场需等待补间完成再 make_current();分屏需在窗口尺寸变化时更新 SubViewport 尺寸,且仅一个 SubViewport 启用音频监听。具体收费、平台与效果资料暂未提供。