반응형

Geometry Nodes 사용해서 모델링 작업하기
Geometry Nodes 사용해서 모델링 작업하기

 

지오메트리 노드를 이용해서 테이블을 만드는 영상이 있어서 공부하면서 작업해보겠습니다.

 

 

Geometry Nodes 사용해서 모델링해보기

테이블 상판 만들기 

1. Shift + A (Add)을 눌러 Cube 클릭해 생성합니다.

 

2. 상단에 Geometry Nodes 탭으로 변경한 후 New를 클릭해 줍니다.

지오메트리 노드 화면
Geometry Nodes

 

 

New를 누르면 오른쪽에 있는 Modifiers Properties에 Geometry Nodes가 생깁니다.

Geometry Nodes New 생성Modifier에 지오메트리 생성
Geometry Nodes New

 

 

3. Shift + A(Add)를 눌러 Curve Primitives에 있는 Quadrilateral을 클릭합니다.

노드 생성하기 
Curve Primitives에 있는 Quadrilateral을 클릭
Quadrilateral

 

현재 작업하는 노드를 확인하고 싶다면?

▶ Alt 누른 상태에서 Shift 누르고 노드 클릭하면 클릭한 노드가 Output Node에 연결됩니다.

Output 노드에 바로 연결하기 Alt+ Shift + Nodes Click
Output 노드에 바로 연결하기 Alt+ Shift + Nodes Click

 

 

 

 

Alt + Shift + Nodes 클릭으로 바로 Output 연결이 안 될 경우 

 Node Wrangler 애드온이 활성화되어 있는지 확인해 주세요.
Node Wrangler 애드온 활성화 하기 : Edit → Preferences Add-ons Node Wrangler 체크

Add-ons(에드온) Node Wrangler 활성화
Add-ons(에드온) Node Wrangler 활성화

 

 

 

4. Bounding box 추가한 후 Subtract 노드 추가합니다.

Bounding box _subtract
Bounding box _subtract

 

 

 

Subtract를 불러오는 방법
F3를 누르거나 Shift + A에서 Search로 Subtract를 찾을 경우 안 나오기 때문에 Bounding Box에 Output _ Min or Max에서 드래그해서 놓으면 검색창이 뜹니다. 이때 검색창에 Subtract 검색합니다.

노드 안에서 Shift + A 해서 Subtract 검색할 때
노드 안에서 Shift + A 해서 Subtract 검색할 때

 

Bounding Box 노드 Max 선을 드래그 해서 뺀 후 Subtract 검색할 때
Bounding Box 노드 Max 선을 드래그 해서 뺀 후 Subtract  검색할 경우

 

 

Output Min or Max에서 선을 빼는 이유

일반 수학 노드가 아닌 벡터 수학 노드를 사용해야 하기 때문이라고 합니다...

 

 

5. Seperate XYZ 노드 추가 후 Quadrilateral 뒤에 Transform 노드 추가합니다.

Transform 노드 추가
Transform 노드 추가

 

 

6. Subtract를 선택한 후 Ctrl + Shift + D를 눌러서 현재 노드가 이어진 선을 유지하면서 복제하고 형태를 Add로 변경합니다. 

형태 Add로 변경하기
형태 Add로 변경하기

 

 

 

7. Add에 Shift + D를 눌러서 복제한 후 형태를 Divide로 변경합니다.

8. Seperate XYZ도 복제한 후에 Seperate XYZ 이름 변경(F2)합니다.

Divide로 변경
Divide로 변경
Seperate XYZ 이름 변경(F2)
Seperate XYZ 이름 변경(F2)

 

 

 

9. Combine XYZ 노드를 추가하여 두 번째로 추가한 Seperate 노드에 XYZ를 연결합니다.
이때 Z축 상단 부분에 배치하려면 Seperate XYZ를 복제한 후 Bounding Box_Max 연결해서 Combine XYZ에 Z축에 연결합니다.

