用途
该工具是一个 3D 白模预演(Previs)执行器,属于公开实验性包。它的用途是在用户明确要求进行实际 3D 白模预演时,把已有视频提示词、镜头描述或分镜编译成可播放的机位与基础走位预演。仅讨论创意镜头思路、评估方案效果或测试该 Skill 本身,不构成渲染授权。
主要能力
- 保留用户原提示词并编译为 previs-compiler/1.0 合同,只执行提示词中已有的镜头意图,默认值需可追踪。
- 支持一句提示词、单镜、多镜、任意时长或无明确时长的输入。
- 输出第一交付层为可播放的 3D 白模 MP4,并生成 previs_compiled.json(可审计的 3D 执行解释)和 previs_validation.json(时长、帧数、分辨率、切点、实际解码和观看检查);可选 .blend 工程仅作后台可编辑产物,不能替代视频。
- 普通走位与摄影机预演通过 run_blender_previs.py 调用 blender_previs_adapter.py;打斗规格通过 run_blender_rigged_fight.py 调用 blender_rigged_fight_adapter.py,逐帧求解肩肘腕、髋膝踝、双手握点、武器和共享接触。
- 已实现人形/人形机甲和双臂悬浮类代理;四足、车辆等未实现类别须在编译阶段报能力缺口。
使用方式
需要已安装 Blender。Blender 定位顺序为 --blender、WHITEBOX_BLENDER 环境变量、PATH,最后是当前任务下的 _runtime/blender-*-windows-x64/blender.exe,指定路径无效时直接报错。两个启动器要求显式 --runtime-dir。历史软件渲染器的 FFmpeg 定位顺序为 --ffmpeg、WHITEBOX_FFMPEG、PATH;ffprobe 为 --ffprobe、WHITEBOX_FFPROBE、PATH 或 FFmpeg 同目录对应可执行文件。流程上先按 references/prompt-to-previs.md 编译,运行 scripts/validate_compiled_previs.py 校验,时间重叠、镜头空档、缺摄影机、人物引用错误或不可执行关键歧义会在渲染前拒绝;随后调用相应 Blender 脚本渲染,并用实际解码器核对 MP4 的帧数、帧率、分辨率和时长,逐镜检查首帧、中点、尾帧及切镜前后。
适用场景
适用于已有提示词或分镜、需要先看机位、空间、走位、切镜和节奏的预演场景,包括普通走位与摄影机预演,以及满足动作规格的人形打斗预演。
限制
- 公开包不包含本地工作台和 Blender 二进制文件;缺少依赖或实际可播放视频时须报告未完成。
- 未写时长时,单镜默认 4 秒、多镜默认每镜 3 秒;未写摄影机运动时保持静止;未写场景时只生成地面网格和必要空间参照。
- 只有镜号、时间码、硬切、切到或明确转场才自动拆镜,“随后、然后、接着”默认只是同镜动作先后。
- 动作密集打斗必须满足关节枢轴、武器与双手握持约束、共享接触点、蓄力与反作用等条件,否则只输出失败诊断;完整打斗序列开始前须先用 2—4 秒单动作镜头过门。
- 预演只证明当前编译解释中的镜头、空间、走位、切镜和节奏,不证明正式模型会生成相同像素、表演、材质或特效。截图、编辑器界面、工程文件、静态关键帧、2.5D 推拉等不能替代 MP4。