目录
前言
使用方法
1.下载dialogue editor
2.新建空物体
3.对对话内容进行编辑
4.对话画布建立
5.触发对话框代码
结束语
前言
今天是坚持写博客的第21天,很高兴自己可以坚持,也希望能与大家一起进步。我们今天来看unity3d当中的一个可以轻松实现对话的插件——dialogue editor,希望对大家有帮助!
使用方法
今天我们不废话,直接进入正题。下面是使用dialogue editor的具体步骤:
1.下载dialogue editor
我们先进入unity3d的资源商店,直接搜索dialogue editor,就可以找到这个免费的插件,如下图所示:
在下载完成后,我们进入unity进行import导入。导入后我们可以在project面板当中确认是否已经导入成功,若导入成功,会出现如下图的资源:
2.新建空物体
导入完成后,我们需要设置一个空物体,并命名为Robot Conversation,并在Inspector面板添加NPC Conversation的组件来启动对话。
3.对对话内容进行编辑
选择菜单栏的windows栏目,进入dialogue editor。
随后进入面板后,插件中默认有“语言”和“选项”两个方案供大家选择。在“语言”中,大家可以设置当前对话对象的名字、说话的内容等,也可以设置他的头像、对话内容的字体等,还可以设置对话之后触发的事件等:
也可以选择“选项”面板,在这里等于给出分支路口,可以设置交互行为,让玩家不单单是点击进行下一句话,来阅读整个对话。
PS:在选项后可以继续接对话,对话后也可以接对话,但是选项后不能接选项。
4.对话画布建立
建立一个UI画布作为对话画布,画布命名为ConversationCanvas。在conversation scaler当中可以设置对话画布的大小。同时我们需要把最开始下载的插件当中的“canvasmanager”拖到canvas下并作为其子物体。
5.触发对话框代码
首先我们可以建立一个cube,并调整它为一个扁平的长方体作为“踏板”,命名为conversationtrigger。关闭mesh renderer,保证is trigger被选中。
添加一个叫conversation starter的脚本,进入编辑。首先我们需要导入“using Dialogue editor"的头文件(因为是C#语言所以引入是这样的格式。随后写下如下函数:
private void OnTr1ggerstay(Collider other){
if (other.CompareTag("Player"){
if(Input.GetKeyDown(KeyCode.F)){
ConversationManager.Instance.StartConversation(myConversation);
}
}
}
其中我们以按下F键为例,大家有其他喜欢的按键也可以替换“keycode”后面的字母。
6.其他工作
最后我们需要回到conversationtrigger,将robot Conversation拖入第二格:
我们还需要保证我们操纵去触发“踏板”的对象或人物需要有一个“Player”标签,否则将无法正常进行对话。
最后我们把代码和程序进行保存。保存后我们开始运行,走进踏板后,就可以按下按钮进行交互和对话了。
结束语
今天和大家的分享就到这里,希望对大家有所帮助,如果有所帮助,希望您可以留下点赞、关注或收藏,谢谢!