【离奇】XPresso实现材质球动画
下班路上脑洞打开,给大分享一个C4D中,没什么用但是脑回路清奇的案例。这个案例是通过XPresso+python实现的
效果视频:
通过在场景中通过矩阵+衰减节点,获得每个矩阵点的权重信息。然后将权重信息传递给材质标签,控制材质标签的材质球引用。
文末有工程文件下载方式。
【准备工作】
(1)先在场景中创建一个矩阵,尺寸设置为10*10或者更高。
(2)在场景中添加10个空对象,并在空对象上添加10个材质标签(不是材质球)
(3)新建一个空对象,并添加XPresso标签。
(4)新建两个材质球,一个材质球颜色调为白色,另一个调为黑色。
(5)新建一个【动态文字】。并调整到与矩阵重叠的位置,备用。
【xpresso标签】
链接节点:
(1)还是老三样,矩阵和克隆就调用【运动图形】组中的【数据】节点,这个节点可以获得【运动图形】的所有点数据。
(2)按照套路链接遍历每个点并传递给python节点。(我这里把python改名为magicTex)
(3)添加【衰减】节点,这个节点基本可以模拟所有【域】动画。接入【矩阵】的对象接口和通过【数据】节点获得的位置信息。
点击【衰减】节点,在属性面板中,添加入创建好的【动态文字】,会提示导入模式。
选择点对象,并在属性面板靠下的位置选择【体积】。
并为【动态文本】设置关键帧动画(自行设计即可)。
【python节点】
添加python节点,将原来的两个输入端和一个输出端删除。依次添加输入端口:
(1)三个整数类型的端口,分别取名weight(代码中将使用名称作为变量,该接口用于接收【衰减】节点的权重数值)、a(用于搜索名称)、b(用于搜索第n个材质标签)
(2)两个联结类型的端口,分别取名tex1和tex2。用于关联材质球。将建好的黑色和白色材质球连接到这两个端口即可。
点击打开python节点,并在命令行中输入代码:
SearchObject()是按名称获取场景中的对象。
GetTags()是获得该物体的多有标签。
通过判断weight(权重)来赋予材质标签所引用的材质球。
以上就做好了全部的内容。
【可能的延展】
感兴趣可以添加更多的材质球(如果电脑能力允许),这样动画的像素会更加丰富。
更多颜色的色阶过度,或者在AE中制作好的黑白动效等等的。
【源文件下载】
关注【西技大神】微信公众号,并在后台回复“10001”即可获得下载链接。
原创不易,欢迎打赏鼓励。














































