평균 위치값이 중앙에 배치되어 있는 상태
평균 위치값이 중앙에 배치되어 있는 상태
Combine XYZ에 Z축에 연결
Combine XYZ에 Z축에 연결

 

 

10. Quadrilateral 뒤쪽에 Fillet Curve를 추가합니다.

Fillet Curve를 추가
Fillet Curve를 추가

 

 

Fillet Curve_ Radius에 Input 노드를 연결하면 Modifier 창에서도 Radius 값을 수정할 수 있습니다.
첫 번째 방법으로 Radius 값을 바로 연결하면 길이값을 넣어줘야 해서 조절이 어려울 수 있으므로 Input에 Mix를 넣어 Factor 값으로 조정할 수 있게 해야 합니다. (0.0~1.0) = 값 조절이 편리.

Input 값에 Radius or Fac 값을 넣었을 때Input 값에 Radius or Fac 값을 넣었을 때 Modifier에서 조절할 수 있음.
Input 값에 Radius or Fac 값을 넣었을 때 Modifier에서 조절할 수 있음.

 

 

 

11. Size에 Minimum 노드 연결하고 Minimun 노드 Shift + D 복사해 준 후 Divide로 변경합니다.

12. Map Range 노드 추가해서 아래와 같이 연결해 줍니다.
Minimun 노드 Math vector이므로 Shift + A로 하면 검색 안됩니다.  이때 Size Output Node에서 꺼내서 검색합니다.

Map Range 노드 추가
Map Range 노드 추가

 

 

 

13. Fill Curve와 Curve to Mesh를 Join Geometry에 연결한 후 Curve Line 노드를 추가하여 Curve to Mesh의 Profile Curve에 연결해줍니다.

Curve to Mesh의 Profile Curve에 연결
Curve to Mesh의 Profile Curve에 연결

 

 

 

14. Set Position에 Combine XYZ에서 Divide → Float Spline Prameter를 연결해줍니다.
이 과정은 위에서 두께를 준 부분에 곡면으로 표현이 될 수 있도록 해주는 작업입니다.

두께를 준 부분에 곡면으로 표현이 될 수 있도록 해주는 작업
두께를 준 부분에 곡면으로 표현이 될 수 있도록 해주는 작업
돌출된 부분 곡면
돌출된 부분 곡면

 

 

15. Fill Curve에서 Set Position을 연결한 후 Flip Face(아래쪽에 생성한 면이 뒤집혀 있으므로) 연결합니다.

Fill Curve에서 Set Position을 연결면 뒤집어 주기
면 뒤집어 주기

 

 

면 뒤집혀 있는 거 확인하는 방법
상단에 동그라미 모양 두 개가 겹쳐 있는 아이콘 클릭 -> Geometry_ Face Orientation 체크하기 

면 방향 확인하는 방법
면 방향 확인하는 방법

 

 

16. Join Geometry 뒤에 Merge By Distance를 넣어준다.

Merge By Distance
Merge By Distance

 

 

17. 테이블 윗부분 완료

 

Geometry로 작업한 테이블 윗부분
Geometry로 작업한 테이블 윗부분

 

 

 

 

작업 시 자주 사용하게 되는 단축키

추가 Shift + A 
복제 노드 연결된 상태로 노드 복제하기 Ctrl + Shift + D
복제 Shift + D (노드만 복제됨)
이름 변경하기 F2
현재 선택한 노드 아웃풋 연결  Alt + Shift + 현재 노드 클릭
현재 선택한 노드 viewer Ctrl + Shift + 현재 노드 클릭
프레임 만들기 Shift + P

 

노드 이름 변경 F2
노드 이름 변경 F2

 

 

 


 

 

 

 

사용한 노드 정리

 

Quadrilateral Node

모드가 다른 4개의 점이 있는 다각형을 생성

Quadrilateral Node

