Geometry Nodes를 처음 열면 노드가 많아 보여도, 실제로 배우는 것은 한 가지입니다. 정보는 A에서 B로 흐르고, 그 선 한가운데에 변환을 끼워 넣으면 지오메트리가 바뀝니다. 일반 Transform처럼 한 번 적용하고 끝나는 것이 아니라, 이전 단계가 트리에 그대로 남아 언제든 다시 조절할 수 있습니다. 이것을 절차적(Procedural)이라고 부릅니다.
이번 글은 영상 02. Logic and Basic Mechanics를 따라가며, 안쪽 입체 + 바깥 와이어 + 꼭짓점 구슬이 있는 형태를 만드는 흐름을 정리한 것입니다.
이번 글에서 다룰 내용은 다음과 같습니다.
- Geometry Nodes가 일반 Transform과 다른 점
- Group Input / Group Output과 소켓 색
- Dual Mesh → Mesh to Curve → Curve to Mesh로 와이어 만들기
- Instance on Points로 꼭짓점에 구슬 올리기
- Noise Texture + Scene Time으로 구슬 크기 애니메이션
메뉴명·단축키는 Blender 기본(영어 UI) 표기를 기준으로 적었습니다. 화면은 Blender 4 기준입니다. 상위 4.x가 있으면 그 버전을 쓰면 됩니다.
한 줄 요약
노드는 결과를 덮어쓰지 않습니다. 정보 흐름에 개입할 뿐입니다. Dual Mesh 점에 구슬을 올리고, Curve Circle로 와이어 굵기를 주면 분자 구조처럼 생긴 절차적 메시가 나옵니다.
일반 Transform과 무엇이 다른가
같은 일을 뷰포트 기즈모로도 할 수 있습니다. 큐브를 올리고, 이어서 회전하면 됩니다. 문제는 다음 작업을 하는 순간 이전 수치에 다시 손대기 어려워진다는 점입니다. 이동은 이미 확정되고, 화면에는 회전만 남습니다.
Geometry Nodes에서는 Transform Geometry 노드가 트리에 살아 있으므로, 회전을 넣은 뒤에도 이전 이동 값을 다시 조절할 수 있습니다.
| 비교 항목 | 일반 Transform | Geometry Nodes |
|---|---|---|
| 이동·회전·크기 | 기즈모로 바로 적용 | 노드로 적용. 값은 트리에 남음 |
| 다음 작업을 하면 | 이전 단계에 다시 들어가기 어려움 | 이전 노드를 열어 그대로 수정 |
| Edit Mode에서 보이는 것 | 바뀐 메시 | 기증자(원본) 메시. 기본값이면 큐브 |
| 성격 | 한 번 적용하면 흐름이 끊김 | 절차적. 정보 흐름이 유지됨 |
작업 화면을 여는 법
Geometry Nodes는 그 자체로 Modifier입니다. 노드 에디터만 연다고 생기는 것이 아니라, 오브젝트에 수정자를 올려야 동작합니다.
- 기증자(donor) 오브젝트가 필요합니다. 기본 큐브면 충분합니다.
- Modifier 속성에서 Geometry Nodes를 추가합니다.
- New를 눌러 노드 그룹을 만듭니다. 이 시점에는 노드 에디터가 없으면 화면에 아무 변화도 보이지 않습니다.
- 상단 워크스페이스에서 Geometry Nodes 탭으로 전환합니다.
이 워크스페이스에는 보통 세 칸이 있습니다. 3D 뷰포트, 노드 에디터, 속성 에디터입니다. 처음에는 속성 칸을 닫아도 됩니다. 나중에 Group 소켓 이름을 바꿀 때 다시 씁니다.
| 단축키 | 역할 |
|---|---|
| Shift + A | 노드 추가. 이름 일부를 입력해 검색 |
| N | 노드 에디터 사이드바. Group / Group Sockets |
| Ctrl + Space | 활성 패널 최대화 |
| Tab | Object Mode ↔ Edit Mode. 원본 메시 확인 |
| Space | 애니메이션 재생 |
Group Input과 Group Output
새 그룹을 열면 두 노드가 이미 초록 선으로 연결되어 있습니다.
- Group Input — 이 오브젝트가 원래 가지고 있던 정보입니다. 기본 큐브라면 6개 면과 그에 딸린 점·모서리입니다. Tab으로 Edit Mode에 들어가면 그 원본을 확인할 수 있습니다.
- Group Output — 뷰포트에 그릴 최종 지오메트리입니다. 이 노드는 지우면 안 됩니다. 시각화의 끝점입니다.
가운데 초록 선이 정보 전송 라인입니다. 이 선만 잘라 내고 Mesh Primitives의 Cylinder를 연결하면, 오브젝트는 큐브인데 뷰포트에는 원통이 보입니다. Suzanne를 만들어 노드 에디터로 드래그해도 같은 원리입니다. 입력만 바뀌었을 뿐, 출력 노드는 항상 그 자리에 있어야 합니다.
소켓 색은 데이터 종류입니다. 초록은 Geometry, 회색은 Float·Integer, 보라는 Boolean, 노랑은 Color, 파랑 계열은 Vector입니다. 초록 소켓끼리만 연결됩니다. 노드를 기존 선 위로 드래그하면 흐름 한가운데에 끼워집니다.
Transform Geometry — 원점은 그대로, 내부만 움직인다
Shift + A에서 transform을 검색해 Transform Geometry를 넣습니다. 이 노드는 사이드바의 Location / Rotation / Scale 패널을 노드로 복제한 것과 비슷합니다. Geometry 입력과 Geometry 출력이 있고, 그 사이에 변환 값이 있습니다.
Z Translation을 올리면 큐브가 올라가 보이지만, 오브젝트 원점(origin)은 그리드 한가운데에 남아 있습니다. Tab으로 Edit Mode에 들어가 원점 기준으로 메시를 올린 것과 같은 상태입니다. 그래서 오브젝트 자체를 회전하면, 올라간 메시가 원점 주위를 크게 돕니다. 이것이 오브젝트를 움직인 것과 지오메트리 내부를 움직인 것의 차이입니다.
이전 Transform 노드로 돌아가 값을 고치면, 회전을 유지한 채 높이만 다시 맞출 수 있습니다. 절차주의가 여기서 힘을 발휘합니다.
첫 실습 — 분자 구조처럼 생긴 절차적 메시
강의는 큐브를 출발점 삼아, 안쪽 입체 + 바깥 와이어 + 꼭짓점 구슬이 있는 형태를 만듭니다. Group Input은 끊고, 노드로 새 메시를 생성합니다. Edit Mode로 들어가 보면 여전히 원래 큐브만 있습니다. 뷰포트의 분자 구조는 전부 노드가 만든 가상 지오메트리입니다.
안쪽 입체와 바깥 껍질
- Mesh Primitives에서 Ico Sphere를 넣습니다. Radius 1 m, Subdivisions 1. 이것이 안쪽 입체입니다.
- Ico Sphere를 복제합니다. Radius 2 m, Subdivisions 2. 바깥 껍질입니다.
- 바깥쪽에 Dual Mesh를 연결합니다.
Dual Mesh는 삼각형 메시를 육각·오각 중심으로 바꿉니다. 가까운 꼭짓점이 무너지며 면의 중심이 새 꼭짓점이 됩니다. 이 변환 덕분에 바깥 껍질이 축구공 패널처럼 각진 입체가 됩니다. 뒤에 올릴 구슬의 자리도 바로 이 새 꼭짓점입니다.
모서리를 굵은 와이어로 만들기
Dual Mesh의 모서리를 선으로 바꾸고, 그 선에 두께를 줍니다. 내장 Wireframe Modifier와 달리, 커브 단면으로 만든 튜브는 나중에 재사용하기 좋은 깨끗한 메시가 됩니다.
- Mesh to Curve — 메시 모서리를 커브(스플라인)로 바꿉니다. 이 순간 뷰포트에는 얇은 와이어만 보입니다.
- Curve to Mesh — 커브를 다시 메시로 바꿉니다. 두께를 주려면 Profile Curve 소켓이 필요합니다.
- Curve Primitives에서 Curve Circle을 넣습니다. Resolution 32, Radius 0.02 m 정도. 이 원을 Profile Curve에 연결하면 스플라인 주위로 원형 단면이 돌출됩니다.
Circle Radius가 곧 와이어 굵기입니다. 너무 굵으면 구슬과 겹치고, 너무 가늘면 렌더에서 사라집니다. 수업에서는 0.02 m 근처를 기준으로 잡으면 됩니다. 안쪽 Ico Sphere와 이 와이어를 Join Geometry로 합칩니다. Join Geometry의 넓은 소켓은 입력을 여러 개 받을 수 있다는 뜻입니다.
꼭짓점에 구슬 뿌리기 — Instance on Points
바깥 꼭짓점마다 작은 구를 올리고 싶다면 Instance on Points를 씁니다. 어디에 연결할지가 이 실습의 핵심입니다.
- Curve to Mesh 뒤에 연결하면 안 됩니다. 와이어를 메시로 만드는 과정에서 점이 엄청나게 늘어나고, 한 자리에 구가 겹쳐 쌓입니다. 와이어프레임 모드로 보면 한 점에 인스턴스가 뭉친 것이 보입니다.
- Dual Mesh의 출력 점을 써야 합니다. Dual Mesh에서 면이 꼭짓점으로 바뀌므로, 와이어가 모이는 바로 그 교차점에 구슬이 앉습니다.
인스턴스로는 작은 Cube(0.2 m)를 넣고, 그 앞에 Subdivision Surface(Level 2)를 두면 큐브가 구처럼 둥글어집니다. 이 노드는 수정자 스택의 Subdivision Surface와 같은 계열입니다. 구슬 출력을 Join Geometry에 한 줄 더 넣으면, 안쪽 입체 + 와이어 + 구슬이 한 오브젝트로 합쳐집니다.
구슬 크기를 노이즈로 흔들기
모든 구슬이 같은 크기면 기계적으로 보입니다. 노이즈는 그림이 아니라 숫자 정보입니다. 밝은 곳은 1에 가깝고 어두운 곳은 0에 가깝습니다. 표면 전체에 값이 퍼져 있으므로, 점마다 다른 크기를 줄 수 있습니다.
- Noise Texture의 Factor를 씁니다. Color가 아닙니다. 구슬을 모든 축에서 비례하게 키우려면 숫자 하나가 필요합니다. Color(벡터)를 넣으면 타원이 됩니다.
- Factor를 그대로 Scale에 넣으면 0~1 범위라 구슬이 거의 사라집니다.
- 가운데에 Map Range를 둡니다. From 0~1을 To 0.5~3.0처럼 다시 매핑합니다. 캡처 트리에서는 To Min 0.5, To Max 3.0입니다.
Noise를 4D로 바꾸고 W를 돌리면 구슬이 맥동합니다. Scale·Roughness·Detail을 낮추면 전환이 부드러워집니다. 캡처 기준 Roughness는 0.214, Scale은 2.0입니다.
Scene Time으로 절차 애니메이션
Scene Time 노드는 현재 프레임과 초를 숫자로 줍니다. 1프레임이면 Frame 값은 1, 2프레임이면 2입니다. 초당 24프레임이면 Seconds는 천천히 올라갑니다. Seconds를 Noise Texture의 W에 연결하고 Space로 재생하면, 키프레임을 찍지 않아도 구슬 크기가 살아 움직입니다. W가 노이즈의 진화를 담당한다는 점만 기억하면 됩니다.
완성 노드 트리와 결과

