houdini 制作炫酷galaxy星云特效(商业教程)

——  微资讯 · 微课程  ——

利用零碎时间,走上超神之路!



说明:由于本教程是商业教程,仅分享学习笔记,供大家学习交流使用,切勿用于商业用途,公众号不方便分享视频内容,大家可以在网络自行查找;对于之前赞助过CG猎人的朋友,应该有部分收到过这套教程的,可以对着视频制作(还有其他的商业教程笔记会陆续公布)相信很多houdini学习者都做过这个案例,小编这次是第二遍做这个案例,还是收获不少;第一个门槛就是scatter撒点为什么不一样(然后就卡主了),这个小编觉得不是重点,且有多重解决方案;有些人坚持下来到后面的旋涡运动vop连接就懵逼了,即使按着步骤做完也不理解为什么要这样做,再做一遍都不记得了;这里小编做了一些自己的理解的笔记,希望对大家有所帮助,理解不当的地方请大家积极支持,小编感觉最难的部分就是vop中制作旋涡的过程,但是其实教程不算完整(不够好)小编自己加一些节点控制得更加精确和稳定,希望大家会喜欢。


学习笔记

制作内容 三大块

旋涡粒子

基于粒子发射流体

背景星空

第一部分:漩涡粒子制作(这个个人优化过,教程中粒子会慢慢扩散/收缩,不能保持一个圆形;CG猎人整合了其他方法)

grid撒点→ 使用粒子系统创建漩涡效果

这里很多人纠结的就是课程中的撒点会有渐变效果(中间多周围少):其实小编觉得没必要这么纠结,一方面粒子多了后面解算效果影响不大;如果真的要做到中间多四周少的话方法有很多

比如

方法1 把circle细分多一些,为了获得更多的点(或者直接现在上面撒点)然后pointvop中进行中心向四周的颜色渐变,再使用scatter中基于颜色撒点;

方法2,把circle只获得一个扇面,比如12度,然后copy旋转复制30份,然后再scatter撒点也可以实现这个效果;

方法3,直接暴力,在原来的圆基础上在中间新建一个小圆,scatter撒点,把两个scatter合并也可以;

......

好了,不纠结了,继续下面内容

删除部分粒子,使用pointvop节点,连接turbulence,设置颜色,修改turbulence类型和参数;在外部使用delete节点,依据颜色删除(这个比较基本了,在教程里面放在后面做,我提前了)

重点内容在下面

粒子系统中添加popvop 漩涡运动目标:01获得切向方向力02 中心旋转快,周围旋转慢(获得扭转效果)03粒子不会无限向外(需要创建向内部的力)04添加紊乱效果(速度差异) 05生成厚度(中间厚,四边薄)

01获得切线方向力 使用p位置矢量和自定义y轴矢量求得圆环的切向力

02 02 中心旋转快,周围旋转慢(获得扭转效果)

使用length和fitrangle获得中间到边缘的渐变过度(使用之前circle半径控制max);靠近内部的粒子速度快,外部的速度慢;最后与之前的切线方向相乘

03粒子不会无限向外(需要创建向内部的力)

力度的大小依据粒子由于旋转产生的偏移量乘以方向

获得方向,直接是p属性normalize,然后negate反向(这个不一定)

如何获得粒子偏移量?

定义了属性radius,用来保持最开始粒子的位置信息,然后不断迭代上一帧的粒子位置信息

bind节点定义了属性radius(名字没所谓)用来保存当前粒子距离中心的半径,默认值为0

这时候做条件判定,如果值不0,那么把当前P求得的半径赋值给radius,这时候radius获得了值

当前半径减去上一阵的半径值获得就是便宜量,最后乘会之前的方向(单位向量)获得需要便宜的值

最后add加上之前旋转的速度,完成。

04添加紊乱效果(速度差异)

这个非必须,但是加了会好看些

直接很简单,直接turbulence,连接p位置属性,输出模式为3D ,但是注意我们这里不需要y轴上的偏移,通过vector to float屏蔽掉y轴的值,并且add加上到速度速度上,并且可以在中间添加multiply乘法,添加一个倍增量;

类型为3D类型,提取其他参数到外部进行调整

05生成厚度(中间厚,四边薄)

由于之前使用了p位置来计算向内的力度,所以不能在popnet中控制,回到popnet外部添加pointvop节点进行y轴厚度控制

使用id控制random获得随机,然后fit设置最高和最低(使用一个constant控制,连接negate,刚好的是正负),同样只影响y轴,

设置bias控制凸起范围(中间凸四周平)这里同样用到length求取半径,fit适配到0-1,使用ramp控制

最后面使用mix把默认p和后面加了厚度的p混合起来,使用bias做偏移控制;

设置粒子渲染(略)

粒子大小+粒子颜色+粒子透明度alpha

主要是设置随机的pscale,rampcolor和alpha,这些可以直接在popvop中设置或者在解算完后使用pointvop设置

添加constant材质,灯光和mantra渲染器,可以设置透明度

后期合成(略)


第二部分 基于粒子发射流体

缓存粒子,新建geo,file加载粒子,删除部分的粒子(不需要那么多数量)

添加fluidsource节点,把粒子转化为流体

修改类型为 stamp points,基于点来采样流体

这里需要采样两个属性 density和velocity(默认是没有temperature的)

设置采样精度

division size需要和流体解算精度保持一致,等下创建完流体解算后与之关联起来

这里控制流体生成的厚度,距离和预制控制

在noise中可以激活use noise,激活紊乱效果控制

动力学设置

创建动力学网络,分别创建下面三个节点,连接起来;在sourcevolume中加载刚才创建的source

initialize初始化中选择source smoke获得smoke物体

volume path加载sop中路径

scale velocity修改为-1,反方向运动

velocity的方法修改为add

但是默认是没有temperature温度这个属性,在sop to dop binding标签下修改

把density mapping到temperature场中

smoke object中设置两个参数

一个是division size,需要和上面的fluid source中的division size关联,第二个是size流体解算框大小

核心流体解算设置

pyrosolver

buoyancy lift修改为0,因为我们不需要流体向上漂浮

关闭 combustion,不需要火解算

shape形态设置

dissipation消散度,0.9快速消散

disturbance 打破蘑菇头

turbulence内部扰乱场

turbulence标签中修改swirl size紊乱单元大小为0.5个单位,并且设置pulse length为5 紊乱长度为4(没那么碎)

开始解算,缓存到硬盘


第三部分 制作背景星河(略)

这部分最简单,新建个sphere,调整足够大做背景,撒点,通过vop进行紊乱颜色,删除部分,然后修改设置渲染参数

最后分成渲染合成

新建三个mantra摄像机,分别渲染中心粒子,流体云和背景星空

在object上面force和matte分别设置需要强制渲染的物体和作为遮罩的物体,渲染

合成 略(用houdini自带合成模块合成,不过感觉AE更加快,毕竟有各种滤镜可以增强效果)


—— CG猎人——

微信号:Hunter_CG

QQ-540710114

为您提供最具前景的咨询与最适合的分类技术与学习教程

(0)

相关推荐