C4D不用插件烘焙动画的6种方法(Three.js动画实现的解决方案)
着重整理和分享C4D的动画烘焙,应用于Three.js引擎,实现终端动画
最近碰上了一个webgl的项目,用Three.js引擎实现C4D中的动画效果,但是用程序纯写出来确实也可以,但是毕竟是麻烦。所以我就想到了用C4D把动画烘焙成gltf格式支持的PLA。其实现在C4D和一些其他的软件开始支持.abc格式,由于Three.js不支持所以没办法了。踩了一些坑总结和整理一些前辈的资料,下面分享6种会用到的不适用插件来烘焙点级别动画的方法(很枯燥):
不用插件烘焙动画
很多情况下需要烘焙动画输出给其他平台使用,下面介绍一下不用插件烘焙的方法。
1. 举例,有一个星球旋转的动画需要烘焙。
2. 鼠标中键选择
,右键调出时间线窗口(shift+F3)
3. 将模型加入到时间线窗口界面,工具栏点击功能-烘焙动画…
4. 设置烘焙参数,勾选PLA选项,即可获得动画。
克隆动画烘焙(基于C4D R22)
1. 先将要烘焙的克隆右键
当前状态转对象
2. 给原模型克隆添加运动图形缓存标签。
3. 烘焙运动图形缓存,烘焙完成后为绿色。
4. 在转化的组右键添加XPresso(如图)
5. 在XPresso中,可通过搜索,添加层级节点、对象索引节点、数据节点。
层级是一个迭代器,可以执行逐个运算。
对象索引是一个起映射作用的节点,按照一定的顺序来匹配数据。
6. 将原模型克隆拖拽到面板中,添加对象端口。
将“容器“按照如下图链接。
7. *注意:如果克隆内的子模型有动画,将原克隆模型的子模型复制替换掉(数量与克隆数量一致),如果没有可不做此步骤。
右键选择显示时间窗口(shift+F3)(如不显示,可在模型上添加任意关键帧)
8. 按Ctrl+A全选模型,然后选择功能-烘焙对象…,即开始烘焙动画。
9. 烘焙设置如图:勾选PLA,如需要备份可选择-创建拷贝。我这里不备份所以没有勾选直接烘焙。
10. 可能有些项目,克隆会添加运动图形的效果器来实现延时效果,方便的方法是手动在时间线窗口中拖拽。
(其他方法暂未测试)
11. 删除原模型、和Xpresso标签后,“容器“模型仍然可以播放动画。
文件-导出,选择GLB格式,导出设置如图:动画-变形选PLA,确定即可。
修改器动画烘焙
1. 首先要将模型(胶囊.1)C掉;然后复制出来一个(胶囊.2),作为承载变形动画的“容器”。
2. 右键选中原始模型,装配标签-点缓存。
3. 点击存储状态
4. 设置标签属性,勾选启用、使用变形器、PSR。(如有特殊需求可设置其他参数)
5. 设置好后,点击计算。稍等一会,动画会自动缓存点位置信息。
6. 在复制出来的“容器”模型(胶囊.2),添加
点缓存修改器(R22版本中在修改器列表中,或可shift+F12搜索点缓存)
7. 将原模型的点缓存标签拖入到点缓存修改器的对象属性中,“容器”模型即可获取原模型的所有点信息
(注意:模型的点数量必须一致,如有不同则会出错)。
8. 接下来就要让原模型的动画完全的烘焙到“容器”里。
选中“容器”模型,右键选择“显示时间线窗口”(快捷键shift+F3)。
9. 打开时间线窗口后,总览里没有看到点缓存修改器,是因为它没有关键帧所以不会显示。
选择点缓存修改器,对它随意添加关键帧,就会出现在时间线窗口中。
10. 在时间线窗口中,Ctrl+A选中所有,点击功能-烘焙对象…
11. 设置烘焙参数如图,必须选中PLA,其他可根据情况选择。然后点击确定,即开始烘焙PLA点级别动画。
(可以按需选择“创建拷贝”用于备份)
12. 然后删除原模型,删除点缓存修改器。“容器”模型即烘焙PLA(点级别动画)完成。
13. Gltf导出设置,变形选择PLA。
基础模型的动画烘焙
C4D的基础模型有很多可变化的参数,例如圆环,它有切片、圆环半径等可调参数来做动画。
下面演示此类动画的烘焙方法(仅供参考)。
1. 首先,将要烘焙的模型复制出来一个,作为“容器”模型,将”容器“模型C掉。
(两个模型的点数量与点的索引顺序应保持一致,否则出错)
2. 如果原模型(圆环面)C掉之后,它的切片动画就会失效。
但是,通过
修正修改器,在不C掉的状态下获得模型的点信息。
对修正修改器添加
点缓存标签(与修改器动画烘焙流程一致)。
给“容器“模型(圆环面2)添加
点缓存修改器,并将点缓存标签赋予点缓存修改器的对象属性-标签中。
3. 然后重复修改器动画烘焙的操作步骤即可。
删除点缓存标签、修正修改器后,模型可以正常动画。
晶格的动画烘焙
晶格是基于模型的点和线,创建实体模型的功能。对于此类动画烘焙的方法与修改器动画烘焙方法相似,只是晶格是父级。
1. 将要烘焙动画的晶格模型选择,右键-“当前状态转对象“,将此作为”容器“模型。
2. 将要烘焙的原晶格模型Alt+G打组。然后在组内创建一个
修正修改器来获取晶格的点位置信息。
3. 给修正修改器添加点缓存标签。点击存储状态,并设置好参数,再点击计算,即获得晶格点的位置信息。
勾选“压缩“可大大减少内存占用。
4. 参考修改器动画烘焙步骤即可。
克隆与修改器混合动画烘焙
建议从最内层到最外层的顺序烘焙动画,检查烘焙可能出现的错误。
具体操作可参考之前的流程。
==============================================
后面会涉及到在Three.js上实现3S材质和金属材质的问题。
也会总结下来,在这里做笔记分享。















































































