개요
주어진 2개의 메쉬를 통해 연산을 하는 클래스이다.
프로퍼티
const FDynamicMesh3* Meshes [ 2 ];
const FTransformSRT3d Transforms[ 2 ];
연산의 종류
표
| 타입 | 설명 |
|---|
| Union | A, B 메쉬를 하나로 합친 결과를 반환한다. |
| Difference | A 메쉬에서 B 메쉬를 제거한 결과를 반환한다. |
| Intersect | A, B 메쉬의 겹친 부분을 반환한다. |
| TrimInside | A 메쉬에서 B 메쉬를 제거한다. 별도의 결과가 반환되는 것이 아닌 A 메쉬가 변경된다. |
| TrimOutside | A 메쉬에서 B 메쉬의 영역만 남긴다. 별도의 결과가 반환되는 것이 아닌 A 메쉬가 변경된다. |
| NewGroupInside | A 메쉬에서 B 메쉬 부분을 분리한다. 분리된 부분은 삭제하지 않고 새로운 그룹으로 추가된다. |
| NewGroupOutside | A 메쉬에서 B 메쉬 부분이 A 메쉬가 되고 나머지 부분이 새로운 그룹으로 추가된다. |
원본 링크
옵션 관련 프로퍼티
| 프로퍼티 | 설명 |
|---|
| SnapTolerance | 정점이나 엣지에 있는 점을 고려할 때의 허용 거리, 특히 메시-메시 절단 시 사용 |
| bCollapseDegenerateEdgesOnCut | 절단 과정에서 생성된 퇴화 엣지를 제거하기 위한 추가 처리 수행 여부 |
| DegenerateEdgeTolFactor | 절단 과정에서 생성된 짧은 엣지를 제거하기 위한 허용 오차 계수 (SnapTolerance에 곱해짐), 최대 2 이하여야 함 |
| WindingThreshold | 한 메시의 삼각형이 다른 메시의 내부 또는 외부에 있는지 판단하는 임계값 |
| bPutResultInInputSpace | 결과 메시를 입력과 같은 공간에 배치, true일 경우 ResultTransform은 단위 변환이 됨 |
| bWeldSharedEdges | 입력 메시들이 만나는 지점에서 새로 생성된 절단 엣지를 용접, false일 경우 입력 메시들은 위상적으로 분리된 상태 유지 |
| bTrackAllNewEdges | 새로운 엣지 추적 여부 제어 |
| Progress | 실행 중인 작업을 취소할 수 있도록 설정 |
| bSimplifyAlongNewEdges | 불린 연산이 생성하는 작은 평면 삼각형들을 자동으로 단순화할지 제어 |
| SimplificationAngleTolerance | 여전히 단순화할 동일 평면으로부터의 편차 각도 (도 단위) |
| TryToImproveTriQualityThreshold | 삼각형 품질(종횡비)이 이 임계값보다 나쁜 경우, 품질을 개선하는 방식으로만 단순화. ≤ 0이면 삼각형 품질 무시 |
| bPreserveTriangleGroups | 단순화 과정에서 삼각형 그룹 왜곡 방지 |
| bPreserveVertexUVs | 단순화 과정에서 정점 UV 왜곡 방지 |
| bPreserveOverlayUVs | 단순화 과정에서 오버레이 UV 왜곡 방지 |
| UVDistortTolerance | UV 보존 시, 제거된 정점에서 측정된 엣지 축소로 인한 UV 좌표의 최대 허용 변화량 |
| bPreserveVertexNormals | 단순화 과정에서 정점 법선 왜곡 방지 |
| NormalDistortTolerance | 법선 보존 시, 제거된 정점에서 측정된 엣지 축소로 인한 법선의 최대 허용 변화량 (도 단위) |
| PreserveUVsOnlyForMesh | -1보다 크면 입력 메시 중 하나의 UV만 보존. 아티스트가 제작한 에셋을 절차적 지오메트리로 절단할 때 유용 |
Functions