본문 바로가기

DXWave/블렌더

Blender Geometry Node Tutorial: CRAZY 3D Flow Fields in Blender 4.2!

https://blog.naver.com/3g4glte/223459675171

 

블렌더 지오메트리 노드 한글 정리본 ( Attribute Nodes 노드 )

본 포스팅은 챗 gpt로 작성됐습니다. 정확하지 않을 수 있으니 잘못된 정보라면 댓글 남겨주세요! Attribu...

blog.naver.com

 

https://www.youtube.com/watch?v=eqLA7oJkLyM

Plain을 만들고

 

시뮬레이션추가

SetPosition을 사이에 넣고 X에 0.1m넣자 

타임라인을 움직이면 버텍스들이 움직인다. 

NoiseTexture를 추가하고 MathVector를 Scale로 변경후 offset값에 넣어주면 불규칙하게 날라간다.

NoiseTexture는 현재 0~1의 값이 출력되므로 0.5를 빼주면 점들은 제자리에서 움직이게 된다. Noise의 Normalize를 꺼줘도비슷한것 같다.

(1,1,0)을 곱해서 x y 로만 움직이게 해준다. 새로운 노드가 추가된경우 지오메트리노드는 타임라인을 0 (SHT <)으로 한뒤 실행되야 초기화된다 

Noise에서 SetPosition전까지의 노드들을 모드 선택하고 Ctrl-G로 그룹핑하자 이름도 적당히 바꾸고 소켓이름도 적당히 바꾸자.

우측 리턴을 누르면 돌아온다. 다시 그룹으로 돌아갈때 노드 우상 링크를 누르면 된다.

StoreNamed과 NamedAttribute를 이용해 다음과 같이 연결한다. Velocity를 변수로 사용할것이다. 타입은 꼭 Vector로 하자

다음과 같이 이전점들을 Join해주면 점들이 지워지지 않고 노이즈점들이 추가된다

그런데 플레이 해보면 어느시점부터 움직임이 없다.  DistributePoint의 시드가 고정되서 그런데 SceneTime을 연결해주고 아까 그룹한 velocity안의 NoiseTexture의 Scale->0, Detail을 0으로 변경해주자

플레이하면 점들이 원래 영역밖으로 나가는걸 막기위해 GeometryProximity를 추가 Distance를 Compare를 추가 GreaterThan으로 설정 0,1로 한후 Result를

DeleteGeometyr로 연결 지워준다.

그럼 테두리로 삐져나오는 점들을 지워진다.

SimulationNode를 선택하고 N을 누른후 노드탭을 선택후 SimulationState의 +를 눌러 JointPoint를 추가하자.

Simulation 뒤에 JoinGeometry를 추가하고 

JointPoint와 GroupOutput을 연결해주면

점들이 조인트되는듯

사이에 Points to curves를 넣어주면 

모든 점들 사이에 커브가 생기는데

ID노드를 추가해서 같은 ID점끼리만 커브를 만든다

 

Simulation JointPoint사이에 Age라는 Attribute를 만들고 1씩 증가하게 해주고

 30이 넘으면 지워지게 Delete Geometry해준다.

물이 흐르는것 같이 보인다.

오리지날 Geometry쪽도

나이를 세는 로직을 넣어주고

역시 30 넘으면 지워주는 노드를 추가하자 이러면 저장되는 노드의 개수를 줄여 CPU 부담을 줄여준다.

2개의 GreaterThan을 60으로 GroupInput다음의 DistrubutePoints Density도60으로 하자