叙事设计脚本化
叙事设计完整的 C# 接口——IConvaiNarrativeDesign 事件、InvokeTrigger、带 speak 标签的 InvokeSpeech、异步部分获取以及运行时触发器重新配置。
以程序化方式控制叙事设计
访问角色 API
ConvaiCharacter character = GetComponent<ConvaiCharacter>();
IConvaiNarrativeDesign narrative = character.NarrativeDesign;属性
属性
类型
说明
监听章节变化
private void OnEnable()
{
character.NarrativeDesign.OnSectionChanged += HandleSectionChanged;
character.NarrativeDesign.OnSectionDataReceived += HandleSectionData;
}
private void OnDisable()
{
character.NarrativeDesign.OnSectionChanged -= HandleSectionChanged;
character.NarrativeDesign.OnSectionDataReceived -= HandleSectionData;
}
private void HandleSectionChanged(string previousId, string newId)
{
Debug.Log($"章节:{previousId} → {newId}");
}
private void HandleSectionData(NarrativeSectionData data)
{
Debug.Log($"章节 ID:{data.SectionId}");
// 此处可用 data.BehaviorTreeCode 和 data.BehaviorTreeConstants
}事件
事件
签名
说明
从代码中调用触发器
控制角色说什么
上下文注入(纯文本)
逐字语音(speak 标签)
比较
模式
角色的行为
监听触发器调用
字段
类型
说明
通过代码使用模板键
以编程方式获取章节和触发器
通过角色 API
通过静态获取器
字段
类型
说明
重置状态
从代码重新配置 ConvaiNarrativeDesignTrigger
架构概览
结论
最后更新于
这有帮助吗?