SuperAPI AI 工具集

blender-forest

设计与创作

查看项目

更新于 11-04 17:19

技能介绍

本技能是一套“照着长篇教程在 Blender 中重建超写实环境”的工作流记录,源自一段 13 秒、2560x1440、390 帧的保时捷穿行阳光森林镜头。核心思路不是让 Claude 凭空生成场景,而是给它一段长教程并让它逐步照做:Claude 负责写代码和布相机,模型来自教程免费素材或开源资产。scripts/ 中的脚本均实际用于该镜头,其中文件名(如 forest.blend、材质与集合名)来自该场景,需按自己的工程改名。

对 Claude 的规则:不要从零建模型或做动画,使用教程免费素材或开源资产;擅长代码与相机,负责脚本、散布系统、运镜与渲染设置;自行写代码,不安装插件、不运行未读过的脚本(付费 Geo-Scatter 与 Rig-A-Car 插件均由自有代码替代);每阶段后渲染小测试静帧与参考帧并排比对,修正后再继续;把渲染比对循环交给更便宜的 Sonnet 子代理并只读其简报以省 token;开始渲染前先告知预计耗时,并保持电脑可用(低于正常优先级、8 线程、测试纹理上限 2048)。

环境与目录:Blender 5.x(在 5.2 上制作)、NVIDIA GPU(OptiX)、Python 3、ffmpeg;项目目录 ~/blender-forest(脚本以它为 ROOT),含 scene/forest.blend、assets/、research/、render/。后台运行命令为 blender -b scene/forest.blend --python scripts/<script>.py;实时会话使用 blender-film 技能的桥接工具(tools/bridge.py + tools/send.py)。

步骤:1)挑选 1 小时以上、免费放出素材的长教程,并说明“照他的场景原样重建”。2)Claude 下载并通读字幕,以 30fps 截取前 30 秒、生成联系表并检测剪辑点(notes/camera_moves.md),编写 PLAN.md 列出每个镜头、运镜、长度与构建阶段。若 YouTube 拦截命令行下载,则通过浏览器抓帧与字幕。3)下载全部素材并分别解压,扫描病毒;解压前列出压缩包内 .exe .bat .ps1 .py .dll;用 --disable-autoexec 无头打开每个 .blend,audit_blend.py 统计内嵌脚本、驱动与链接库(预期为 0),inspect_assets.py 列出内容,check_missing.py 查缺失纹理,结果写入 SECURITY.md。4)分阶段构建,每阶段一脚本、可续跑、每阶段保存 .blend;顺序 build_world → scatter → build_path:build_world.py 做地形、地面材质、带光路分离的 HDRI 世界、太阳与色彩管理;layout.py 定义共享布局(空地、路径走向);scatter.py 用自写 Geometry Nodes 散布(一张图层表含密度与缩放,56 万至 73 万实例,约 15 秒完成);build_path.py 生成砾石路面与铺地、砾石材质、透明边缘融入地面及路面落叶。camset.py 按 CAM="x,y,height,yaw,pitch,lens" 放置看片相机,test_still.py 渲染 960x540 静帧;布局阶段 32 采样即可,但降噪器会糊化砾石,判断纹理需 128 采样。5)遇到效果不佳时及时转向:教程小屋在本项目构建中显得平淡,于是放弃并用其车辆片段(19-32 秒、390 帧、4 个镜头),同一世界换目标。6)build_car.py 使用教程中的保时捷模型与自写绑定,车沿路径行驶、车轮随里程旋转、前轮随弯转向、车身轻微颠簸;car.json 保存路径与速度;绑定期望部件名为 mycar_body、mycar_wheel.Ft.R/Ft.L/Bk.R/Bk.L 与 mycar_wheelbrake.Ft.R/Ft.L/Bk.R/Bk.L。7)逐帧分析目标片段,由子代理测量相机高度、镜头、鱼眼、速度与剪辑点;build_shots.py 按 shots.json 构建全部镜头(起止相机、镜头、光圈、对焦、缓动、抖动、每镜太阳角度),四个镜头为:缓慢跟拍穿过树叶、固定广角拍车辆横穿、刚性固定在车尾角的鱼眼镜头、俯视跟随。8)look.py 完全由 look_params.json 驱动:雾霭、阳光光斑、景深、运动模糊、色彩与更密地被,调 JSON 而非脚本。9)渲染:bench.py 对同帧不同 Cycles 设置计时,结果 128 采样 + OpenImageDenoise 与 256 采样观感相同且约快 45%(每帧 51 秒→28 秒);开启持久数据使森林只构建一次并留在 GPU 显存;render_final.py / render_final.cmd 输出 2560x1440 PNG 序列,断电后可续跑(先删除空的占位帧),390 帧约 3 小时夜间完成;watch_render.ps1 显示进度、速度与剩余时间,stay_awake_encode.ps1 保持电脑唤醒(不改设置)并在结束时合成 MP4,screen_guard.ps1 在无人使用时保持显示器关闭。先预览:render_clay.py 以灰色黏土(Workbench)约 4 分钟渲染整段,preview.py 生成低质量动画预览以检查节奏与剪辑。10)声音:渲染本身无声;真实 CC0 录音音效(BigSoundBank)优于生成音效,包括环境声、车辆驶过、车内声与嗖声;如需生成音效,gen_sfx.py 可用自己的 ElevenLabs 密钥(ELEVENLABS_API_KEY)。

起始提示词示例:“去看这个视频:[教程链接]。我们要在我的 GPU 上原样重建他的场景。抓取字幕和前 30 秒 30fps 画面,写 PLAN.md,然后告诉我下载哪些素材。遵循 blender-forest 技能的规则。”

许可:MIT,作者 Mr omi with Claude。

限制:依赖教程内容、免费素材与所述工具链;渲染耗时与效果因硬件和场景而异;部分站点可能拦截命令行下载,需改用浏览器方式;文中未提供其他功能与收费信息。