# 角色 IP 与短剧一致性

> 用多模态参考 + 素材库锁定角色形象，让连续短剧 / IP 系列的多个镜头保持同一主角

做连续剧情短剧或 IP 系列时，最大的痛点是**跨镜头的角色一致性**：每次生成都是一张新面孔就没法讲故事。Seedance 2.0 用「素材库 + 多模态参考」解决这个问题——把角色形象注册成素材，之后每个镜头都以 `asset://` 引用同一素材。

## 核心思路

<Steps>
  <Step title="把角色注册成素材">
    创建 `AIGC` 素材组，上传角色形象图，拿到长期有效的 `asset-` 素材 ID。
  </Step>
  <Step title="每个镜头都引用同一素材">
    生成每个分镜时，在 `content` 里带上 `{"type":"image_url","image_url":{"url":"asset://素材ID"},"role":"reference_image"}`，用不同提示词描述动作与场景。
  </Step>
  <Step title="用末帧续接串成长视频">
    需要连贯长镜头时，用 `return_last_frame` 拿到末帧，作为下一段视频的首帧。
  </Step>
</Steps>

<Note>
动漫 / 风格化角色可以直接用公网 URL 作参考图，无需素材库；但**真实人脸**必须先走 [真人认证](/asset-management/real-person)。素材库完整说明见 [素材库 API](/asset-management/asset-library)。
</Note>

## 分镜示例

同一角色，两个不同镜头，引用同一个 `asset://` 素材：

```json 镜头一
{
  "model": "doubao-seedance-2-0-260128",
  "content": [
    {"type": "text", "text": "图片1中的少女站在樱花树下抬头微笑，花瓣飘落，镜头缓慢上摇"},
    {"type": "image_url", "image_url": {"url": "asset://asset-20260709190143-ntwhb"}, "role": "reference_image"}
  ],
  "resolution": "1080p",
  "ratio": "16:9",
  "duration": 5
}
```

```json 镜头二
{
  "model": "doubao-seedance-2-0-260128",
  "content": [
    {"type": "text", "text": "图片1中的少女撑伞走过雨中的石板巷，回头看向镜头，画面电影感"},
    {"type": "image_url", "image_url": {"url": "asset://asset-20260709190143-ntwhb"}, "role": "reference_image"}
  ],
  "resolution": "1080p",
  "ratio": "16:9",
  "duration": 5
}
```

<Warning>
提示词里用「图片1」「图片2」按 `content` 顺序指代角色，**不要**把 `asset-` 开头的素材 ID 写进提示词文本，否则模型会把它当普通文字。
</Warning>

## 提升一致性的技巧

<CardGroup cols={2}>
  <Card title="一角多图" icon="images">
    同一角色上传「正面全身照 + 自然表情面部特写」两张素材并同时引用，提示词写「图片1为角色全身，图片2为角色面部」
  </Card>
  <Card title="固定 seed" icon="dice">
    对同一分镜微调提示词时固定 `seed`，整体构图更稳定（注意相同 seed 也只是高度相近，非完全一致）
  </Card>
  <Card title="末帧续接" icon="link">
    `return_last_frame: true` 拿到末帧图，作为下一段的首帧，衔接更自然
  </Card>
  <Card title="统一风格描述" icon="palette">
    在每条提示词里保留同一句风格锚点（如「电影感、暖色调、35mm」），跨镜头观感统一
  </Card>
</CardGroup>

## 完整链路

素材注册到生成的端到端代码（含轮询素材 `Active`、轮询任务 `succeeded`、下载成片）见 [素材引用生视频实战](/asset-management/asset-reference)。

<CardGroup cols={3}>
  <Card title="素材引用实战" icon="wand-magic-sparkles" href="/asset-management/asset-reference">
    端到端代码示例
  </Card>
  <Card title="素材库 API" icon="images" href="/asset-management/asset-library">
    素材组与素材管理
  </Card>
  <Card title="真人口播与数字人" icon="user-check" href="/scenarios/digital-human">
    用真人形象出镜
  </Card>
</CardGroup>
