xtp粒子沿路径发射颜色控制不了发射区域是什么原因?


基本上算是正式复工了,还是蛮忙的,终于有点时间把文章写完。
事情是这样的,我在B站看到了一个国外大神的教程:
大家都知道这个螺旋线条的效果可以用XP4.0来做,我没有XP4.0,之前也没有做出这个效果,所以一直耿耿于怀,相关文章可以查看:
原作者做个这效果没有用XP,而是直接用R21以及TP粒子做的,这让没用过R21且不会TP粒子的我看得一脸懵逼。
但是一想到国外有很多教程都用过TP粒子,并且之前有下载过一个C4D工程也是用TP粒子做出螺旋效果的,于是我在B站上先看了一些Xpresso相关的基础内容:
然后又看了一些TP粒子的内容,没有看完,只了解了一个大概:
同时又在网上找来了一个关于TP粒子的中文帮助文档辅助学习,文后我也会分享给大家,有兴趣的童鞋可以获取:
这些好像都是大家很少去学的功能,看了以后感觉自己奇怪的知识又增加了:
心想着虽然只学了个大概,应该通过工程文件也能分析出之前那个螺旋效果是如何制作的,结果找到之前的工程以后打开一看才发现自己很傻很天真:
是的,原工程是用Python结合TP粒子做的!不会代码的我彻底放弃这个螺旋效果了。
不过结合自己东拼西凑的知识总算也用TP粒子做出了一个线条的效果,个人觉得比之前用Particular4.1做出来的效果要好看一些,并且也是一个新的思路。
算是没有XP4.0用户最后的挣扎吧,来吧,今天我们就用TP粒子制作一个粒子线条流淌的效果吧!
由于许多童鞋都没有接触过TP粒子和Xpresso,并且这两个知识点其实系统是很强大的,一篇文章没有办法介绍完,所以开始之前我想先说明一下制作的思路:
1、首先运动图形中的矩阵对象是可以生成TP粒子的,这就意味着,我们可以通过运动图形中的各种效果器去定义粒子运动的方向。
2、但是光靠矩阵生成的TP粒子没有办法直接让粒子沿着效果器定义的方向发射出来,这也可能是我自己还没学透,没有找到方法。
3、所以我这里选择的是创建两个粒子群组,A群组定义粒子的方向,B群组定义速度,然后再让B群组去获取A群组粒子的方向从而达到我们想要的效果。
基本就是这个思路,后面的我们边做边解释吧。
新建一个平面,尺寸我这里设置的是2000*2000,分段数稍微多一点:
给平面添加置换变形器,着色器里添加噪波,置换强度大一些:
然后着色器里提高全局缩放的参数,做出这种起伏的感觉:
因为后面我们要用平面发射粒子,TP粒子中的对象都需要是可编辑对象,所以选中对象鼠标右键当前状态转对象:
接下来新建矩阵,模式为对象,以平面作为对象生成矩阵,勾选排列克隆,分布为表面,数量可以多一点:
隐藏掉平面,可以在变换面板修改一下缩放的数值,这样是为了便于观察:
给矩阵添加着色效果器,着色器面板添加噪波,当然这里你也可以尝试选择其他的贴图例如渐变等,不同的贴图效果不一样:
我这里选择的是稀疏回旋,全局缩放大一点:
让着色效果器改变Z轴上的旋转,这样就能看到粒子将要运动的方向了,我这里旋转的是720度:
效果器设置好以后我们就可以进行TP粒子的设置了,在模拟-TP粒子里找到TP粒子设置:
TP粒子设置里,鼠标右键添加两个粒子群组,更改颜色方便观察,重命名一个用于定义方向,一个用于发射粒子:
回到矩阵对象,将生成改为TP粒子,然后将方向粒子群组拖到TP粒子群组栏位,粒子优先权选择为在效果器之后:
新建一个空物体,鼠标右键添加Xpresso标签:
节点编辑器里,新建一个粒子事件波动节点,这个节点大家简单理解为XP粒子中的以对象发射粒子就好。
把平面拖到节点的对象栏位,发射数量多一点,拖入TP粒子的对象都要是可编辑对象才行哦:
在粒子标准项里新建一个粒子群组节点,把名称为粒子这个群组拖到粒子群组节点里,并把两个节点连接起来,代表着粒子事件发射出来的全是名称为粒子的这个群组。
需要注意的是在粒子辅助项里也有一个粒子群组节点,这个粒子群组节点是配合粒子数据设置节点使用的,以后我们有机会再分享:
粒子事件本身发射出来的粒子就是有速度的,我尝试过在这个默认速度的基础上直接去获取方向粒子群组的方向,并不能达到想要的效果。
看来需要将速度和方向单独分开来定义,在粒子创建体里新建一个粒子传递节点,将名称为粒子的群组拖进来,再在粒子动态项里新建一个粒子速率节点,将它们连接上。
粒子速率节点只改变速度,速度我这里设置为200就好,类型为取代,代表这里的速度会覆盖粒子事件本身的速度。
另外提醒一点,当我们要用到粒子动态项里的节点的时候,通常会使用粒子传递节点与其连接才会有效果:
接下来就是很重要的操作了,在粒子创建体里新建粒子传递AB节点,然后把方向和粒子这两个群组分别拖进来,距离类型为内部。
那么根据距离,他们的某项参数就会越来越接近,至于这个距离是多少我们后面看着效果来调整:
粒子辅助体里新建一个粒子获取数据节点,让它获取方向粒子群组的数据,并且添加一个对齐端口:
在Xpresso的适配里找到矩阵到矢量节点,将粒子获取数据中的对齐端口连接给矩阵到矢量节点。
矩阵到矢量节点相当于是把一个对象在空间中的信息分解成了偏移(XYZ轴的位移)、V1(X轴的旋转)、V2(Y轴的旋转)以及V3(Z轴的旋转):
这个时候我们需要再次新建一个粒子速率节点,将改变改为方向:
同时再添加一个方向端口:
把V1或者V2的端口连接到方向端口,将粒子速率中的粒子端口连接到粒子传递AB中粒子群组的端口,代表着获取方向粒子群组的X或Y轴的旋转数据给粒子选组:
为了方便观察效果,这个时候我们就可以添加追踪对象,追踪粒子这个群组,将样条类型改为B样条,点差值方式为自然:
这个时候其实粒子群组的运动就会获取方向群组的数据进行运动了,但是你可能会看到效果并不是很好,例如粒子会往Y方向跑:
这是由于粒子传递AB中的距离太小了,这个参数需要大家多尝试一下,我这里尝试的结果是95就比较合适了:
同时你可能会看到线段不够圆滑,这里只需要将控制方向的这个粒子速率节点类型改为附加,并且勾选每秒,就好了:
做到这里基本大效果就有了雏形了,细心的童鞋可能会有一个疑问,为什么着色效果器里控制旋转的轴向是Z轴,而我们却要获取X轴或Y轴的数据来控制粒子的运动方向呢?
这里我觉得只有用数据来解释会更加直观一点,我随便新建一个立方体C掉,然后拖进节点编辑器,并且添加一个全局矩阵端口:
然后在常规里添加一个结果节点:
将结果的类型改为矩阵,然后将他们连接上:
当我去更改立方体Z轴旋转的数值的时候,我们可以看到结果中只有X轴和Y轴的数值才会发生变化,Z轴并没有变化。
其他几个轴向的旋转大家有兴趣也可以去尝试一下,这里主要想到可能会有童鞋会问到,所以顺便提一下。
其中的道理大家其实不用深究,我也不是特别清楚,实际操作中,其实我们只需要连接节点试一下就知道哪一个轴向上有效果了:
继续今天的内容吧,大体雏形出来了,但是大家会看到粒子会跑到平面外边去,如果我们只想要它在平面里面运动该怎么办呢?
其实也不难,我们只需要让粒子在XYZ轴的位置大于平面时死亡就可以了。
再次添加粒子传递以及粒子获取数据节点,同样粒子传递里拖入粒子群组,粒子获取数据这一次我们添加一个位置端口,用来获取粒子群组的位置:
然后在适配里找到矢量到实数这个节点,把XYZ轴的位置数据分别读取出来:
在逻辑里添加一个比较节点,X连接输入1,功能改为大于,因为我们平面的尺寸是2000*2000,这个是从坐标原点算起的,所以这里我们将数值改为1000:
再复制一个比较节点,X连接输入1,功能改为小于,数值改为-1000:
然后在计算里,用一个数学节点把这两个大于1000和小于1000的结果加起来:
再在粒子标准项里添加一个粒子死亡节点,并且粒子死亡节点里添加一个开启端口:
然后将数学加输出端口连接到粒子死亡开启端口,并且将粒子死亡的粒子端口连接到粒子传递,这样X轴在位置大于1000小于-1000的粒子就会死亡:
其他两个轴向也是同样的道理,我这里就不赘述了,至此粒子线条流淌的效果就已经做完了:
剩下的就是给场景添加一些小元素,以及上材质等了,这里我借鉴了虎课的一个用XP4.0制作的案例构思。
首先我打算做一个150帧的动画,在第150帧的时候,选中追踪对象,鼠标右键当前状态转对象:
新建克隆对象,克隆一个小球体,克隆模式为对象,以追踪对象样条为对象进行克隆。
取消每段的勾选,数量我这里设置为200个,并且率和比率变化都给一定的数值,这样小球会在样条上进行随机的运动。
为了方便观察小球的运动状态,可以先暂时隐藏掉追踪粒子的追踪对象:
中间再新建一个球体这一步不用说吧:
接下来就是上材质渲染了,我这里还是用的OC,新建一个HDRI环境光,添加HDRI贴图,给追踪对象添加OC对象标签,勾选渲染毛发,调整粗细这些都不用说吧:
材质方面线条就是一个普通的偏蓝色的发光材质:
中间的大球是一个普通的蓝色透明玻璃材质:
克隆小球的材质就是一个更弱一点的发光材质:
接下来就是做摄像机动画了,为了播放不那么卡,我们可以先暂时将粒子事件波动中的粒子数量减少:
摄像机动画方面大家看着弄就好了,我这里是用摄像机本身的位置属性来控制摄像机的远近以及平移。
然后用一个空物体作为摄像机的父级来控制旋转,同时大球做了一个从上往下落的平移动画:
克隆小球的半径我也K了一个关键帧,让第0帧的时候没有小球,第10帧的时候逐渐变成1:
基本上就可以渲染出图了,这里可以不用渲染Alpha通道,我的建议还是分层渲染出来,由于场景中没有漫射,所以我这里只勾选了折射、反射以及粒子通道:
老实说,这个图我重复渲染了很多次,因为过程中总是有很多不满意的地方,例如线不够圆滑,摄像机角度不好等。
因此文章中所说的各个知识点,都是多次渲染失败后总结出来的,还好这个效果渲染的时间并不是很长:
AE里的操作就简单了,序列图层放到最下层,其他分层图层放在上面,混合模式为屏幕:
新建一个调整图层,添加发光特效:
再添加一个锐化以及曲线,这个也不用说了吧:
最后码字排版看看静图和动图的效果吧:
静图
动图
动图的尺寸压缩的很厉害
今天的篇幅也比较长,考虑到很多童鞋没有接触过TP粒子和Xpresso,所以写的比较详细,但可能还是会需要一些时间来消化理解。
唉,写的好累,好啦,今天的分享就到这里,想要TP粒子中文帮助文档、源文件以及原视频的童鞋后台撩我获取吧!
更多内容欢迎关注公众号:
公众号:野鹿志
老鹿微信:maluyelang6661
苦七微信:766057766
本文由“野鹿志”发布
转载前请联系马鹿野郎
私转必究返回搜狐,查看更多
责任编辑:}

