목록Houdini (52)
테드옹의 VFX
1. 본래 file cahce노드나 ROP geometry output노드가 들어가는 곳에 Null을 두고 적절한 이름을 정한다 2. 변경하고 싶은 파라미터 값을 바꾸고, 각각 hip파일을 저장한다. (웬만하면 상대경로는 $JOB으로) 3. out 컨텍스트에서 Geometry노드를 생성한다. SOP path는 1번 경로 Output path는 원하는 곳으로 설정하되, 상위폴더는 $HIPNAME 변수를 사용하여 overwrite를 방지한다 4. 메모장을 열어서 hython "C:\Program Files\Side Effects Software\Houdini 버전\bin\hrender.py" "hipname" -d 노드이름 -v -e -f 시작프레임 종료프레임 를 기입하고 .txt가 아닌 .bat확장자로 h..

만트라에는 렌더타임에서 fresnel 함수를 사용할 수 있지만 다른 렌더러에서는 그 기능이 있는지 모르겠고(내부적으로는 계산을 하겠지만 aov로 뽑을 수 있는지..), 일단 렌더타임에서는 수치를 미세하게 조절하기 힘들기 때문에 SOP에서 하는 방법을 발견 특히 외곽선 쇼크웨이브의 화면왜곡을 줄 때 좋을 것 같았다. 아이디어는 다음과 같음 1. 카메라의 위치벡터와 지오메트리의 위치벡터를 뺄셈하여 방향을 얻어냄 2. 그 방향을 기준으로 fresnel함수를 사용하여 외곽선에서 반사되는 빛의 세기를 구해낸다. 카메라의 위치벡터는 optransform함수로 행렬을 구하고 cracktranform함수를 사용하여 위치벡터를 골라낸다 지오메트리와 뺄셈한 벡터는 단위벡터화시켜서 방향벡터를 만들고, 단위벡터를 만들기 전 ..

파편들이 날아갈 때, 가끔 어떠한 파편들은 엄청난 속도의 나선형으로 날아간다 이렇게 빙빙 도는 모션은 파편 인스턴스에 각속도를 준다고 해결될 것이 아니기 때문에, 시뮬레이션된 파편의 path를 만들고 그 path를 빙빙도는 나선형 path를 생성하여 새로 애니메이션을 줘야한다. [생성할 때 사용할 아이디어] 1. 나선은 주기가 있기 때문에 대표적인 주기함수인 sin과 cos함수를 이용 2. Front view와 Side view에서 각각 -방향과 +방향으로 땡기면 3d뷰에서 나선이 만들어진다 이 때 사용할 방향은 [방향 벡터 생성] 1. 커브의 normal인 tangent벡터, up벡터를 외적하여 임의의 벡터를 만들고 (tangent벡터가 제일 중요) 2. 임의의 벡터와 탄젠트벡터를 다시 외적하여 새로운..
만트라에서도 가능하고 레드시프트에서도 가능하지만, 만트라 버전으로 작성 [INSTANCE GEOMETRY] 1. instance으로 쓸 geometry를 준비한다. pack되어있어야 하고, 위치는 {0,0,0} 2. blast노드의 Group을 `$F`로 정한다. (숫자에 패딩을 주는 $F4 혹은 %02d같은 수식은 사용하면 안됨) 3. File cahce노드로 0프레임부터 npoints("../surfacenode")-1까지 캐싱한다 (blast이전의 instance들) 이렇게하면 20개의 instance가 있다고 가정할시 0프레임부터 19프레임까지 각각 한 개의 인스턴스가 캐싱된다. 여기까지가 instance관련해서 할 작업 [SCATTER POINTS] point wrangle을 이용하여 다음 코드..