Quadrilateral Node 옵션
Input Width / Bottom Width / Top Width 모양의 X축 크기
Height 모양의 Y축 크기
Bottom Height /
Top Height
Kite 모드에서 맨 아래 또는 맨 위 점과 X축 사이의 거리
Offset 평행사변형 모드에서 위쪽 가장자리와 아래쪽 가장자리 사이의 상대적 X 차이
사다리꼴 모드에서 양의 X축에서 위쪽 가장자리를 이동할 양
Point 1 - 4 포인트 모드의 입력 벡터
Properties Rectangle 너비와 높이가 있는 직사각형 모양의 곡선을 생성
Parallelogram 위쪽 및 아래쪽 가장자리의 서로 다른 X값에 대한 오프셋이 있는 사각형을 생성
Trapezoid 높이, 상단 및 하단 너비, 오프셋이 있는 사다리꼴 모양의 곡선을 생성
Kite 너비가 있는 연 모양을 생성하고 X축에서 위쪽 및 아래쪽 점 거리를 지정
Points 위치 벡터를 직접 입력하여 4점 순환 폴리 스플라인을 생성
Output Curve 입력에서 생성된 폴리 스플라인

 

 

Bounding Box

입력의 지오메트리를 캡슐화하는 최소 볼륨으로 상자 메시를 생성. 노드는 경계 차원의 벡터 위치를 출력할 수도 있음.

 

메시 출력과 최소 및 최대 출력은 인스턴스를 고려하지 않음. 대신 인스턴스화된 지오메트리의 경우 전체 지오메트리가

아닌 각 인스턴스에 대해 경계 상자가 계산됨.

인스턴스를 포함하는 경계 상자를 계산하기 위해 Realize Instances 노드를 사용할 수 있음

Bounding Box
Inputs Geometry 표준  지오메트리 입력
Properties 이 노드에는 속성 없음
Outputs Boundind box 입력 지오메트리를 캡슐화하는 결과 상자
Min 상자의 -X, -Y, -Z 위치값에 해당하는 좌표, 즉 상자가 각 음의 축 방향으로 확장되는 거리
Max 상자의 +X, +Y, +Z 위치값에 해당하는 좌표, 즉 상자가 각 양의 축 방향으로 확장되는 거리

 

 

Math Node

수학 연산을 수행

Math Node_subtract
Inputs 노드의 입력은 동적
일부 입력은 특정 작업에서만 사용할 수 있음.
Ex. 더하기
입력은 곱하기 더하기 연산자에서만사용할 수 있음

