Composer 不支持柔体动力学仿真,所谓“布料飘动”仅为纹理位移、分段平移动画与视图切换构成的视觉幻觉;真实布料形变需在 SolidWorks 或 Blender 中用 Bullet/Cloth Solver 仿真后导入帧序列。

Composer 没有柔体动力学算法——它根本不支持软体仿真。 所谓“布料飘动”只是用纹理位移、分段平移动画和视图切换拼出来的视觉幻觉,真要算布料受风力形变、碰撞回弹或拉伸应力,得回 SolidWorks 或 Blender 用 Bullet、Cloth Solver 做完仿真,再导出帧序列进 Composer 渲染。
为什么 Composer 里点不开 btSoftBody 或 cloth modifier
因为根本不存在。Composer 的代码层没链接 Bullet、PhysX 或任何软体求解器;btSoftBodyHelpers::CreateFromTriMesh 这类函数在它的二进制里压根没定义。你右键零件、打开属性面板、翻遍变换/材质/动画页签,都找不到“柔体”“布料”“节点质量”“弹簧刚度”这类参数入口——不是藏得深,是压根没实现。
- 所有声称“Composer 原生支持布料动画”的教程,实际都在用
Texture Translate滚动噪点图 +Opacity脉冲关键帧模拟“飘动感” - 试图导入 .fbx 带骨骼的布料模型?会丢失蒙皮权重,只剩刚体外壳
- 用 Digger 切开后想看内部形变?剖面只切几何,不读取位移场,切出来还是静态网格
用多段平移+缓动模拟“布料摆动”的实操边界
适用于旗帜、吊带、悬垂电缆这类有明确悬挂点和主摆向的结构,但必须接受它是“示意”,不是“仿真”。核心是把一块布拆成 ≥3 段:固定段(锚点)、过渡段(主摆幅)、末端段(惯性甩尾)。
- 每段独立设枢轴点:统一移到上一段末端位置,避免旋转导致位移方向漂移
- 时间错开:固定段从 0s 开始旋转 → 过渡段 0.3s 启动平移 → 末端段 0.6s 启动,用
Quadratic缓动制造滞后感 - 位移量按段递增:比如过渡段
Position Y = -0.8 mm,末端段设为-1.5 mm,数值需放大 5–10 倍才看得清 - 禁用自动对齐:右键→属性→变换→取消勾选
Auto-align pivot to geometry,否则枢轴会被重置到零件中心,散开就飞偏
Texture Translate 滚动噪点图做“飘动幻觉”的硬约束
这是 Composer 唯一能稳定输出“动态感”的路径,但效果高度依赖纹理质量和投影匹配。一旦失配,立刻穿帮。
- 纹理必须是无缝循环的灰度噪点图(推荐 Perlin noise 生成,尺寸 1024×128),保存为
.png(保留 Alpha) - 投影模式强制用
Cylindrical:哪怕布料是平面,也要手动把投影轴对齐主风向,否则滚动时边缘撕裂 -
Offset U关键帧必须线性(Linear插值):缓动会导致“启动慢→中途快→刹不住”,不像自然飘动,像传送带启停 - 叠加一层静态高斯模糊贴图(透明度 15%)可柔化硬边,但别加太多——Composer 不支持多层混合模式,只能靠叠层 Alpha 控制
真正难的不是怎么让布料“看起来在动”,而是怎么让它“看起来动得合理”:风速变化时节奏是否同步、碰到障碍物是否该减速、不同材质(棉 vs 尼龙)摆幅差异如何体现……这些全得靠手动调关键帧节奏和位移比例,没有自动求解器兜底。越想逼近真实,时间成本越高,也越容易在导出时因 Include texture animations 忘勾而变成一张静图。











