Doodlecast AI 视频引擎
程序化世界 + 火柴人成片流水线,目标是从脚本到 20 分钟长视频的端到端生成。
- 角色
- 架构
- 年份
- 2026
- 技术栈
- TypeScriptThree.jsCanvasRapier3DLLMTTS
AI 生成长视频最大的坑,是「看起来对」和「真的对」是两件事——一帧画面好看,不代表二十分钟的片子里人物比例、光照、口型全程都和台词对得上。分钟级素材靠人工逐帧回看还撑得住,到长片体量就成了不可能完成的体力活,而且人眼本来就容易漏看细微的比例错位、穿模、口型对不上。Doodlecast 想做的是把「一部片子」当成程序化世界里的一次真实运行来生成,而不是逐帧作画再拼接。
引擎核心是一个程序化大世界:场景用空间哈希组织,单场次能承载十万级对象而不掉帧;相机、舞台、角色、TTS 台词、字幕分属独立轨道,靠关键帧对齐拼成一条真正的分镜时间轴,而不是一段脚本配一张概念图。生成分两条腿走:2D 走火柴人式简笔渲染,快速验证叙事节奏;3D 走 Rapier3D 物理驱动的场景做质感镜头。LLM 负责编剧与分镜,TTS 负责旁白与对白,两者时长对齐后直接写回时间轴。二十分钟长片按镜头切分渲染,每一分片独立编码再拼接,避免单进程长时间渲染中途崩溃导致从头返工。
逐帧质检是流水线里独立的一道工序:每一帧生成后,代码先核验数据是否归零、版面是否越界、人物比例是否失真,而不是等成片剪出来才靠肉眼抽查。在 4.2 万帧的内部测试片段上,这道质检自动拦截了 96.7% 的坏帧;单场景空间哈希索引承载对象数做到 12.8 万,编辑器内仍稳定在 60fps;20 分钟的长片按镜头切成 96 个分片编码,单片渲染失败只需重渲那一片;脚本朗读时长与端到端生成总耗时之比稳定在 1:4.3 左右。
这条流水线的态度,是把「好不好看」这种主观判断尽量前移成代码能核验的客观判据——质检和分片渲染是引擎的地基,不是成片之后再补的一道审核工序。目前边界也很清楚:二十分钟仍是目标产量而非稳定日常输出,3D 分支的物理真实感也还在持续打磨。
亮点
- 程序化大世界引擎 (空间哈希,十万级对象)
- 代码级逐帧检测:数据归零 / 版面 / 人物自动校验
- 2D / 3D 双轨,LLM 编剧 + TTS 旁白

