【问题标题】:Text to 2d Lipsync In Unity文本到 Unity 中的 2d Lipsync
【发布时间】:2023-03-24 06:14:01
【问题描述】:

我对统一非常陌生,我不确定从哪里开始。我正在尝试使用统一将文本制作为 2d 口型同步。我试过搜索教程,但我发现的只是人们使用现成的脚本或插件来制作类似的东西,但我想尝试从头开始。只是我只知道编码的基础知识,只能修改现有的代码,还没有能力从头开始做任何东西,因为我还在学习,所以我想知道你们是否可以给我一个线索?

例如,如果你们可以向我指出某种从头开始制作文本到语音的教程,或者制作 2d 口型同步的教程,或者某种制作文本到语音的示例代码,或者制作 2d 的示例代码口型同步,不管是什么,只要是和统一制作二维口型同步相关的,我都会欣然接受和研究。先感谢您。 (如果我的英语有很多错误请见谅,我不是本地人)

这是我正在尝试制作的示例:

(这两个的问题是他们让口型同步检测音频而不是文本中的语音)

或类似的东西,但用 2d 代替:

如果我的问题听起来很愚蠢,我很抱歉。我只是非常绝望:') 任何形式的帮助都将不胜感激。

【问题讨论】:

    标签: unity3d animation 2d text-to-speech


    【解决方案1】:

    根据您的用例,您可能比真正的文本到口型同步功能更简单,但首先 -

    当您刚开始学习编码时,很多事情一开始可能会让人不知所措。没有程序员能一下子解决大问题。你想先把它分解成块,再把这些块分解成更多的块,然后像清单一样一次处理一个。

    对于这个项目,我会这样分解。

    • 视觉效果
      • 动画的 2D 精灵图像(您发送的示例仅使用了几张不同的图像并循环播放)
      • 精灵动画
      • Sprite 动画师和控制器
    • 文本逻辑控制器
      • 文字界面更新
      • 文本控制器触发各种动画

    编程的另一个重要部分是分阶段工作。确定您的最小可行产品是什么,并在您的基本概念验证工作后对其进行迭代。

    现在,对于您的 MVP,我要做的就是创建一个基本的说话动画,然后设置您的文本控制器,以便任何时候文本出现在屏幕上,它都会在 X 时间段内对其进行动画处理。

    最后,使用插件或其他人的代码并不丢人。即使是最好的程序员也会在有意义的时候使用框架或其他人的代码。只要代码是开源的或获得许可供您根据需要使用,就没有理由重新发明轮子。插件和其他人的代码也可以成为学习如何编写代码的好方法,通过了解他们是如何编写代码、解构代码并将其变成您自己的代码。

    编辑:如果您只是在寻找一种在文本显示时启用动画的方法,请将类似的内容添加到您的文本控制器或您用于显示文本的任何内容中。

    public Animator myAnimator; (drag and drop your animator onto this in the inspector)
    
    public void UpdateOnScreenTextDialogue() {
        // logic to update your GUI with the new text
        myAnimator.Play("nameOfTalkingAnimation");
    }
    

    您还需要处理重置动画或转到特定动画,但所有这些都可以在统一文档中查找,或者如果您在 Unity 中搜索启动/停止动画。

    【讨论】:

    • 非常感谢您的回答!我已经制作了你在 Visuals 下列出的东西,但我仍然对文本逻辑控制器不太确定。我试过搜索如何制作文本控制器来触发各种动画,但我只找到了关于如何从按钮触发动画的教程......我真的不介意使用其他代码,因为我也主要通过解构来学习编码已经存在的东西,只是我并没有真正找到与我正在尝试制作的东西相似的东西,我发现的大多数现有代码都使用音频而不是文本来进行口型同步。
    • 您能稍微解释一下您在文本逻辑控制器下列出的内容吗?这将非常有帮助!很抱歉打扰了,再次感谢您。
    • 您目前如何显示文本?你有正在使用的对话系统吗?我假设您希望在将文本放在屏幕上时显示动画?如果您有一个用于更新文本 GUI 的方法,例如 updateTextDialogue(),那么您可以在该方法中添加对该动画的调用。 myAnimator.Play("Talking1");类似的东西。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多