그림 1. 02 강의 완성 노드 트리. 위쪽 줄이 안쪽 입체와 와이어, 가운데가 Dual Mesh에서 갈라진 구슬 인스턴스, 아래가 Scene Time → Noise → Map Range 애니메이션입니다.
트리는 왼쪽에서 오른쪽으로 읽습니다. 캡처에 보이는 값 그대로 따라가면 강의 결과와 같아집니다.
- Ico Sphere (Radius 1 m, Subdivisions 1) → Join Geometry. 안쪽 입체.
- Ico Sphere (Radius 2 m, Subdivisions 2) → Dual Mesh → Mesh to Curve → Curve to Mesh. Profile은 Curve Circle (Resolution 32, Radius 0.02 m).
- Dual Mesh에서 가지를 하나 더 빼 Instance on Points의 Points에 연결합니다.
- Cube (0.2 m) → Subdivision Surface (Level 2) → Instance on Points의 Instance.
- Scene Time의 Seconds → Noise Texture의 W. Factor → Map Range (0~1을 0.5~3.0) → Instance on Points의 Scale.
- 입체·와이어·인스턴스를 Join Geometry로 합쳐 Group Output에 연결합니다.

그림 2. Dual Mesh 꼭짓점에 구슬이 앉고, 모서리는 Curve Circle로 굵기를 준 와이어입니다. 주황 점은 오브젝트 원점입니다. 메시가 커 보여도 원점은 중심에 그대로 있습니다.
이번 강의에서 외울 노드
노드 이름은 외우거나, 최소한 노트에 한 줄 정의를 직접 써야 합니다. 검색창에 영어 이름을 넣을 수 있어야 다음 실습이 막히지 않습니다.
| 노드 | 하는 일 | 이 실습에서 쓴 지점 |
|---|---|---|
| Join Geometry | 여러 지오메트리를 하나로 합침 | 입체 + 와이어 + 구슬 |
| Dual Mesh | 면의 중심을 새 점으로. 삼각형을 육각 계열로 | 바깥 껍질, 구슬의 자리 |
| Mesh to Curve | 메시 모서리를 커브로 | 와이어의 뼈대 |
| Curve to Mesh | 커브에 단면을 입혀 메시로 | 와이어 두께 |
| Curve Circle | 원형 커브 프리미티브 | Profile Curve |
| Instance on Points | 점마다 오브젝트 인스턴스 | 꼭짓점 구슬 |
| Subdivision Surface | 세분 + 라운딩 | 큐브를 구처럼 |
| Noise Texture | 0~1 노이즈 장 | 크기 편차 |
| Map Range | 값의 구간을 재매핑 | 구슬 최소·최대 크기 |
| Scene Time | 현재 프레임 / 초 | W 애니메이션 |
| Transform Geometry | 이동·회전·크기. 원점은 고정 | 내부 이동 |
따라 하며 확인할 체크리스트
- Geometry Nodes Modifier를 추가하고 노드 에디터에서 Group Input–Output을 확인했다
- Transform Geometry로 메시만 올리고, 원점은 제자리인 것을 확인했다
- Dual Mesh → Mesh to Curve → Curve to Mesh + Curve Circle로 와이어를 만들었다
- Instance on Points를 Dual Mesh 점에 연결해 구슬을 올렸다 (Curve to Mesh 뒤에 연결하지 않음)
- Noise Factor → Map Range → Scale, Scene Time Seconds → W로 재생해 보았다
자주 하는 실수
| 증상 | 원인 | 확인 |
|---|---|---|
| New를 눌렀는데 화면이 그대로다 | 노드 에디터 워크스페이스가 없음 | Geometry Nodes 탭으로 전환 |
| 구슬이 한 점에 쌓인다 | 점을 Curve to Mesh에서 가져옴 | Dual Mesh 출력으로 재연결 |
| 구슬이 납작하거나 타원이다 | Color를 Scale에 연결함 | Factor → Map Range → Scale |
결과가 안 보이면 Group Output 연결, Modifier 눈 아이콘, 노드 그룹이 해당 오브젝트에 올라가 있는지를 봅니다.
핵심 정리 · 단축키
- 노드는 덮어쓰지 않고, 정보 흐름에 개입한다
- 와이어는 Dual Mesh → Mesh to Curve → Curve to Mesh + Curve Circle
- 구슬의 점은 Dual Mesh 출력. Curve to Mesh 뒤가 아니다
- 크기 편차는 Noise Factor → Map Range, 움직임은 Scene Time Seconds → W
| 단축키 / 메뉴 | 기능 |
|---|---|
| Shift + A | 노드 추가·검색 |
| N | 노드 에디터 사이드바 |
| Tab | 원본 메시 확인 (Edit Mode) |
| Space | 애니메이션 재생 |
| Modifier → Geometry Nodes → New | 노드 그룹 생성 |
마무리
Geometry Nodes의 핵심은 결과가 아니라 흐름입니다. Dual Mesh 점에 구슬을 올리고 Curve Circle로 와이어 굵기를 주면, 키프레임 없이 움직이는 분자 구조 메시가 나옵니다. 다음 편 03-A는 이 시스템을 큐브·원통·Suzanne 등 다른 메시에 씌우고, Modifier 패널에서 값만 조절하게 만듭니다.
'Blender' 카테고리의 다른 글
| Hard Ops Bevel — Q로 모따기, 휠·스크롤로 너비와 세그먼트 조절 (0) | 2026.09.01 |
|---|---|
| Hard Ops Sharpen — Shade Smooth 원클릭, Ssharp와 Csharp 차이 (0) | 2026.09.01 |
| Blender 프리미티브 생성과 설정 (0) | 2026.07.17 |
| 블렌더 4.4 초기 설정 및 인터페이스 안내 (0) | 2025.12.28 |
| Blender 기초 인터페이스 (0) | 2025.12.23 |