Value 삼각함수는 이 값을 라디안으로 읽음
Append 추가 입력
Base 입력 베이스
Exponent 지수를 입력
Epsilon 엡실론을 입력
Distance 입력 거리
Min 최소 입력
Max 최대 입력
Increment 입력 증분
Scale 입력 스케일
Degrees  degree 입력
Radians 입력 라디안
Math Node 옵션
Subtract 전환할 수 있는 항목
Properties Functions Add 두 값의 합
Subtract 두 값의 차이
Multiply 두 값의 곱
Divide 첫번째 값을 두번째 값으로 나누기
Multiply Add Append 있는 두 값의 곱의 합
Power Exponent 거듭제곱으로 상승한 Base
Logarithm Base 기준으로 하는 값의 로그
Square Root 값의 제곱근
Inverse Square Root 1을 값의 제곱근으로 나눈 값
Absolute 입력값은 부호에 관계없이 읽음. 이것은 음수 값을 양수 값으로 바꿈
Exponent 오일러 수를 값의 거듭제곱으로 올림
Comparison Minimum 입력 값 중 가장 작은 값을 출력
Maximum 두 입력 값 중 가장 큰 값을 출력
Less Than 첫 번째 값이 두번째 값보다 작으면 1.0을 출력. 그렇지 않으면 출력은 0.0임
Greater Than 첫 번째 값이 두번째 값보다 크면 1.0을 출력. 그렇지 않으면 출력은 0.0임
Sign 입력 값의 부호를 추출. 모든 양수는 1.0을 출력. 모든 음수는 -1.0을 출력. 0.0은 0.0을 출력
Compare 두 입력 값의 차이가 Epsilon보다 작거나 같으면 1.0을 출력
Smooth Minimum 부드러운 최소값
Smooth Maximum 부드러운 최대값
Rounding Round 입력 값을 가장 가까운 정수로 반올림
Floor 입력 값을 가장 가까운 정수로 내림
Ceil 입력 값을 가장 가까운 정수로 반올림
Truncate 값의 정수 부분을 출력
Fraction 분수
Modulo첫 번째 값을 두 번째 값으로 나눈 나머지를 출력
Wrap 입력 값과 해당 값보다 작은 Max의 가장 가까운 정수 배수 간의 절대 차이를 기반으로 Min 과 Max 사이의 값을 출력
Snap Increment의 가장 가까운 정수 배수로 입력 값을 내림
Ping-pong 출력 값은 입력 값을 기준으로 0.0과 Scale 사이에 이동
Triginometric Sine 입력 값의 사인
Cosine 입력 값의 코사인
Tangent 입력 값의 탄젠트
Arcsine 입력 값의 아크사인
Arccosine 입력 값의 아크코사인
Arctangent 입력 값의 아크탄젠트
Arctan2 라디안으로 측정된 두 번째 값으로 나눈 첫 번째 값의 역탄젠트를 출력
Hyperbolic Sine 입력 값의 쌍곡선 사인
Hyperbolic Cosine 입력 값의 쌍곡선 코사인
Hyperbolic Tangent 입력 값의 쌍곡선 탄젠트
Conversion To Radians 입력을 도에서 라디안으로 변환
To Degrees 입력을 라디안에서 각도로 변환
Clamp 출력을 범위(0.0 ~ 1.0)로 제한합니다. 클램프를 참조
Outputs Value 수치 출력

 

 

Combine XYZ

개별 구성요소의 벡터 결합

Combine XYZ
Inputs X
Y
Z
Properties 이 노드에는 속성이 없음
Output  Vector 표준 백터  출력

 

 

Fillet Curve

2D 메시에 대한 베벨 수정자의 효과와 유사하게 곡선 제어점의 모서리를 둥글게 만듦

차이점으로는 Fillet Curve 노드에 의해 생성된 둥근 부분이 항상 원의 부분이라는 것

Fillet Curve
Inputs Curve 곡선 구성 요소가 있는 표준 지오메트리 입력
Radius 각 모깎기에서 생성된 원 부분의 반지름
Count 폴리모드에서만 각 필렛에 추가할 제어점 수
Limit Radius 겹치는 필렛을 피하기 위해 반지름의 최대값을 제한할지 여부
Properties Bezier 필렛 된 모든 제어점에 대해 두 개의 제어점만 생성됨. 모깎기의 양쪽에 있는 생성된 제어점의 정렬된 핸들에 의해 생성된 모양은 원 부분 모양을 만드는데 사용

즉, 필렛 모양의 세그먼트 수가 스플라인의 해상도 값에 따라 다름
Poly 각 필드 입력에 대해 생성되는 제어점의 수는 정수 필드 입력으로 직접 제어됨.

이 모드는 폴리 및 NURBS 스플라인에 더 잘 작동함
Output Curve 곡선 구성요소가 있는 표준 지오메트리 입력

 

Map Range

범위에서 대상 범위로 값을 다시 매핑

Map Range
Inputs Value/Vector 다시 매핑 할 입력 값 또는 벡터
From Min 다시 매핑 할 범위의 하한
From Max 다시 매핑 할 범위의 상한
To Min 대상 범위의 하한
To Max 대상 범위의 상한
Steps 계단식 선형 보간을 사용할 때 To Min 과 To Max 사이에 허용되는 값의 수

