Study/Houdini_Skill(14)
-
Length average
point를 이용해서 @Length를 구한다. vector pos0 = point(0, "P", 0); vector pos1 = point(0, "P", 1); f@length = length(pos0 - pos1); 사용 법 color node의 range의 값을 넣어보고 어느정도 length 가 생기면 흰색으로 포함이 되게 한다. 이 값을 이용해 if 문으로 constraint broken에 응용한다.
2019.05.24 -
rbd_bullet data
Colligion data 를 만들어 준다. subdivide 를 한뒤 poltfill vdbfrome polygons 을 생성 뒤 vdb to spheres 를 이용해서 몸 geo 전체 data를 sphere 로 바꿔준다. 단 캐릭터 T pose를 만들어 준것에다 생성을 해야 point deform을 할 때 잘 따라간다.
2019.05.24 -
cluster_cts
Name to point int pointnumber = nametopoint(1,s@name); v@Cd = point(1, "Cd", pointnumber); Cluster int pt0 = primpoint(0, @primnum, 0); int pt1 = primpoint(0, @primnum, 1); int seed0 = point(0, "seed", pt0); int seed1 = point(0, "seed", pt1); if (seed0 != seed1){ removeprim(0, @primnum, 1); } v@v = set(0,0,-50 * (rand(@Frame) + 0.25)); s@name = "newbox_" + itoa(npoints(1) + 1); i@active = 1; int..
2019.05.24 -
CST_setup
int pos0 = primitive(0, @primnum, 0); int pos1 = primitive(0, @primnum, 1); int seed0 = point(0, "seed", 0); int seed1 = point(0, "seed", 1); if (seed0 != seed1){ removeprimnum(0, @primnum, 1); } int pt0 = primpoint(0, @primnum, 0); int pt1 = primpoint(0, @primnum, 1); int seed0 = point(0, "seed", pt0); int seed1 = point(0, "seed", pt1); if(seed0 == seed1){ removeprim(0, @primnum, 1); }
2019.05.23 -
HDA_Compile_fracture(voronoifracture)
Compile_fracture(voronoifracture) compile node를 이용해서 hda를 구축해서 voronoifracture를 자동화 시킨다. string attriname = chs("attribname"); int digit = opdigits(attriname); int newdigit = digit + 1; s@newattribname = strip(attriname, itoa(digit)) + itoa(newdigit); int offset = detail(-1, "iteration", 0); addpointattrib(0, s@newattribname, 0); setpointattrib(0, s@newattribname, @ptnum, @ptnum + npoints(0) * o..
2019.05.22 -
POP_rotaion[vex]
Pop_Rotationpopnet에서 pop sim을 했을 때 자동으로 돌아가는 vex 구조 3가지의 pop_wrangle을 이용한다. pop scale 속성을 준다.12345678910111213float pscale; pscale = rand(@id);pscale = chramp("pscale_ramp",pscale);pscale = fit01(pscale, ch("min_scale"),ch("max_scale")); f@pscale = pscale; float vLength = length(@v); if(vLength > 0.1){ f@dis = @dis + vLength * @TimeInc; }Colored by Color Scriptercs 방향을 알려준다.12345678float vLength..
2019.01.02