今天分享内容的视频版如下,视频已添加进度条,大家可以根据自己的需求拖动到想要观看的部分,想要原视频以及源文件的鹿友后台撩我获取:
以下是图文版内容:
正文共: 3696字 76图
预计阅读时间: 10分钟
最近更文的效率好低,不是因为这样那样的事情耽搁就是因为尝试过程中遇到这样那样的问题导致重新来过。前段时间群里发了一个效果:
效果看起来有点恶心,我剪切了一小段压缩成动图大家看看哈:
原图作者Bisous,入侵请联删
动图压缩的比较厉害哈,原作品的细节会更多,原作者Bisous好像是一个工作室。
本来是想试着还原一下这个效果,但是尝试之后做出来差别还是很大。
于是又专门去网上搜了一下原作者的介绍,好像还比较麻烦,TFD, XP, KK, RF都用上了,然后是用的OC渲染:
这下我确实不知道是怎么弄的了,感觉也不像是烟雾驱动粒子做出来的效果。
没办法,就只有把我自己想像中的制作方法写出来了, 模拟部分我是用的XP的CPU模拟,然后渲染部分我也是凭感觉用Redshift渲染的。
01
X-Particles模拟粒子部分
打开C4D,新建一个圆柱体,适当的调整半径高度以及分段:
新建发射器,以圆柱体作为对象发射粒子:
发射模式改为六边形,只发射1帧粒子,将粒子的速度改为0,然后半径暂时保持默认:
现在粒子在第0帧的时候是没有的,我希望粒子在第0帧就有粒子,所以可以模式从传统模拟改为模拟,这样粒子第0帧也有粒子了:
添加重力,这个不用多说哈:
给圆柱体添加XP碰撞标签,碰撞模式改为内部,关掉反弹,摩擦力改到最大:
现在粒子没有流体的状态,所以添加流体动力学,经过测试好像PBD会稍微好点。
使用FluidFX后面粒子碰撞跳动会很严重,然后我这里把粘度和吸引力都关掉了,目的是为了让粒子不聚拢在一起,否则后面网格化可能会产生孔洞:
给场景中添加湍流场适当的增加强度,工程总时长我们渲染300帧哈:
接下来要给粒子做出忽大忽小的感觉,所以给场景中添加尺寸修改器。
半径修改稍微增加一点,然后最大半径我限制在15,场景中的所有粒子很快就会增加到15后停止增长:
衰减里面我们添加着色器域,着色器里添加噪波:
噪波里可以给一点动画速率,循环周期我们也可以适当的给一点,不过现在粒子的效果好像没有什么变化:
回到尺寸修改器里,我们勾选重映射衰减数值,就可以看到粒子的大小跟随着噪波贴图的动画在变化了:
着色器域里的重映射轮廓模式我们改为曲线,我感觉这样效果会好一些:
但是现在感觉粒子之间的间隙比较大,网格化肯定会出问题,并且也有很多粒子漏下来,我们可以这么操作一下,给粒子发射器添加两个组:
然后让尺寸修改器只影响其中一个组,我觉得这是我想要的效果:
在粒子的下方放一个杀死修改器,搞掉漏出来的粒子就好了:
最后我们可以把粒子半径改小,相当于是增加粒子数量大概看一下整体的效果:
不过现在我们相当于只做了泡泡周围突起的部分,泡泡本身还没有制作。
接下来是制作忽大忽小的泡泡部分了,这里我们要用一个之前没有用过的工具xpCirclePacker:
点击创建发射器以后发射粒子,以后可以看到它能在发射器里发射出大小不一并且互不相交的粒子:
所以我们可以把发射器改为圆环发射,发射器的半径比圆柱体的半径稍微小一点,然后发射的数量稍微少一点,给一点随机值:
xpCirclePacker我们把最大最小半径改大一点,这样大球就出来了:
比例缩放里我们把尺寸增加和减小都激活,就可以看到粒子忽大忽小了,但是你会发现粒子过了一段时间就没有了:
我们把发射器的HUD打开可以看到,粒子虽然半径减小到0了,但实际粒子在场景中还是存在的。
而xpCirclePacker由于要在发射器范围内发射大小不同且不相交的粒子,就只有发射这么多个粒子才行:
因此我们可以激活杀死半径为0的粒子,这样粒子就会持续发射出来了,变大变小的时间我们可以快一点,再给一点随机值:
这里我希望的是和原图一样,一开始是没有泡泡的,然后逐渐出现最后逐渐消失。
所以这个泡泡的发射器我们让它从10帧开始发射,然后在270帧的时候停止发射:
同时我们让xpCirclePacker的最大最小半径在大概285帧开始逐渐消失,这些K帧的地方我是事先尝试出来的哈:
同样另外一个发射器的话我们通过尺寸修改器来控制,让一开始的时候没有变化,在第10帧开始修改器发生变化:
需要注意的是想让粒子像原图一样最后又恢复到圆盘,只是通过控制尺寸修改器是不行的。
一方面即使我们对尺寸修改器的变化K关键帧也会发现最后有一些粒子尺寸不能回到初始状态,并且场景里添加了动力学,粒子到最后的位置也不对:
所以我们想要粒子最后恢复成圆盘要另外想办法,这个问题我们先留下。
把两个发射器同时打开播放观察一下,会发现有些粒子由于碰撞的关系飞起来了:
所以再给场景中添加动力学约束,激活摩擦力,这样就会降低粒子碰撞飞起的情况:
差点忘记了湍流场也要K一下关键帧,让它在第10帧开始才起作用:
然后我这里给场景添加了xp的泡沫,让泡沫从第10帧才开始产生,泡沫的生命持续50帧就好。
然后通过最大最小速度来控制泡沫的数量,这个参数大家多多尝试吧。
现在泡沫在圆盘周围一圈也产生了,这不是我们想要的:
所以将圆柱体复制一份,半径缩小一点,然后再新建一个杀死场,让超出圆柱体范围以外的粒子被杀死。
但是这里不要忘记给泡沫发射器添加一个组,让这个新的杀死场仅仅影响泡沫这个组:
然后泡沫的生成率上K下关键帧,让泡沫从250帧开始生成率逐渐减少:
最后我给整个场景添加了颜色修改器,将Y轴上的高度映射成黑白渐变,方便后期用渲染器重新定义,高度大家可以用一个平面测量一下就好:
给第一个发射器设置一下初始状态:
不要忘记泡沫要排除一下颜色修改器:
另外由于我计划是用农场或者苦七的电脑来渲染,两者都没有安装xp,网格化的粒子还好处理。
泡沫粒子我们需要额外的导出ABC文件才行,所以在泡沫的发射器里激活TP粒子,把缓存忽略粒子速度这些都勾选上。
然后在模拟TP粒子里,把粒子组拖到XP的发射器栏位:
再新建一个TP粒子几何体,把粒子组也拖进去:
基本这样就可以进行缓存了,缓存时间20多分钟:
03
粒子网格化
缓存完毕之后我们先将整个场景都导出为abc格式:
然后再在场景中合并这个abc文件,删除多余的内容,可以看到我们的泡沫粒子已经转为abc文件了:
接下来新建xpOpenVDBMesher,把除了泡沫以外的发射器都拖进来,并且把圆柱体也拖进去,体素尺寸和点半径都改为1:
这里我让被尺寸修改器控制的发射器一开始的点半径很小,然后逐渐变大,最后再逐渐变小,这样就可以让网格从圆盘开始形变最后恢复到圆盘的样子了:
过滤里面再选一个滤镜平滑一下,基本上就是一个标准的圆盘了:
标签里面激活顶点速度和顶点颜色,顶点速度用于后期合成运动模糊,而顶点颜色用于渲染:
网格的话我们就直接右键烘焙为abc格式就好,不过abc文件挺大的:
最后我觉得泡泡太圆了点,所以添加了一个挤压伸展的效果器,把泡泡压扁一点:
03
Redshift渲染部分
终于到了渲染部分了,设置渲染尺寸以及色彩空间这个不用多说了哈:
新建摄像机和HDRI环境光,这个也不用多说哈:
给烘焙为ABC文件的TP粒子几何体添加RS对象标签,模式选择为优化球体,大小大家看着效果调整,材质的话就是普通的白色材质:
新建大大的地面当作背景,材质也是普通的漫射材质这个不用多说哈:
接下来是主体的材质这里详细说一下,我希望的是圆盘的边缘和正面是两种不同的颜色,所以首先用一个曲率节点把边缘的选区提取出来:
接下来再用一个渐变节点来提高选区的对比度:
用顶点属性节点把顶点颜色的选区也读取出来:
用一个颜色合成节点将两个选区相加:
用一个渐变节点对选区的颜色进行重映射:
再用一个黑白的渐变节点增加了噪波用于当作粗糙度贴图:
主体材质是一个sss材质,颜色链接给散射颜色,黑白渐变链接给粗糙度,这个大家应该能看明白吧:
另外再新建一个水的材质,把颜色和黑边渐变分别连接到它的折射颜色以及强度上:
最后再用一个混合材质将两个材质混合,混合的蒙板用的是颜色合成以后的选区:
试情况补几盏灯吧:
给主对象也添加RS对象标签激活运动模糊,然后把顶点速度贴图都分别拖进去:
渲染设置里最大最小采样是16/128,其他本地采样都是512:
不要忘记渲染设置里也把运动模糊和变体模糊打开:
我这里实际用了三个摄像机,然后用舞台把它们串联了起来,并且也设置了景深,因为时间关系这里就不赘述了:
多通道里把深度通道和运动矢量通道也加了进去,用于后期合成运动模糊和景深:
渲染最后我先是用的苦七的2070渲染的,渲染时长17小时36分钟:
但由于我自己用的是Redshift3.0.67,而苦七的电脑上只有Redshift2.6.41,可能是算法不一样,同样的帧渲染出来效果差异很大:
Redshift3.0.67
Redshift2.6.41
由于时间关系,并且都停更了很久了,所以就没有再重新用Redshift2.6.41重新调整。
最后是直接扔到农场里用农场的3.0.67重新渲染的,农场用的显卡是Tesla T4,渲染总时长33小时44分钟,比苦七的2070慢的多,费用是165:
最后后期调色加点景深看看效果吧:
虽然没有做出原图的感觉,不过个人觉得近景的时候还挺好看的,哈哈。
以上就是今天的内容,更文不易,希望鹿友们三连支持,我们下次再见吧!
更多内容欢迎关注公众号:
本文由“野鹿志”发布
转载前请联系马鹿野郎返回搜狐,查看更多
责任编辑:}

我要回帖

更多关于 手机rgb色彩模式怎么调 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信