더 높은 값은 더 부드러운 보간을 제공하고 더 낮은 값은 입력을 점진적으로 양자화함.
Properties Data Type Map Range는 Float 및 Vector 데이터 유형을 모두 지원함.
데이터 유형을 변경하면 선택한 데이터 유형을 반영하도록 소켓도 업데이트
Interpolation
Type
Linear : 최소 시작 값과 최대 시작 값 사이의 선형 보간

Stepped Linear : 최소 시작 값과 최대 시작 값 사이의 계단식 선형 보간

Smooth Step : From Min과 From Max 값 사이의 부드러운 Hermite 가장자리 보간

Smoother Step : From Min 및 From Max  값 사이의 더 부드러운 Hermite 가장자리 보간 
Clamp 활성화하면 출력이 목표 범위로 고정
Outputs Result/ Vector 다시 매핑한 후의 입력의 값

 

 

Curve Line
Curve Line
Inputs Start 첫 번째 제어점의 위치
End 두 번째 제어점의 위치. 포인트 모드에서만 사용할 수 있음
Direction 선이 들어가는 방향 
이 벡터의 길이는 중요하지 않음.
방향 모드에서만 사용할 수 있음
Length 선의 길이, 방향 모드에서만 사용할 수 있음
Properties Mode Points : 시작점과 끝점으로 sp 라인을 정의 

Direction : 시작, 방향 및 길이로 sp 라인을 정의 
Outputs Curve 표준 지오메트리 출력

 

Subdivide Curve

곡선 입력의 기존 제어점 사이에 더 많은 제어점을 추가함.

베지어 및 폴리 스플라인의 경우 스플라인의 모양이 전혀 변경되지 않음

Subdivide Curve
Inputs Curve 표준 지오메트리 입력
Cuts 각 점 다음에 오는 세그먼트에 생성할 제어점의 수
입력이 필드인 경우 세그먼트의 컷 수는 이전 지점에서 평가 될 때 필드의 값에 의해 결정
Properties 이 노드에는 속성이 없음
Outputs Curve 표준 지오메트리 출력

 

 

Spline Parameter

제어점이 각 스플라인을 따라 얼마나 멀리 떨어져 있는지 출력

Spline Parameter
Inputs 이 노드에는 입력이 없음
Properties 이 노드에는 속성이 없음
Outputs Factor 노드가 점 도메인에서 사용될 때 값은 각 제어점에서 스플라인의 전체 길이 부분

스플라인 영역에서 스플라인 시작 부분에서 곡선의 전체 길이 부분
Length 노드가 점 도메인에서 사용될 때 값은 스플라인을 따라 각 제어점까지의 거리

스플라인 영역에서 스플라인 시작 부분의 전체 곡선을 따른 길이
Index 스플라인에 있는 각 제어점의 인덱스
이는 모든 이전 스플라인의 제어점도 계산하는 인덱스 노드의 출력과 다름

 

Float Curve

입력 플로트를 커브에 매핑하고 플로트 값을 출력

Float Curve
Inputs Factor 노드가 출력 값에 미치는 영향의 양을 제어
Value 표준 부동 입력
Properties Curve  곡선 컨트롤에 대해서 곡선 위젯을 참조
Outputs Float  표준 플로트 출력

 

 

Set position

속성을 제어하는 것과 같은 방식으로 각 포인트의 위치를 제어

입력 지오메트리에 인스턴스가 포함된 경우 이 노드는 각 인스턴스의 원점 위치에 영향을 미침

