• 欢迎加入MineBBS QQ讨论群:点击查看所有的官方讨论群
  • 我们将于近期对服务器进行迁移,服务可能中断至多2日。请各位安排好自己的访问计划,造成不便敬请谅解!
  • MineBBS入站考试已经上线!想要成为【正式会员】解锁更多功能吗?快来参与吧!【点我去看】
资源图标

原创 付费 开源 工具 VirtualCamera——简单强大的摄像机插件 1.4.0

请登录后获取
版权类型
原创
插件中文名称
虚拟摄像机
插件英文名称
VirtualCamera
原帖地址
https://github.com/sweepikun/Virtual-Camera
支持的核心(服务端)
  1. Spigot
  2. Paper
  3. Purpur
  4. PufferFish
  5. Leaves
语言支持
中文(简体)
前置组件
ProtocolLib https://www.spigotmc.org/resources/protocollib.1997/
适配版本(Java)
  1. 1.21
  2. 1.20
[MD] # Virtual-Camera Virtual-Camera 是一个功能强大的 Minecraft 插件,为服务器管理员和内容创作者提供专业级的虚拟相机系统。通过该插件,您可以创建电影级的场景体验,实现流畅的运镜效果和丰富的视觉展示。 ## 功能特点 - **多相机预设管理**:创建、保存和管理多个相机位置预设 - **平滑运镜效果**:支持在多个关键帧之间实现平滑过渡动画 - **自定义路径动画**:配置复杂的相机移动路径 - **文本显示系统**:在运镜过程中显示自定义文本(动作栏、标题等) - **命令调度**:在指定时间点自动执行命令 - **序列播放**:创建和播放相机序列,支持循环播放 - **随机切换**:随机切换不同的相机预设 - **权限控制**:完整的权限系统,确保安全使用 ## 安装方法 1. 下载插件 JAR 文件 2. 将 JAR 文件放入服务器的 `plugins` 文件夹 3. 启动或重启服务器 4. 插件会自动生成配置文件 `config.yml` ## 使用方法 ### 基本命令 - `/vcam enter` - 进入相机模式 - `/vcam exit` - 退出相机模式 - `/vcam save <名称>` - 保存当前相机位置为预设 - `/vcam load <名称>` - 加载并播放预设 - `/vcam delete <名称>` - 删除预设 - `/vcam list` - 列出所有预设和序列 - `/vcam play <序列>` - 播放相机序列 - `/vcam stop` - 停止序列播放 - `/vcam create <名称>` - 创建多点相机预设 - `/vcam addpoint [运行时间]` - 添加当前位置(包括角度)为路径点 - `/vcam finish` - 完成预设创建 - `/vcam random start <间隔秒>` - 开始随机切换预设 - `/vcam random stop` - 停止随机切换预设 - `/vcam random add <预设名>` - 添加预设到随机切换池 - `/vcam random remove <预设名>` - 从随机切换池移除预设 - `/vcam random list` - 列出随机切换池中的预设 - `/vcam help` - 显示帮助信息 ### 权限节点 - `virtualcamera.use` - 基本使用权限 - `virtualcamera.preset.save` - 保存预设权限 - `virtualcamera.preset.load` - 加载预设权限 - `virtualcamera.preset.delete` - 删除预设权限 - `virtualcamera.preset.list` - 列出预设权限 - `virtualcamera.preset.create` - 创建预设权限 - `virtualcamera.sequence.play` - 播放序列权限 - `virtualcamera.sequence.stop` - 停止序列权限 - `virtualcamera.random.start` - 开始随机切换权限 - `virtualcamera.random.stop` - 停止随机切换权限 - `virtualcamera.random.add` - 添加到随机池权限 - `virtualcamera.random.remove` - 从随机池移除权限 - `virtualcamera.random.list` - 查看随机池权限 ## 配置说明 插件的配置文件位于 `plugins/Virtual-Camera/config.yml`: ```yaml # 全局设置 settings: # 默认相机类型 (NORMAL/SPECTATOR/CINEMATIC) default_camera_type: NORMAL # 默认过渡效果 default_transition: # 过渡类型 (TELEPORT/SMOOTH/FADE) type: SMOOTH # 过渡时间(毫秒) duration: 1000 # 文本显示设置 text_display: # 默认文本持续时间(毫秒) default_duration: 3000 # 文本颜色代码 default_color: "&f" # 文本位置 (ACTION_BAR/TITLE/SUBTITLE/CHAT) position: ACTION_BAR # 权限设置 permissions: # 是否检查权限 check_permissions: true # 是否在没有权限时发送消息 send_no_permission_message: true # 虚拟相机预设配置 presets: # 示例预设1 - 简单路径 demo_path: type: NORMAL # 相机类型(NORMAL/SPECTATOR/CINEMATIC) locations: - {x: 10, y: 64, z: 20, yaw: 0, pitch: 0} - {x: 15, y: 65, z: 25, yaw: 90, pitch: -10} - {x: 20, y: 66, z: 30, yaw: 180, pitch: -20} # 命令调度(可选) commands: - {command: "say 相机到达第一个点", delay: 0} - {command: "effect give @a minecraft:glowing 10 1", delay: 1000} # 文本显示(可选) texts: - {text: "&a正在移动中...", delay: 500, duration: 2000} - {text: "&b即将到达终点", delay: 2000, duration: 3000} # 示例预设2 - 简单单点 demo_single: type: SPECTATOR locations: - {x: 100, y: 80, z: 100, yaw: 45, pitch: -30} # 相机序列配置 sequences: # 示例序列1 - 简单演示 demo_sequence: # 是否循环播放 loop: false # 序列条目 entries: - {preset: "demo_path", duration: 5.0} - {preset: "demo_single", duration: 3.0} - {preset: "demo_path", duration: 4.0} # 示例序列2 - 循环演示 loop_sequence: # 是否循环播放 loop: true # 序列条目 entries: - {preset: "demo_single", duration: 2.0} - {preset: "demo_path", duration: 3.0} ``` ### 配置项说明 #### 全局设置 - `default_camera_type`: 默认相机类型 - `NORMAL`: 普通模式 - `SPECTATOR`: 旁观者模式 - `CINEMATIC`: 电影模式 - `default_transition`: 默认过渡效果设置 - `text_display`: 文本显示相关设置 - `permissions`: 权限检查设置 #### 预设配置 - `presets`: 所有相机预设的根节点 - 每个预设包含: - `type`: 相机类型 - `locations`: 位置点列表(支持多个关键帧) - `commands`: 命令调度列表(可选) - `texts`: 文本显示列表(可选) #### 序列配置 - `sequences`: 所有序列的根节点 - 每个序列包含: - `loop`: 是否循环播放 - `entries`: 序列条目列表,每个条目指定预设名称和持续时间 ## 使用示例 ### 创建简单的路径动画 1. 进入相机模式: `/vcam enter` 2. 移动到起始位置并保存: `/vcam save start` 3. 移动到结束位置并保存: `/vcam save end` 4. 编辑配置文件,将两个位置添加到同一个预设中形成路径 5. 播放预设查看运镜效果: `/vcam load preset_name` ### 创建多点相机预设(新功能) 1. 开始创建预设: `/vcam create my_preset` 2. 移动到起始位置(包括调整视角角度)并添加第一个点: `/vcam addpoint` 3. 移动到第二个位置并添加点(指定到下一点的运行时间): `/vcam addpoint 2.5` 4. 继续添加更多点(每个点都会记录位置和视角角度)... 5. 完成预设创建: `/vcam finish` ### 创建文本显示效果 在配置文件的预设中添加texts部分: ```yaml texts: - {text: "&a欢迎观看", delay: 0, duration: 3000} - {text: "&b精彩即将开始", delay: 3000, duration: 2000} ``` ### 创建自动命令执行 在配置文件的预设中添加commands部分: ```yaml commands: - {command: "say 相机启动", delay: 0} - {command: "effect give @a minecraft:glowing 10 1", delay: 1000} ``` ## 技术架构 ### 核心组件 - **CameraManager**: 相机管理器,处理核心逻辑 - **SessionManager**: 会话管理器,管理玩家状态 - **CameraSession**: 相机会话,保存单个玩家的相机状态 - **CameraPreset**: 相机预设,保存相机位置和相关配置 - **CameraSequence**: 相机序列,管理预设播放顺序 - **PathInterpolator**: 路径插值器,实现平滑过渡算法 - **Timeline**: 时间轴管理器,统一管理时间相关操作 ### 设计模式 - **命令模式**: 处理 `/vcam` 命令的执行 - **观察者模式**: 使用监听器响应游戏事件 - **管理器模式**: 通过管理器类集中处理功能 - **策略模式**: 支持不同的相机类型和过渡效果 ## 故障排除 ### 常见问题 1. **插件无法加载**: 检查服务器版本是否兼容 2. **权限问题**: 确保为用户分配了适当的权限节点 3. **配置不生效**: 检查配置文件格式是否正确,重启服务器使配置生效 ### 日志查看 插件会在服务器日志中输出相关信息,可以通过日志排查问题。 ## 贡献 欢迎提交 Issue 和 Pull Request 来改进这个插件。 ## 许可证 [GPL-v3.0] [/MD]

如何购买

  1. 在本贴右上角前往爱发电
  2. 填入你的QQ号并支付
  3. 我在看到消息后会第一时间将插件发送给您,比较急可以给3375778411@qq.com发邮件催我

其他​

请你在使用开源构建时给我的仓库点star编译了只能自用,不可以分发

交流群

欢迎加入LatticeMC交流群!群号:734527894

作者
老穆棍
查看
644
首次发布
最后更新

评分

0.00 星 0 次评分

老穆棍 的其他资源

最新更新

  1. 1.4.0

    支持了各种神奇的过渡动画
  2. 1.2.6

    完善了功能
后退
顶部 底部