【houdini】CG猎人第015期houdini完全基础入门学习-vop基础I

——  微资讯 · 微课程  ——

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


课程导读

今天给大家带来vop的基础入门第一部分,都是以简单实用的小案例介绍vop中常用的节点和功能,非常实用。基本上掌握这个课程的内容对vop的了掌握也完成差不多了。这是是第一部分学习笔记,后续会推出第二部分,敬请关注。

课程目录

01介绍

02解释

03random随机

04noise紊乱

05displacement置换

06Lookat 注视

07cross product

08法线旋转

09ramps渐变

010Dot product

学习笔记

01介绍

第一部分案例效果如下

方量偏移VS随机紊乱

朝向控制

旋转轴控制

ramp的颜色和置换应用

雪地变化场景

02解释

vop中的基本介绍

内部输入和输出节点,包含了常用的属性,还可以使用bind导入特定属性和使用bind export导出特定属性。

使用attributevop 让grid的点基于点序号进行上下偏移制作

两个要点

第一 加减乘除等计算方式结果的数据是类型是基于第一个输入的数据类型决定

第二个 最好是两个相同的数据类型进行计算,可以使用转化节点进行人工转化(houdini自己转化经常可能结果不是我们想要的,比如float to vector我们就要明确知道浮点是控制vector的哪个的通道,houdini默认转化是连接到x通道)。

03random随机

random就是对于输入一个数值(种子)输出一个0-1范围的值,只要种子值是确定,那么输出的结果也是确定的(所以说random不是真正的随机)

一般输出0-1的范围之后我们可以进行倍增叠加,或者fitrange适配范围,也可以使用ramp控制。而如果修改随机的值,那么可以add一个值到random的输入或者是直接基于Time时间随随机变化。

04noise紊乱

noise和random的区别,noise是有规律的,也就是连雪的波动,而random是不连续的。

noise一般用于控制颜色,置换强度等有一定的pattern的效果。不同noise会有不同的取值范围和pattern值。

常用的noise的控制参数

noise  type紊乱的类型

frequency频率

offset偏移

Amplitude 强度

rougness 细节度

attenuation衰减值

对于一般noise,如果控制offset偏移生成动画都会明显的向某个方向(xyz)运动的感觉,所以使用anti alias flow noise,选择输入的vector4的值,对第四个元素进行动画控制可以避免这种情况。

属性p→vector to vector4转化→ anti-alias-noise控制选择 4D input 1Doutput

05displacement置换

两个知识点

rest属性用于记录静态物体的时候的p的属性,用这个属性控制turbulence可以避免物体运动时候置换滑动。通过rest节点生成rest属性。

基于法线进行置换,首先需要获得法线。然后在vop中可以使用displace along normal节点或者通过normal控制方向,置换控制强度进行乘积也可以。

直接使用normal计算的方法

06Lookat 注视

原理就是拷贝物体是沿着法线方向进行拷贝,只要控制法线方向就可以控制物体的朝向。

基本的设置

torus设置默认法线N和up向上的方方向

在pointvop中使用目标点(一个点,序号为0)的位置进去torus位置P,然后normalize获得法线方向的位置,那么拷贝物体就会沿着反向进行旋转,指向目标物体。

07cross product

cross product的含义就是输入两个矢量a和b,可以计算出第三个矢量,并且这个第三个矢量C是垂直于ab构成平面。

08法线旋转

需要求出旋转的轴向,然后给予这个轴向进行选择,使用了matrix

第一步,生成旋转轴

基于自定义向上的up方向和目前法线方向通过crossproduct求得切线方向也就是旋转转轴。

第二步,使用orient进行法线旋转,我们需要一个matrix4的旋转量

第三步 通过quternion节点把选择角度和旋转轴转化为quternion值(注意角度和弧度切换)→转化为matrix3→转化为mantrix4

09ramps渐变

ramp有两种类型 RGB 颜色是vector类型和spline样条线是float浮点类型,输入的值需要是0-1范围的值,超过这个值直接忽略。添加了ramp会自动在vop节点外部添加颜色渐变/曲线控制。

如果场景中添加2个以上的ramp,记得ramp的参数名字要修改为唯一名字。

制作原理 obj创建null空物体,回去translate位置的值

在grid后天添加pointvop,通过distance计算出null物体位置与每个点的位置,fit进行适配,如果grid的大小为10,那么基本上范围设置5,添加ramp控制颜色和添加ramp控制y轴。可以multiply添加乘积进行进倍增计算。

叠加上上节课学习的anti alias noise节点,进行紊乱设置

010Dot product

dot product就是两个矢量的夹角值 从-1-0-1的范围,如果两个矢量方向相同值为1,垂直,值为0,相反为-1。

计算法线,设定向上的矢量,两个矢量dot计算可以获得-1-1的值,fitrange进行范围设定,输出给ramp控制,进行颜色混合设置。

获得教程的方法:

(0)

相关推荐