목차
- Group Node
- 알아두면 좋은 그룹 관련 노드들
- 일기
모든 랭글러를 위하여!
어떠한 셋팅을 하지 않은 상태에서 그룹 노드를 연결하면 일단 모든 것을 선택하게 되어있다.
우리가 원하는 특정 포인트 혹은 특정 프리미티브를 골라서 그룹으로 만들려면?
Group Node
Parameter
- Group Name : 그룹의 이름 지정
- Group Type
- Scene View에서 노란색으로 그룹으로 묶인 내용을 확인할 수 있다.
- Geometry Spreadsheet에도 그룹으로 묶인 인자들은 주황색으로 나타난다.
※ 원하는 포인트에 대해 그룹을 생성하는 방법
- Scene View에서 그룹을 생성하고자 하는 포인트들을 직접 선택해서 그룹 생성
- Base Group에 구체적인 숫자를 입력해서 그룹 생성
- Base Group
- 단일 숫자 : 숫자에 해당하는 포인트 번호를 가진 포인트가 그룹에 포함됨 ex) 0 1 2...
- 범위 지정 : 범위에 해당하는 포인트 번호를 가진 포인트가 그룹에 포함됨 ex) 0-4 = 0번부터 4번 포인트까지 그룹에 포함됨
- 섞어 쓰기 : 단일 숫자와 범위지정을 섞어서 쓰는 것도 가능하다. ex) 0-4 13 6-8
- 섞어서 사용하거나 단일 숫자를 기입할 경우, 구분은 띄어쓰기로 들어간다. 평소 하던 습관처럼 콤마(,)를 숫자 뒤에 찍고 띄어쓰기를 한 뒤 다른 숫자를 기입했는데 인식을 했다. 하지만 띄어쓰기 없이 콤마 뒤 바로 숫자를 적었을 경우엔 인식을 못했다.
- 0, 1, 2 → 0번부터 2번 포인트가 그룹에 추가되었다.
- 0,1,2 → 0번 포인트 뒤에 적힌 내용은 다 무시되었다.
- 섞어서 사용하거나 단일 숫자를 기입할 경우, 구분은 띄어쓰기로 들어간다. 평소 하던 습관처럼 콤마(,)를 숫자 뒤에 찍고 띄어쓰기를 한 뒤 다른 숫자를 기입했는데 인식을 했다. 하지만 띄어쓰기 없이 콤마 뒤 바로 숫자를 적었을 경우엔 인식을 못했다.
※ 그룹은 Attribute와 매우 유사하다.
※ 지오메트리 시트에서 그룹에 표시된 0, 1 은 각각 미포함, 포함을 나타낸다.
※ Select mode인 경우, 원하는 포인트를 드래그하고 엔터를 입력해주면 그룹에 포함된다. (엔터를 입력해주면 Scene View는 Select mode에서 View mode로 바뀐다.)
※ Select mode 진입 후 셀렉션이 끝나고 엔터를 입력하는 것을 잊는 경우가 종종 있다. 그룹 노드 색상으로 확인 가능하니 꼭 확인하자.(중요함)
※ Select mode에서 다른 포인트를 그룹에 '추가'하고자 할 경우, Shift + 드래그해주면 된다. Shift를 누르지 않으면 기존에 그룹에 들어있던 내용은 사라지고 새로 선택하게 된다.
- Keep in Bounding Regions
※ Group Type에 따라 Keep in Bounding Regions가 작동할수도 안 할 수도 있다.
- Box, Sphere 는 Points, Primitives 상관없이 작동한다.
- Object, Volume 은 Points, Vertices에서만 작동한다.
- Size로 임의의 영역의 크기를 조정할 수 있다.
- Center로 임의의 영역의 위치를 조정할 수 있다.
- 문득 든 생각은 Center에 애님 값을 입력하면(x에 cos($F), z에 sin($F) 이런 식으로) 어찌 될까 했는데, 시간에 따라 그룹에 추가되었다가 빠졌다가 하는 것을 확인할 수 있었다.
- Bounding Object
- 그룹의 두번째 인풋노드에 들어온 오브젝트를 사용해서 영역 지정.(오브젝트가 겹쳐지는 부분에 대해 그룹화)
- Bounding Volume
- 입력된 볼륨 데이터를 사용해서 영역을 지정
- 볼륨의 해상도가 낮으면 내가 원하지 않는 영역들도 그룹화될 수 있다.(isooffet의 Uniform Sampling Divs 수치 등)
※ isooffset node : 입력된 지오메트리를 볼륨으로 치환한다.
- Keep by Normals
- Direction과 Spread Angle을 가지고 만들어지는 노멀의 영역 안에 원본 데이터의 노멀을 비교해서 노멀값이 포함된다면 그룹화
- ex) Direction이 0,0,1 / Spread Angle이 30일 경우, 벡터 0,0,1에 대해 30도에 해당하는 원뿔이 형성된다. 원본 노멀이 -30 ~ 30 안에 있다면 그룹에 포함된다.
- Spread Angle이 0일 경우 = 아무것도 그룹에 포함되지 않음 / Spread Angle이 180일 경우 = 모든 영역이 그룹에 포함됨
- Direction과 Spread Angle을 가지고 만들어지는 노멀의 영역 안에 원본 데이터의 노멀을 비교해서 노멀값이 포함된다면 그룹화
- Include by Edges
- Group Type 에 따라 선택 및 사용가능한 항목이 다르다.
- 얼마나 면이 급격하게 꺾여있는지를 계산해서 그룹화
- Unshared Edges 를 활성화하면 테두리의 포인트/엣지/프리미티브 가 선택된다.
알아두면 좋은 그룹관련 노드들
Group by Range
- 파라미터를 건들지 않을 경우에는 일반 그룹 노드를 연결한 것과 차이가 없다.
- 그룹을 선택해주는 방식 자체는 Range Type에서 설정할 수 있다.
- Relative to Start/End
- Start = 0 / End = 0 -> 전체 선택, Start = 5 / End = 3인 경우, 숫자만큼 앞 / 뒤로 그룹에서 해제된다.
※ 그룹에 대해서도 애니메이션은 잘 작동한다.
- Range Filter : Select A of B(B개씩 잘라내고, 그중에서 A개를 선택하라)
- Offset은 데이터를 선택하는 위치를 정해주는 것/몇번째 데이터를 선택하라는 뜻(0부터 시작)
Group Combine
- 그룹을 합쳐주거나(합집합) 겹쳐진 부분만 선택해주거나(교집합) 그룹을 빼주거나(차집합) 할 수 있는 노드
- Combine을 활용하기 위해서는 우선적으로 그룹이 정의되어있어야 한다.
- Group 은 결과그룹을 의미한다. Combine 작업된 내용이 결과그룹의 네이밍으로 그룹화된다.
- Combine 노드의 작업을 수행하고, 결과를 D 라는 그룹으로 만들어준다는 것
- 제일먼저 그룹 D는 A이다(Equals)가 수행된다. 그리고 그것은 그룹 B와 합집합 연산을 수행한다.
- Equals 왼쪽의 Group에 이미 생성된 그룹 네이밍이 들어가게 되면 해당 그룹으로 덮어쓰기를 하게 된다.
- Equals 오른쪽에는 여러 그룹을 나열할 수도 있다.
- Union(Or) : 합집합 / Intersect(And) : 교집합 / Exclusive Or : 합집합 - 교집합 / Subtraction : 차집합
Blast Node : 그룹으로 묶여진 것들에 대해 따로 떼어내서 가공할 수 있도록 해준다.
Group : 선택하려는 그룹의 이름
Delete Non Selected : 체크해제되어있을 경우, Group에 적혀있는 데이터가 삭제되어 표시되고, 체크되어있을 경우 그룹을 제외한 데이터가 삭제되어 표시된다.
Group Copy
- 두 오브젝트가 필요하다.
- 그룹카피의 두번째 인풋으로 레퍼런스 오브젝트가 들어가게 된다.
- 레퍼런스 오브젝트가 가지고 있는 그룹의 정보를 원본에 복사할 수 있다.
- 그룹 카피의 정확도를 높이기 위해서는 (이왕이면) 레퍼런스 오브젝트와 원본 오브젝트의 Point 숫자 / Primitive 숫자가 같아야 한다.
- 왜냐하면 포인트/프리미티브 번호에 대응되어서 그룹이 복사되기 때문이다.
- Group Copy Parameter
- 체크가 활성화 되었다는 뜻은 그 그룹을 가져와서 복사하겠다는 뜻이다.
- Parameter를 활용하면 레퍼런스 오브젝트에서 내가 원하는 특정그룹만 복사해서 원본에 넘길 수 있다.
- Group Name 이 원본에 같은 것이 존재할 경우, Group Name Conflict에 따라 작업을 수행한다.
- 원본 오브젝트에 같은 이름의 그룹이 존재할 수 있으므로, 처음부터 접두사를 사용해서 그룹카피를 해주는 것도 가능하다.
Group Promote
- 노드를 연결한다고 해서 바로 어떠한 작업을 수행하는 것은 아니다.
- 그룹타입을 변경해서 다시 그룹화시켜준다.
- Group Promote를 활용하면 위에서 배운 Group 방법 중 Keep in Bounding Regions의 Bounding Object를 좀 더 적극적으로(?) 사용할 수 있다.(포인트로 그룹화한 내용을 Promote를 사용해서 Primitives 로 타입변경 가능!!)
- Group Promote Parameter
- Keep Original Group : 활성화해줄 경우, Promote 를 활용해서 타입 변경을 진행한 뒤에도 원본 그룹이 유지된다.
- Include Only Elements on the Boundary :활성화해줄 경우, Boundary(경계면)의 요소들만 그룹화해준다.
- Output as Integer Attribute : 활성화해줄 경우, 타입 변경을 진행한 뒤 그룹으로 저장하는 것이 아닌, Integer Attribute로 데이터를 저장한다.(아래 사진의 오른쪽 주목)
- Include Only Elements Entirely Contained in Original Group : Points 그룹을 Primitives 그룹으로 Promote를 적용할 경우, 원치 않는 데이터가 포함될 수 있다.(해당 포인트에 인접하는 프리미티브가 다 선택되기 때문) 해당 항목을 활성화해줄 경우, 원본 그룹에 완전히 포함되어있는 요소만 그룹화한다.
오늘은 그룹에 대해 배웠다.
이런저런 튜토리얼을 따라 해보면서 그룹 노드를 사용하는 것을 여러 번 보긴 했지만, 다른 노드들에 대한 활용 방법도 알 수 있어서 더욱 좋았고, Group Copy와 Group Promote는 머릿속에서 떠오른 것에 대해 조금은 활용해볼 수 있을 것 같다는 생각이 들었다.
'Houdini > Houdini1_Starter' 카테고리의 다른 글
STARTER03_Mantra(Material, Group) (1) | 2023.01.10 |
---|---|
STARTER02_Part3. Group Exercise (2) | 2023.01.07 |
STARTER02_Part2. Group Exercise (0) | 2023.01.05 |
STARTER02_Part1. Group Exercise (0) | 2023.01.05 |
Houdini 1 Starter_00 (0) | 2023.01.02 |