【Godot测试】【在Godot中添加VRM模型和VMD动画并播放】

在这里插入图片描述

观看本文最好是有点GD脚本编程基础
如果没有,请看:https://www.bilibili.com/video/BV1PJ411i7hK

需要的Godot版本不推荐超过3.3.3,因为实测当前最新的3.5标准版崩掉了
要问什么,那当然是作者插件发布日期推算出的版本号就是3.3.3或以下
在这里插入图片描述
已经测试Godot_v3.3.2-stable_win64和Godot_v3.3.3-stable_win64都没什么问题

我们以3.3.3为例,因为名字比较好记忆www

步骤:
下载:https://github.com/EIRTeam/VMDMotionDemo
以这个直接为工程测试

但是还需要一个插件
插件地址:
https://github.com/EIRTeam/VMDMotionGD
插件下载解压VMDMotionGD到VMDMotionDemo的插件文件夹addons下
在这里插入图片描述
然后任意丢一个vmd动作数据到GD的工程文件夹:
在这里插入图片描述
最重要的来了:
设置AutoLoad单例,也就是有些脚本需要预先加载
在这里插入图片描述
设置方法:https://www.bilibili.com/read/cv7517116
这里我们需要设置的几个脚本是插件的common下的这两个:
在这里插入图片描述
设置好后就可以运行主场景了

如果你上面的设置都没有搞错的话,那么运行将会看到debug界面:
在这里插入图片描述
选中vmd打开
在这里插入图片描述
这个插件运行效率不高,毕竟是GDScript,耐心等待就好了
在这里插入图片描述
加载成功,你可以看到,除了舞蹈动画,还有物理模拟和表情动画,如果你的vmd包含表情的话!
如果没有,你可以通过MMD软件合并表情数据到舞蹈数据本体里

目前貌似还不支持镜头,但是这应该难不倒你!

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您好,关于用Godot在3D游戏制作对话系统,以下是操作步骤和代码: 1. 创建一个新场景,添加一个3D场景节点和一个对话系统节点。 2. 在对话系统节点,创建一个对话树,包含所有可能的对话选项和回复。 3. 在场景节点添加一个触发器节点,用于触发对话系统。 4. 在触发器节点添加一个脚本,用于检测玩家与触发器的交互,并触发对话系统。 5. 在脚本,使用以下代码触发对话系统: ``` var dialog_system = get_node("path/to/dialog_system_node") dialog_system.start_dialog(dialog_tree) ``` 其,dialog_tree是您创建的对话树。 6. 在对话系统节点添加一个UI节点,用于显示对话选项和回复。 7. 在UI节点添加一个脚本,用于更新对话选项和回复。 8. 在脚本,使用以下代码更新对话选项和回复: ``` var dialog_system = get_node("path/to/dialog_system_node") var options = dialog_system.get_options() var replies = dialog_system.get_replies() update_ui(options, replies) ``` 其,update_ui是您自己定义的更新UI的函数。 希望以上操作步骤和代码能够帮助您制作出一个完整的对话系统。 ### 回答2: 在使用Godot开发3D游戏添加对话系统,可以按照以下步骤进行操作: 步骤一:创建对话系统实体 1. 在Godot编辑器创建一个场景,添加一个3D模型作为对话实体,例如一个人物角色。 2. 为实体添加对话系统所需的组件,包括一个碰撞体组件(CharacterController),一个脚本组件(GDScript/CSript)。 步骤二:编写对话系统脚本 1. 在对话系统脚本,定义对话内容并维护对话流程。 2. 使用变量或数据结构(如数组或字典)存储对话内容,例如对话文本、角色名字等。 3. 在脚本,编写逻辑以管理对话的展示和流转,例如根据玩家在场景的位置或触发条件,决定何时显示对话框,何时切换对话内容等。 步骤三:添加对话触发器 1. 在场景添加一个触发器,当玩家接近对话实体时触发对话事件。 2. 配置触发器的碰撞范围和触发条件,使其只在玩家接近对话实体时响应。 步骤四:在场景显示对话文本 1. 在对话脚本,编写逻辑以显示对话框并加载相应的对话文本。 2. 使用Godot的UI功能,在游戏屏幕上创建一个对话框,并将加载的对话内容显示在对话框。 3. 根据游戏需要,可以为对话框添加额外的美术资源,如头像、特效等以提升用户体验。 步骤五:处理对话过程的玩家输入 1. 在对话脚本,编写逻辑以响应玩家的输入,通常是按键或鼠标点击。 2. 根据玩家输入,决定如何切换对话内容,例如:下一句对话、跳过对话、触发特定事件等。 以上为使用Godot在3D游戏制作对话系统的基本步骤和代码编写指南。具体的实现可能根据游戏需求和开发者的编码能力而有所不同,但这个大致的框架可以帮助开始制作自定义的对话系统。 ### 回答3: 使用Godot引擎在3D游戏制作对话系统的操作步骤如下: 1. 创建对话节点:在Godot编辑器,创建一个新的场景,并在场景添加一个对话节点。可以将其命名为"Dialogue"。 2. 添加对话框:在对话节点的属性面板添加一个2D Sprite节点作为对话框背景,并设置适当的位置和大小。 3. 添加文本标签:在对话框节点下添加一个Label节点,用于显示对话内容。可以调整文本样式和对齐方式来适应需求。 4. 添加对话触发器:在角色或其他游戏元素上添加一个触发器,当玩家与之交互时触发对话。在触发器的脚本,通过发送信号或其他方法调用打开对话框的函数。 5. 创建对话文本:在对话节点的属性面板,创建一个名为"DialogueText"的新属性。这将用于存储并显示对话内容。 6. 编写对话脚本:在对话节点创建一个新的脚本,并添加以下代码: ``` extends Node export var dialogueText = "" func _ready(): connect("dialogue_start", self, "_on_dialogue_start") func _on_dialogue_start(): $Label.text = dialogueText ``` 7. 连接对话触发器:返回到场景编辑器,选触发器节点,并在信号选项选择适当的信号,将其连接到对话节点上的"_on_dialogue_start"函数。 8. 在游戏使用对话系统:在游戏,当玩家与触发器交互时,对话框将显示对话内容。 以上是使用Godot引擎在3D游戏制作对话系统的基本操作步骤。根据具体需求和游戏的复杂程度,还可以添加更多功能和特性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值