Unreal Engine 文字转语音:为你的游戏生成 AI 台词
Unreal 项目在请到配音演员之前,就会积累数百句台词:喊叫、任务对白、教程,以及每周都在变化的临时场景。文字转语音能在台词写好的当天就配上声音,剧本改了也能在几秒内重新生成。请注意:Supertonic 3 暂不支持中文,可朗读英语、日语、韩语等 31 种语言。
免费的 SuperClonica 引擎在普通处理器上离线朗读台词。本指南介绍如何批量生成、如何导入 Unreal,以及什么时候适合在运行时生成语音。
为 Unreal 游戏配音的两种方式
玩家的电脑不会运行语音服务器,所以打包后的单机游戏应随附预先生成的台词。
- 预先生成的台词:把 WAV 作为 Sound Wave 资产导入,像任何录制的对白一样随游戏打包。
- 运行时语音:游戏向 SuperClonica 服务器请求音频,适合开发工具以及有自己服务器的在线游戏。
- 两种方式都在普通处理器上运行,不按台词收费。
- 模型支持 31 种语言,暂不支持中文。
免费挑选声音
在任意声音页面输入一句 NPC 台词,30 到 100 个字符,选择语言并点击生成按钮。几秒后就能听出声音是否适合角色,无需注册。
批量生成台词
相同的文本、声音和 seed 总会得到相同的音频,所以只需重新生成改动过的台词,版本控制中保存脚本而不是音频。
- 安装引擎:python -m pip install superclonica-cpu。
- 把台词放在一张表里:ID、说话角色、语言和文本,例如从对白表格中导出。
- 用一个短脚本逐行朗读:superclonica --text "Halt! State your business." --voice guard.json --lang en --output VO_Guard_Greeting_01.wav。
- 按台词 ID 和角色命名文件,这样对白系统能找到它们,重新导入时也会替换正确的资产。
导入 Unreal
引擎输出 16 位单声道 WAV,Unreal 可以把它导入为 Sound Wave 资产;把文件拖进 Content Browser,或在每次生成后重新导入整个文件夹。如果按角色对台词做本地化,请使用 Dialogue Wave 资产。要在运行时生成语音,用 docker run -d -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cpu 启动服务器;调用它并播放返回的音频需要 C++(例如 HTTP 模块和程序化声波)或插件。不要把 API 密钥放进打包后的游戏,应由你自己的游戏服务器去调用语音服务器。
可以用于发布的声音
原型阶段可以使用目录中的任何声音。正式发布的游戏请使用你拥有权利的声音:模型自带的十个标准声音 M1–M5、F1–F5,用征得同意的演员 5 到 10 秒的干净录音、在配有 NVIDIA 显卡的电脑上用 SuperClonica 工作室训练出的你自己的声音,或在交易所定制的声音。粉丝制作的角色声音适用于恶搞和粉丝项目,而不适用于商业游戏。