ACE(Avatar Cloud Engine) for Games在UE5中的使用

阅读文章Introducing NVIDIA ACE For Games - Spark Life Into Virtual Characters With Generative AI | GeForce News | NVIDIA后决定实践该技术流程

该模型可以实现与游戏NPC实时对话,具体流程为:

  • 利用NVIDIA’NeMo AI框架结合NPC个人背景生成其“专属台词”
  • 利用NVIDIA’Rica模型进行语音识别和文本转语音
  • 利用NVIDIA’Omniverse Audio2Face功能结合文本驱动数字人面部表情

该模型目前已支持在Unity和UE5中使用,但本人没有在Unity中成功尝试,在此提供在UE5中的使用流程。文末附已知Unity可用流程。

安装插件

下载插件并安装

  • Convai Unreal 插件仅与Unreal Engine 5和4.26 或更高版本兼容

  • 在链接中下载对应版本的插件文件夹 - Google 云端硬盘

  • 找到引擎的插件安装目录UE_5.2>Engine>Plugins

    解压后的层级关系

在引擎中激活插件

  • 打开引擎

  • 创建第一人称游戏项目

  • 在编辑中打开插件,搜索convai,勾选后选择立即重启。操作如图

  • 找到项目所在文件夹,打开Config/DefaultEngine.ini,在文件顶端增加

    [Voice]
    bEnabled=true
  • 保存之后关闭,重新启动引擎

创建定制角色

  • 在网站Loading… (convai.com)注册并登录

  • 点击 create a new character
    创建新角色

  • 填写合适的数据,右侧的人物也可以进行形象定制。对人物进行形象定制

  • 记录角色的Character’s ID和API Key,后续在引擎中需要使用。

    Character’s ID
    API Key

引擎中导入角色信息

输入API Key

  • 打开引擎,编辑-项目设置-插件-convai
  • 刚才在页面复制的API Key输入API

创建蓝图

  • 右键内容浏览器,创建蓝图类

    创建蓝图类

  • 输入搜索ConvaiBaseCharacter

    创建蓝图类

  • 将蓝图拖拽至场景中

    将蓝图拖拽至场景中

修改蓝图

  • 大纲中找到TestChar,细节-默认更改Char ID更改Char ID

  • 修改Blueprints文件夹中BP_FirstPersonCharacter蓝图

    BP_FirstPersonCharacter蓝图

  • 更改类设置中的类选项-父类为ConvaiBasePlayer更改类设置中的类选项-父类为ConvaiBasePlayer

  • 目前为止在场景里面可以和NPC正常对话,只是看不到模型,请确保到这一步运行时无bug

导入角色模型

下载模型

  • 打开窗口-Quixel Bridge.窗口-Quixel Bridge

  • 下载喜欢的模型,然后导入
    下载模型导入模型

  • 对话框勾选启用缺失

    勾选如图

  • 此时引擎提示重启,请按提示重启

角色导入场景

  • 在内容管理器中选择角色对应的文件夹。选择了哪个角色,该文件夹就是什么名字。

  • 将本蓝图类拖入之后场景会出现角色文件夹选取与角色拖入

  • 双击本蓝图类进行编辑

  • 更改类设置中的类选项-父类为Convai Base Character编辑本蓝图类

  • 更改组件-Body-动画-动画类为Convai_MetaHuman_BodyAnimConvai_MetaHuman_BodyAnim

  • 更改组件-Body-Face-动画-动画类为Convai_MetaHuman_FaceAnim
    Convai_MetaHuman_FaceAnim

  • 完成后进行编译,确保没有报错

配置人物

  • 点击场景中的人物,细节-默认-Char ID中粘贴网站复制的ID
    更改Char ID

到此为止已完成所有配置,可以实现Youtube视频中所展示的效果。

在Unity中使用

适用于windows系统与2019.4LTS以上版本Unity

以下步骤为可能需要

Author: ZhangNort
Link: http://example.com/2023/07/19/ace for games/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.