> For the complete documentation index, see [llms.txt](https://docs.convai.com/api-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.convai.com/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language.md).

# 肢体语言

查找添加环境性姿态、呼吸、重心转移和小型响应动作的指南，让 Convai 角色在动画间隙保持生动。

身体语言是 Convai 的具身模块，它为角色提供持续的、环境式的非语言行为：呼吸、重心转移、小动作，以及在预制动作之间从不停止的反应性退缩。身体动画会播放预制片段——比如走路循环、挥手——而身体语言从不拥有任何片段；它只是在角色已经在做的动作之上增加少量程序化运动。一个组件， `ConvaiBodyLanguageController`，驱动这一切。

***

### 身体语言为角色带来什么

| 行为      | 它看起来是什么样                                                     |
| ------- | ------------------------------------------------------------ |
| 呼吸      | 胸部和肩膀会以持续循环扩张和收缩，在受到打断时偶尔会有更明显的吸气、平复时的一声叹息，以及角色开始说话前的一次更深呼吸。 |
| 重心转移与摇摆 | 角色会定期在双脚之间转移重心，并在原地轻微漂移，就像站立的身体会持续进行微调平衡，而不是完美静止。            |
| 手势表达    | 在说话时，小幅的头部点动和姿态脉动会跟随角色的语音节奏，而它的手在预制手势之间也会保持微妙的活力，而不是僵直不动。    |
| 倾听姿态    | 在倾听时，角色会略微前倾并安静下来，偶尔会有注意力集中的头部倾斜。                            |
| 小动作     | 在空闲或思考时，缓慢的横向重心转移能让角色看起来不那么僵硬。                               |
| 反应      | 突然的情绪高涨——惊讶、好笑——可能触发一次性的受惊一缩，或一个带笑的弹动。                       |

添加 `ConvaiBodyLanguageController` 通过……向角色 **Convai > 具身 > 身体语言** 并且它会立即在 SDK 的内置调校上生效——无需任何配置文件资源，就能在 Play 模式中看到呼吸和重心转移。

***

### 它与身体动画有何不同

身体动画和身体语言都会驱动角色的骨骼，但它们解决的是不同问题，且从不会争夺同一段运动：

|        | 身体动画                         | 身体语言                         |
| ------ | ---------------------------- | ---------------------------- |
| 它播放什么  | 预制片段：待机、走路循环、说话叠加层、动作、指向     | 完全没有片段——每个 tick 都会计算的持续程序化运动 |
| 它拥有什么  | 角色的移动能力，以及任何有意的、可识别的动作       | 叠加在上面的环境式生机：呼吸、重心转移、姿态、小手势   |
| 两者如何结合 | 通过……播放其片段 `PlayableGraph` 照常 | 在身体动画已经摆出的姿势之上，再添加仅限摆动的小幅增量  |

角色可以单独使用任一模块，也可以两者一起使用。两者同时存在时，身体语言会自我减弱，而不是覆盖身体动画——请参见 [身体语言如何工作](/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language/how-body-language-works.md) ，了解使这种共存可靠的抑制规则。

***

### 从哪里开始

{% content-ref url="/pages/b2ad39829dc48a1cbdd51297da72ea87b10b339f" %}
[肢体语言快速入门](/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language/quick-start.md)
{% endcontent-ref %}

***

### 探索身体语言

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>身体语言如何工作</strong><br>产生这种运动的行为导演，以及它如何让位于脚本手势。</td><td><a href="/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language/how-body-language-works.md">肢体语言如何运作</a></td></tr><tr><td><strong>身体语言快速入门</strong><br>将该组件添加到角色，并查看呼吸、重心转移和待机生机如何运行。</td><td><a href="/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language/quick-start.md">肢体语言快速入门</a></td></tr><tr><td><strong>调节表现力</strong><br>使用 ExpressivenessPreset 旋钮和各行为增益，让角色风格更含蓄或更戏剧化。</td><td><a href="/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language/tune-expressiveness.md">调节表现力</a></td></tr><tr><td><strong>触发手势和反应</strong><br>在代码中请求脚本化头部手势、语义手势提示或一次性反应。</td><td><a href="/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language/gestures-and-reactions.md">触发手势与反应</a></td></tr><tr><td><strong>Body language profile reference</strong><br>按章节分组的每个 ConvaiBodyLanguageProfile 字段及其默认值。</td><td><a href="/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language/profile-reference.md">肢体语言配置文件参考</a></td></tr><tr><td><strong>Body language 脚本参考</strong><br>ConvaiBodyLanguageController 的公共 API：读取值、句柄和枚举。</td><td><a href="/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language/scripting-reference.md">肢体语言脚本参考</a></td></tr><tr><td><strong>排查身体语言问题</strong><br>没有运动、运动与脚本动画冲突，以及手势请求被拒绝。</td><td><a href="/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language/troubleshooting.md">肢体语言故障排查</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.convai.com/api-docs/zh/cha-jian-yu-ji-cheng/convai-unity-sdk/embodiment/body-language.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
