목록전체 글 (57)
테드옹의 VFX
아웃풋 총 6개 - Base Color - Normal - Roughness - Metallic - Ambient Occlusion(보통 게임엔진에서 사용함, 하지만 base color에 곱셈을 해서 사용할 수도 있음) *plane같이 평평한 오브젝트에서 작업을 할 땐 속임수로 쓸 수 있지만, 실제 굴곡이 있는 오브젝트에는 굳이 사용할 필요 없을 것 같다 - Height(=displacement map) [기본적인 워크플로우] 1. Large, Medium, Small디테일을 순서로 Height 맵을 만든다 2. Base Color를 만든다 2. Height맵과 Base color를 기반으로 AO, Normal, Roughness맵을 만든다 4. 다른 요소들을 추가한다 (Moss, Dirt, Water ..

[ Solver를 이용하여 infect, spread 어트리뷰트를 설정하기 ] 1. Scatter를 이용하여 포인트화 시키기 2. 원하는 시작점을 임의로 선택하여 split노드를 사용해서 구분 @group_spread = 1; wrangle의 종류에 따라서 point그룹이나 prim그룹을 "생성"하거나 편입시키는 라인 (!!!!!!!까먹지좀 마라!!!!!!!) 3. 두 개의 아웃풋을 merge하여 i@spread = 0; 라인을 통하여 변수를 생성 및 초기화 4. solver의 prev_frame노드를 인풋으로 하여 작업 if(inpointgroup(0, "srepad", @ptnum)) { i@spread = 1; int arr[] = pcfind(0, "P", @P, float radius, int ..
후디니에서 rigidbody 시뮬레이션을 할 때, 가장 신경써야하는 부분인 Constraints필기 constraints_type에는 all뿐만아니라 position과 rotation을 각각 설정할 수 있다 예를 들어, s@constraints_type = "all";을 설정하면 pos와 rot을 둘 다 제어하지고 position이나 rotation을 개별적으로 적용한다면 전자의 경우엔 position이 고정될 것이고 후자의 경우엔 rotation이 고정될 것이다 DOP내부의 spreadsheet에서 Relationships->ConstraintNetwork->Geomtery를 들어가면 확인이 가능하다 (이걸 2년째 몰랐음) [종류] Hard Constraints - Pin (길이 고정) - Spring..

max points의 숫자와 거리에 따른 가중치를 필터링해서 값을 가져올 땐 pcfilter함수를 쓰고 거리가 가까울 수록 그 포인트가 가지고 있는 값의 가중치가 늘어남 w_i = 1-smooth(0, maxd * 1.1, d_i) //maxd는 가장 먼 거리의 포인트, w_i는 가중치 단일 점의 값을 가져올 땐 pcimport함수를 쓴다 아래는 SideFX에서 제시해준 pcfilter함수의 코드 float pcfilter (int handle; string channel) { //channel은 가져올 어트리뷰트의 이름 float sum, w, d; float value, result = 0; while ( pciterate(handle) ) { pcimport(handle, "point.distanc..