Convai
介绍
-
能够定制AI NPC
-
集成了中英文的STT和TTS,并且能识别中文文本输入
-
可以对语音或文字命令,做出相应的动作
-
可以实现NPC和NPC之间的对话
控制台AI配置
-
角色配置入口:Create Character
-
角色描述
-

-
CharacterName:角色名
-
-
知识库
-
个性配置
-
核心AI模型配置
组件
官方核心组件(不建议修改)
-
ConvaiNPC:赋予游戏对象与 Convai API 进行交互的能力。
-
ConvaiNPCAudioManager:语音管理器:控制NPC说话
-
ConvaiPlayerInteractionManager:玩家交互管理器,管理玩家说话和文本输入
-
-
ConvaiGroupNPCController:这个类负责处理与团队中NPC之间的对话任务
-
ConvaiLipSync:语音嘴唇、牙齿、舌头(前两个是表情动画,后一个即可以是表情动画也可以是骨骼动画)钳口(只能是骨骼动画)
- ConvaiVisemesLipSync:音素嘴唇同步组件:解析音素匹配嘴唇动画
-
ConvaiHeadTracking:这个类为一个对象(如角色)提供了头部追踪功能,并且需要Animator组件附加到同一个游戏对象上。
-
ConvaiGRPCAPI:单例组件,管理Convai服务器和插件之间的所有通信
-
ProcessUserQuery:玩家查询进程,处理玩家的对话信息,返回玩家语音的文本信息,也就是STT,从服务器返回
-
ProcessCharacterEmotion:NPC的表情返回进程(只存储了表情信息,没有做表现)
-
ProcessBtResponse:处理NPC的叙事进程
-
ProcessActionResponse:处理NPC的行为进程
-
ProcessAudioResponse:返回NPC的语音进程,处理NPC的语音数据、音素数据、blendShape数据
-
-
UISaveLoadSystem:UI设置存储系统
-
IChatUI:聊天UI接口
-
ActivateUI:激活UI
-
DeactivateUI:取消激活UI
-
SendCharacterText:展示NPC对话信息
-
SendPlayerText:展示玩家对话信息
-
-
ConvaiInteractablesData:管理AI NPC和可交互的物品对象
-
ActionConfig:命令动作系统配置
-
Objects:管理动作命令的物品
-
Characters:管理动作命令的NPC角色
-
可自定义修改的组件
-
ConvaiInputManager:输入管理器,统一管理玩家的硬件输入
- 一般只需要管理语音和文本输入监听即可
-
ConvaiChatUIHandler:管理加载聊天对话UI,分三类:聊天、问答、字幕(可以在设置面板中修改),这个是内置到ConvaiGRPCAPI里的,
-
SendCharacterText:展示NPC的对话文本
-
SendPlayerText:展示玩家的文本
-
SetUIType:这是UI类型
-
GetCurrentUI:获取当前UI
-
-
IChatUI的实现类:ChatBoxUI、QuestionAnswerUI、SubtitleChatUI
-
ConvaiActionsHandler:语音命令行为处理,
-
actionResponseList:存储ConvaiGRPCAPI返回的回复指令信息
-
actionMethods:指令对应动作名配置
-
ParseActions:解析整个回复指令
-
ParseSingleAction:解析单个回复指令
-
LevenshteinDistance:通过字符串匹配最合适的结果,字符串差异对比(在actionMethods中)
-
RegisterForActionEvents:注册动作开始和结束
-
-
ConvaiCrosshairHandler:控制玩家相机准星看向的NPC
-
ConvaiInteractablesData:管理AI NPC和可交互的物品对象,用于给ConvaiCrosshairHandler匹配识别的对象
-
ConvaiNPCManager:Npc管理,负责检测视线附近的玩家
-
UIAppearanceSettings:控制设置面板显隐、和对话面板显隐
-
UISaveLoadSystem:UI相关配置存储加载系统



