1-4期
195人加入学习
(33人评价)
Houdini 影视特效实验班

6个月零基础到入职

价格 ¥ 6198.00
教学计划
承诺服务

copytopoint

attribvop(可视化节点),双击进入

random:ptnum-random

random修改一下signature:1D-4D Out

bind export(Type类型为:4 Floats(vector))

Name:orient

add 中间点击 input2 :promote parameter,出现一个小色块后,双击进入:

seed

Label:Seed for Orient

按一下U键,返回上一层级:

set_orient_attrib中多出了seed orient

copytopoints-Pack and Instance

[展开全文]

null 空节点

facet 法线

勾选计算法线: Post-Compute Normals

attribwrangle1:

@N = set (1,0,0);

cross需要的是规格化的值(0-1):

v@up = cross(v@N,{1,0,0});

如果超出规格化的值,需要mormalize:

v@up = cross(mormalize(v@N),{1,0,0});

vector pos_a =point(0,“p”,45);

vector pos_b =point(0,“p”,46);

f@my_dist = distance(pos_a,pos_b);

 addvariablename(0,"my_dist","MY_DIST");

勾选:Stamp Inputs

Variable 1 :my_dist  Value 1:$MY_DIST

在box 的size参数里,X使用stamp函数:

stamp("../copy2","my_dist",1)

Copy Parameter,到Y:

paste relative references

修改box整体大小:

右上角设置:

edit parameter interface:

1、float-箭头发送到界面,拉到最顶部,修改右侧名称:adjust,Lable:Adjust Scale,在range中,将0-10修改为0-1,并且锁定两端。最下端点击Accept。

2、为了让这个表达式起作用,修改size表达式:stamp("../copy2","my_dist",1)修改为:stamp("../copy2","my_dist",1)*ch("adjust")

3、拷贝Z(Copy Parameter)到center的Z(paste relative references):

ch("sizez")/2

4、bound是起到边界调整的作用;

5、i@id = @ptnum;

6、attribute stamp:id回车后,进入bound:

upper padding-Z:

rand(stamp("../copy2","id"1)*51235)*sin($

 

[展开全文]

stamp(“../copy1/”,"mycy",1)+1

使第一个方块X轴大小不为0

fit(stamp(“../copy1/”,"mycy",1),0,stamp(“../copy1/”,"myncy",1)-1,0,1)

$CY 获得当前生成拷贝的编号

NCY 返回节点生成的总量

rand(stamp(“../copy1/”,"mycy",1)*32123)

[展开全文]

int pcount=npoints(0);

if(@ptnum==pcount-2){
    vector last_pos=point(0,"P",pcount-1);
    @P.x=last_pos.x;
    @P.z=last_pos.z;
}else if(@ptnum==1){
    vector first_pos=point(0,"P",0);
    @P.x=first_pos.x;
    @P.z=first_pos.z;
}

要会读!要会读!

[展开全文]

1.shift加C:打包子网络。

2.unpack:解包,为下面转换面用

[展开全文]

1.assemble打包,保持内存高效。

2.在blast节点中随机抽选表达式:@id=`floor(rand(detail("../iter/", "iteration", 0)) * npoints(0))`

floor把小括号里的浮点表达式取整。

id是先用enumerrate设置好。}

3.attribrandomize属性随机化

4.centroid(0,0)

5.matchsize匹配(非常好用)

[展开全文]

1.voronoifracture 破碎节点

2.isooffset体积偏移,(名字.......)

3.attribtransfer属性转移

4.cluster:簇 :这个例子用簇是用来选区域

[展开全文]

1.pscale 统一规格化的属性,浮点

2.bbox表达式写法bbox(<surface_node>, <type>)

3.vector min;
vector max;

getbbox(0,min,max);
float ramp=fit(@P.x,min.x,max.x,0,1);
//@Cd=set(ramp,0,0);

float width=chf("width");

if(ramp>width && ramp<1-width){
    removepoint(0,@ptnum);
}

  && mean and   || mean or

[展开全文]

1.enumerate枚举

2.detail表达式写法detail(<surface_node>, <attrib_name>, <attrib_index>)

3.point表达式写法point(<surface_node>, <point_number>, <attribute>, <index>)

4.Compiled_Block:编辑方块(把每个物体都变成一个点一个面)

 

[展开全文]

1.voronoifracture 分割块节点(效果小石块什么的)

2.attribvop常用好用节点(配合noise)

3.$CEX,$CEY,$CEZ一个建模的至心。

[展开全文]

1.attribpromote:属性点转换面

2.for loop:迭代, 是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。

其结果是一个数。(不要多想,多想废脑细胞。)

3.intersectionanalysis交叉分析(这是字面理解)

4.npoint写法 npoints(<surface_node>)

iteration: 迭代

5.detail写法detail(<surface_node>, <attrib_name>, <attrib_index>)

 

[展开全文]

1.vector cross (vector, vector)
 

两个矢量的差集构成的矢量,这个新的差集矢量是与组成差集矢量构成的平面是垂直的。

2.vector pos_a=point(0,"p",45);
  vector pos_b=point(0,"p",46);

  f@my_dist=distance(pos_a,pos_b);

vector pos_a意思是使其带有矢量的点

f是浮点,带有小数点的数;例如 f@my_dist就是使其带有小数点的数。

addvariablename(0,"my_dist","MY_DIST")添加变量名称{设置变量名称(变量名称相当于CY或者NCY)}

3.表达式rand:把当前范围转换成随机的一个从0到1的一个随机值

[展开全文]

1.testport 查看表达式什么的

例如:exhelp stamp

会出现一堆stamp表达式的用法

-k...    查看所有关于...的表达式

2.新的名词((CY NCY)    (mycy  myncy))

CY编号

NCY总量

 

 

3.copy节点 1.copy stamp

1.stamp  

stamp(“../copy1”,“mycy”,1)

stamp(“../copy1”,“myncy”,1)

  • 看不明白重看

编号是1就是0+1这么长,编号是2就是1+1这么长

stamp(“../copy1”,“mycy”,1)

 

[展开全文]

授课教师

讲师

课程特色

视频(292)
下载资料(29)