Set position
Inputs Grometry 표준 지오메트리 입력
Selection 각 점 또는 인스턴스의 위치를 변경할지 여부
True 값은 위치가 변경됨을 의미하고 false값은 동일하게 유지됨을 의미
Position 선택한 요소의 새 위치
기본적으로 이는 위치 노드가 연결된 경우와 동일하므로 노드가 아무 작업도 수행하지 않음
Offset 각 지점에 대한 선택적 번역
Position 입력과 동시에 평가 
이에 대한 평가된 필드는 변경된 Position을 반영하지 않음
Properties 이 노드에는 속성이 없음
Outputs Grometry 표준 지오메트리 출력

 

Curve to Mesh

곡선의 모든 스플라인을 메시로 변환

Curve to Mesh
Inputs Curve 표준 지오메트리 입력. 모든 비 곡선 구성요소는 무시됨
Profile Curve 프로파일 곡선이 제공되면 모든 스플라인을 따라 돌출
그렇지 않으면 생성된 메시는 가장자리 체인일 뿐임
Fill Caps 프로파일 스플라인이 주기적이면 생성된 메쉬의 끝을 N-곤으로 채움. 결과 메시는 Manifold이며, 각 스플라인에 대한 두 개의 새 면은 단순히 기존 가장자리에 연결
Properties 이 노드에는 속성이 없음
Outputs Mesh 표준 지오메트리 노드 출력

 

 

Fill Curve

곡선을 경계로 사용하여 제약된 Delaunay 삼각 측량 알고리즘을 사용하여 메쉬를 생성

메시는 로컬 Z가 0인 평면만 생성

Fill Curve
Inputs Curve 곡선 구성 요소가 있는 표준 지오메트리 입력
Properties Mode Triangles : 출력은 삼각형으로 구성
 
N-gons : 출력은 n-gon으로 구성
Outputs Mesh 곡선의 채우기

 

Join Geometry

별도로 생성된 Geometry를 단일 Geometry로 병합

지오메트리입력에 다른 유형의 데이터가 포함되어 있으면 출력에도 다른 데이터 유형이 포함

Join Geometry
Materials 여러 메시 입력에 서로 다른 재질이 포함된 경우 각 메시 지오메트리의 재질 슬롯이 병합되어 출력 메시에 모든 입력 재질이 포함
Attributes 여러 지오메트리 입력의 속성을 병합할 때 출력 속성에 대해 가장 복잡한 데이터 유형이 선택
Input Geometry 합쳐질 지오메트리
다중 입력이 허용
노드가 음소거되면 첫 번째 링크만 통과됨
Properties 이 노드에는 속성이 없음
Output Geometry 표준 지오메트리 출력

 

Merge by Distance

주어진 거리 내에서 선택된 메쉬 정점 또는 포인트 클라우드 포인트를 병합하고 필요한 경우 주변 지오메트리를 병합

Merge by Distance
Inputs Geometry 표준 지오메트리 입력
Selection 삭제할 지오메트리 부분에 대해 true인 부울 필드
선택되지 않은 포인트는 작업을 위해 완전히 해제
다른 포인트로 병합 되지 않으며 포인트도 병합되지 않음
Distance 가까운 지점을 검색하는데 사용할 거리
Properties Mode All : 병합에는 느슨한 부품을 포함한 모든 형상이 포함

Connected : 병합에는 연결된 형상만 포함
수정자는 느슨한 부품을 함께 병합하지 않음
Output Geometry 표준 지오메트리 출력ㅈ

 

 

 

Transform
Transform
Inputs Geometry 표준 지오메트리 입력
Translation 수정된 개체의 로컬 공간에서 전체 형상의 변환
Rotation 수정된 개체의 로컬 공간에서 오일러 회전
Scale 수정된 개체의 로컬 공간에 있는 지오메트리의 배율
Properties 이 노드에는 속성이 없음
Outputs Geometry 표준 지오메트리 출력

 

 

 

블렌더 노드를 공부하기 위해 아래 영상을 참고하여 만들어보고 추가적으로 공부한 내용입니다.

참고영상 /참고자료

[Blender]Geometry Nodes 지오메트리 노드_노드 유형

반응형

+ Recent posts