Houdini Copernicus Ultimate Guide 튜토리얼 정리 · 7편
SDF와 거리장
SDF Shape 생성, SDF Shape Blend 조합, SDF Adjust, Mono/RGB 변환·역변환, ID to SDF, Eikonal까지 COP 도형 생성·조합·마스크 제작의 핵심인 거리장 계열 노드 전체를 다룸.
[SOURCE] SideFX · The Ultimate Copernicus Guide | Every COP Node Explained
카테고리 houdini
SDF(Signed Distance Field)는 각 픽셀이 도형 표면까지의 부호 있는 거리를 담는 표현 방식으로, COP에서 도형 생성·조합·마스크 제작의 핵심 도구임. 이 장에서는 SDF 생성(SDF Shape), 조합(SDF Shape Blend), 조정(SDF Adjust), 이미지 변환(SDF to Mono / SDF to RGB), 역변환(Mono to SDF / SDF Rebuild / ID to SDF), 그리고 임의 경계로부터 거리장을 푸는 Eikonal까지 거리장 계열 전체를 다룸. SDF로 만든 도형은 Stamp Points의 커스텀 스탬프, Tile Pattern의 stamp 입력, Bokeh의 aperture 모양 등 다른 노드의 재료로도 광범위하게 쓰임.
이 문서는 SideFX 공식 튜토리얼 The Ultimate Copernicus Guide | Every COP Node Explained를 학습하며 정리한 기록임 — 오리지널 창작물이 아니라 원본 강의 내용을 주제별로 재구성한 자료임.
요약
- SDF = 각 픽셀에 도형 경계까지의 부호 있는 거리를 저장(안쪽 음수, 바깥 양수). 해상도 무관 연산·조합이 강점.
- SDF Shape: 기본 도형(circle, star, diamond 등)·컴파운드 도형의 SDF 생성. Thickness로 외곽선화, Arc로 호 형태.
- SDF Shape Blend: 두 SDF를 merge/subtract로 조합. 체인해서 복잡한 도형 구축 가능.
- SDF Adjust: SDF 상태 그대로 ISO 오프셋(침식/팽창)·반전·외곽선 조정.
- SDF to Mono / SDF to RGB: SDF → 이미지 변환 관문. 마스크 용도면 Mono, 색 지향이면 RGB. ISO Offset/Outline/Smooth/Onion Skin/Invert 옵션.
- SDF Rebuild / Mono to SDF: mono 이미지에서 SDF 역변환 — 일반 흑백 이미지에 SDF 워크플로를 적용하는 진입점.
- ID to SDF: ID 영역별 개별 SDF 생성 — 타일별 정밀 가공 가능.
- Eikonal: eikonal 방정식으로 거리장 계산. 검은 픽셀 = 경계로 취급. Stamp Points(검은 점) + Eikonal로 셀룰러 거리장, Convolve 라플라시안으로 보로노이 경계선 추출.
- mono와 SDF는 데이터 구조가 유사함 — Layer Properties의 Type Info를 SDF로 태그하면 mono 레이어에서도 iso offset이 실제 동작함.
SDF Shape
한 줄 요약: 도형 생성의 기본 노드로, 다양한 기본 도형과 컴파운드 도형의 SDF를 만듦.
주요 파라미터
- Shape: 기본 도형(circle, star, diamond, line, trapezoid 등)과 Compound 도형(moon, rounded X 등) 제공.
- Shear / Rotation / Uniform Scale: 도형 변형.
- Arc: 반원 등 호 형태.
- Thickness: 속이 빈 외곽선 형태로 만듦.
팁 / 워크플로
- SDF Shape의 결과는 그대로 이미지가 아니므로, 마스크나 이미지로 쓰려면 SDF to Mono / SDF to RGB로 변환하는 것이 표준 패턴임(아래 참조).
- 커스텀 스탬프: SDF Shape(다이아몬드, 별 등) → SDF to Mono → Stamp Points의 stamp 0 입력에 연결하면 모든 포인트에 그 모양이 찍힘. (지오메트리 연동 참조)
- 타일 스탬프: SDF Shape(circle) → SDF to Mono → Tile Pattern의 stamp 입력에 연결하면 모든 타일에 셰이프가 찍힘.
- 보케 모양: SDF Shape(star) → SDF to Mono → Bokeh의 aperture 입력에 연결하면 별 모양 보케가 됨.
- 오토스테레오그램 depth: SDF Shape(diamond 등) → SDF to Mono → 약간 스무딩 → Auto Stereogram의 depth 입력. (필터 참조)
- 왜곡 재료: SDF Shape(star) → SDF to Mono → 스무딩 → Slope Direction으로 경사 방향을 만들어 Distort에 활용함. (UV·왜곡 참조)
- 패턴 실험: SDF Shape(trapezoid) → SDF to Mono → Function(sine 등) 변환 조합으로 온갖 타일러블 패턴 생성이 가능함. (값 리맵의 Function 참조)
SDF Shape Blend
한 줄 요약: 두 SDF를 합치거나 빼서 커스텀 컴파운드 도형을 만드는 노드임.
주요 파라미터
- Operation: merge(합침) / subtract(한 모양에서 다른 모양을 파냄).
팁 / 워크플로
- subtract로 반달 같은 커스텀 컴파운드 도형을 만들 수 있음.
- 체인해서 계속 조합 가능함 — 여러 SDF Shape Blend를 이어 복잡한 도형을 구축함.
SDF Adjust
한 줄 요약: SDF 상태 그대로 ISO 오프셋·반전·외곽선 등을 조정하는 노드임.
주요 파라미터
- ISO Offset: 도형 경계 위치 조정(침식/팽창).
- Invert: 반전.
- Outline: 외곽선화(두께 지정).
팁 / 워크플로
- 이미지로 변환하기 전, SDF 단계에서 도형을 다듬을 때 사용함. 변환 후 조정은 SDF to Mono / SDF to RGB의 자체 옵션으로도 가능함.
SDF to Mono
한 줄 요약: SDF를 흑백 이미지/마스크로 변환하는 노드임.
주요 파라미터
- ISO Offset: 침식/팽창.
- Outline: 외곽선(value/width, outside 옵션).
- Smooth: 블러.
- Onion Skin: 레이어드 룩.
- Invert: 반전.
- Shadowing: 배경을 1로 올리고 켜면 컷아웃 같은 그림자가 생김.
팁 / 워크플로
- 마스크 용도면 SDF to Mono, 이미지(색) 지향이면 SDF to RGB를 쓰는 것이 기준임.
- SDF 계열 도형을 다른 노드의 mono 입력(stamp, aperture, depth, fill area 등)에 연결하는 거의 모든 워크플로에서 이 노드가 변환 관문이 됨.
- 동심원 반복 룩: shape 비활성화, background를 constant → iso distance로, cycles를 repeat으로 두고 사이클 수를 늘리면 전형적인 signed distance field 줄무늬 룩이 됨(아래 Eikonal 예제 참조).
- mono와 SDF는 데이터 구조가 매우 유사해서 Fractal Noise를 SDF to Mono에 직결해도 동작하며, Layer Properties의 Type Info를 SDF로 지정한 mono 레이어에서도 iso offset이 실제로 동작함. (고급 활용의 Layer Properties 참조)
SDF to RGB
한 줄 요약: SDF를 색 지정 가능한 RGB 이미지로 변환하는 노드임.
주요 파라미터
- SDF to Mono와 유사하되 색 지정 가능 — 외곽선 색 등 더 많은 컨트롤 제공.
팁 / 워크플로
- 이미지 지향이면 이쪽, 마스크면 SDF to Mono를 사용함.
- Eikonal 거리장의 동심원 룩에 컬러 램프를 입힐 때도 사용함(아래 참조).
SDF Rebuild
한 줄 요약: mono 입력에서 SDF를 재구성하는 노드임.
주요 파라미터
- ISO: 올려서 복원 정도를 조정함.
팁 / 워크플로
- 완벽하진 않지만 쓸만한 수준으로 SDF를 복원함. SDF가 아닌 일반 흑백 이미지에서 SDF 워크플로(iso 조정, 외곽선 등)를 쓰고 싶을 때 진입점이 됨.
Mono to SDF
한 줄 요약: mono 이미지를 SDF로 변환하는 노드임.
주요 파라미터
- ISO: 기준 등위값 조정 — 특정 영역을 국소화할 수 있음.
- Invert: 반전.
팁 / 워크플로
- Eikonal 결과 같은 거리값 이미지를 SDF로 바꿔 iso를 조정하면 특정 영역만 분리할 수 있고, 다시 SDF to Mono로 되돌리면 파동 전파 같은 또 다른 결과가 나옴.
- 동심원 반복 룩 레시피: Mono to SDF에서 iso=0, invert 끔 → SDF to Mono에서 shape 비활성화, background를 constant → iso distance로, cycles를 repeat으로 두고 사이클 수 증가 → 전형적인 SDF 줄무늬 룩. SDF to RGB로 컬러 램프도 가능함.
ID to SDF
한 줄 요약: ID 출력의 각 고유 ID 영역을 개별 SDF로 변환하는 노드임.
팁 / 워크플로
- Tile Pattern 등에서 나온 고유 ID별로 각각 SDF를 생성함 → SDF to Mono 등으로 타일별 정밀 제어가 가능해짐.
- 변환 후에는 일반 SDF와 동일하게 자유롭게 가공 가능함(iso 조정, 외곽선, 블렌드 등).
- ID를 만들어내는 다른 노드들(Segment by Connectivity, Font, Worley Noise 등)과도 조합 가능함. (ID·세그먼트 참조)
Eikonal
한 줄 요약: 입력에 대해 eikonal 방정식(파동 전파·기하광학 계산에 쓰이는 방정식)을 풀어 거리장(distance field)을 생성하는 노드임.
입출력
- 입력은 mono임. 검은 픽셀 = 경계(boundary) 로 취급하고, 모든 흰 픽셀에서 가장 가까운 검은 픽셀까지의 거리를 계산함 → Initial Distance 입력에 연결.
- 출력은 signed distance field 성격의 거리값임.
주요 파라미터
- Speed: 1이면 순수 거리장. 값을 바꾸면 전파 속도가 조절됨.
- Speed 입력(2번): 위 speed 파라미터의 배율로 작동하는 가변 속도 입력.
- Iterations: 가변 속도를 쓸 때 특히 의미 있음.
- Kernel(스텐실) size: 4가 대부분의 경우 적절함.
팁 / 워크플로 — 셀룰러 거리장 셋업
- SOP Import 내부에 Grid(XY 평면, 2×2) → Scatter(50점). (지오메트리 연동의 좌표계 주의 참조)
- 상위에서 Stamp Points(circle, scale 0.005, 배경 흰색 / 스탬프 검정 — 검은 픽셀까지의 거리를 원하므로).
- mono로 변환해 출력-입력 시그니처를 일치시킨 뒤 Eikonal의 initial distance에 연결함. (핵심 개념의 시그니처 참조)
- 결과: 검은 점들 사이 경계에서 값이 최대, 점 바로 옆에서 최소인 거리장이 됨.
후처리 활용
- Equalize: 최고값을 1, 최저값을 0으로 정규화해 이후 remap 등 처리를 쉽게 함. 단 리소스 소모가 크고 프레임마다 가변적(adaptive) 이라 애니메이션 시 결과가 흔들림 — 일관성이 필요하면 제거 권장.
- Remap(0~1 → -1~1) → Ramp RGB로 셀룰러(cellular) 효과 생성.
- 애니메이션: SOP에서 Attribute Noise(position, zero-centered, element size 축소, amplitude 축소, animated, roughness 0) + Attribute Wrangle에서
v@P = minpos(1, v@P);(grid를 2번 입력)로 포인트를 그리드에 고정하면 움직이는 셀 구조가 됨. - 경계선(boundary) 추출 — Convolve 라플라시안 엣지 검출: Convolve 3×3에 라플라시안 커널(중앙 4, 또는 모서리까지 -1로 채우고 중앙 8이면 더 선명) + uniform scale 50~100 → 셀 경계선이 검출됨.
- 스탬프 점이 1픽셀보다 커서 중앙에 점이 남으면, 원본과 Multiply 후 remap으로 중간값만 줄여 제거함.
- 결과의 각 선은 인접 두 입력 포인트의 중간 지점임(원본 invert + Maximum으로 확인 가능) — 보로노이 경계와 유사함.
- SDF 변환: Mono to SDF로 iso를 조정해 특정 영역을 국소화하고, SDF to Mono로 되돌리면 파동 전파 같은 또 다른 결과가 나옴. 위 Mono to SDF의 동심원 반복 룩 레시피와 조합하면 컬러 줄무늬 거리장도 만들 수 있음.
관련 항목
- Prefix Sum으로도 밝은 영역 기준의 유사 SDF 등고선 패턴을 만들 수 있음 — 거리장 룩이 필요할 때의 대안 트릭임. (고급 활용 참조)
Houdini Copernicus Ultimate Guide 튜토리얼 정리 · 전체 12편
- 00 Houdini Copernicus Ultimate Guide 튜토리얼 정리 index
- 01 핵심 개념
- 02 생성·패턴 노드
- 03 값 조정과 리매핑
- 04 블렌딩과 합성
- 05 색 보정
- 06 필터와 이펙트
- 07 SDF와 거리장
- 08 UV·왜곡·좌표
- 09 지오메트리·3D 연동
- 10 ID·세그먼트·변환 유틸리티
- 11 파일 입출력과 렌더 파이프라인
- 12 프로그래밍과 고급 기능