새로운 구속조건 편집기를 사용하여 장면에 있는 여러 객체 간의 동작과 관계를 제어할 수 있습니다. 프로그래밍에 대한 전문 지식 없이도 복잡하고 동적인 애니메이션과 상호 작용을 설계할 수 있습니다. 위치, 방향, 목표 또는 상위 구속조건을 만든 다음 장면 그래프 또는 해당 모듈에서 구속조건 편집기로 구속하려는 노드를 드래그 앤 드롭합니다.
동영상 캡션: 주 메뉴에 있는 구속조건 편집기를 사용하면 직관적인 드래그 앤 드롭 기능을 사용하여 위치, 방향, 목표 및 상위 구속조건을 만들 수 있습니다. 이 기능을 사용하면 정밀한 조작이 가능하므로 매우 사실적이고 반응성이 뛰어난 애니메이션과 움직임을 구현할 수 있습니다. 더하기 아이콘, 만들기 메뉴 또는 마우스 오른쪽 버튼 클릭 컨텍스트 메뉴를 사용하여 위치, 방향, 목표 또는 상위 구속조건을 만들 수 있습니다.
구속조건은 대상 노드와 구속된 노드로 구성되며, 장면 그래프 또는 다른 모듈에서 객체를 드래그하여 쉽게 할당할 수 있습니다.
목표 구속조건의 경우 카메라 편집기와 마찬가지로 상향 벡터 노드도 있습니다.
실제로 카메라 편집기에서 만든 목표 또는 목표 및 업이 있는 모든 카메라는 이제 목표 구속조건으로 표시되므로 구속조건 편집기 내에서 직접 쉽게 조정할 수 있습니다.
사용 가능한 구속조건 유형을 좀 더 자세히 살펴보겠습니다.
위치 구속조건은 객체가 하나 이상의 대상 객체 위치를 따르도록 합니다. 함께 이동하거나 서로를 동적으로 추적해야 하는 객체에 이상적입니다.
방향 구속조건은 객체의 회전을 잠가 객체가 대상의 방향과 정렬되도록 합니다. 이는 기어 매커니즘에서 부품 간 회전을 동기화할 때 특히 유용합니다.
목표 구속조건을 사용하면 객체가 계속 대상을 가리키도록 할 수 있습니다. 이는 카메라, 헤드라이트 또는 트래킹 시스템 등에 적합합니다. 또한 상향 벡터를 정의하여 객체의 방향을 안정화하고 원치 않는 반전을 방지할 수 있습니다.
상위 구속조건을 사용하면 객체가 다른 객체로부터 변환, 회전 및 배율을 상속하여 장면 그래프 계층을 변경하지 않고도 상위-하위 관계를 만들 수 있습니다. 이를 통해 계층적 동작은 유지하면서도 유연하게 제어할 수 있습니다.
구속조건은 여러 대상 노드를 사용할 수 있으며 각 대상에 가중치를 부여할 수 있습니다. 이를 통해 각 대상이 구속된 객체에 미치는 영향을 제어할 수 있습니다. 이는 모션을 혼합하거나 가중 평균을 만들 때 유용합니다.
또한 여러 개의 구속된 노드를 하나의 대상에 할당하여 하나의 객체가 여러 객체의 동작을 제어하도록 할 수 있습니다.
편집기에서 오프셋 유지 여부를 선택할 수 있습니다. 오프셋을 유지하면 제약된 객체가 대상에 대한 상대적 위치를 유지하고, 비활성화하면 대상의 변환을 직접 상속합니다.
또한 배율 조정 인자를 사용하여 변환을 반전하거나 배수로 적용할 수도 있습니다. 이는 기어 회전 시스템과 같이 동기화되지만 미러링된 모션에 이상적입니다.
추가로 변환 편집기를 사용하여 객체 제한을 설정할 수 있습니다. 이 기능을 사용하면 X, Y, Z축을 따라 변환, 회전 또는 배율 조정을 빠르고 효율적으로 제한할 수 있어 제어 및 정확도를 높이고 복잡한 설정을 더 쉽게 관리할 수 있습니다.
구속조건에 대한 자세한 내용은 다음을 참조하십시오.
구속조건 편집기는 다음으로 구성되어 있습니다.
메뉴 막대 - 평가 시퀀스 내보내기, 구속조건 만들기, 편집 및 선택하는 도구를 찾을 수 있습니다.
도구모음 - 자주 사용하는 도구에 빠르게 액세스할 수 있습니다.
기본 검색 및 필터링 - 특정 컨텐츠를 빠르게 찾을 수 있습니다.
구속조건 리스터 - 구속조건 컨텐츠를 시각적으로 구성하고 탐색하는 방법입니다. 노드를 확장 및 축소하여 특정 항목을 빠르게 찾을 수 있습니다. 기본 검색 및 필터링과 함께 구속조건 리스터 드롭다운을 사용하여 검색을 더 구체화할 수 있습니다. 또한 도구에 빠르고 편리하게 액세스하려면 마우스 오른쪽 버튼을 클릭하여 표시하는 컨텍스트 메뉴를 사용하십시오.
속성 패널 구속조건 활성화/비활성화, 설명 추가, 뷰포트에서 구속조건 표시 또는 숨기기, 가중치 설정 등의 작업을 수행할 수 있습니다. 자세한 내용은 속성 을 참조하십시오.

구속조건이 작동하고 설정되는 방식을 보려면 파일 > 예제 열기에서 예제 장면 파일을 확인하고 constraint_example.vpb를 연 다음 애니메이션 > 타임라인을 선택하여 애니메이션 타임라인을 표시하고
을 누릅니다.
구속조건 만들기
을 사용하고 만들 구속조건 유형을 선택합니다. 구속조건이 만들어지면 구속조건 리스터에 추가되고 조정 가능한 해당 속성이 오른쪽 패널에 로드됩니다. 장면 그래프 또는 다른 편집기에서 노드를 대상 및 구속된 노드로 드래그하여 구속조건 관계를 만듭니다.
을 클릭하고 만들 구속조건 유형을 선택합니다.
구속조건 리스터에서 새 구속조건을 확장합니다.
장면 그래프 또는 다른 편집기에서 하나 이상의 노드를 대상 노드로 드래그하여 대상 객체를 만듭니다. 다른 노드를 구속된 노드로 드래그하여 구속된 객체를 만듭니다.

이제 대상 객체(빨간색 레버)를 이동하면 구속된 객체도 따라갑니다.

(선택 사항) 구속조건 리스터에서 대상 및 구속된 노드의 상위를 선택하여 해당 설정을 수정합니다. 활성 여부를 설정할 수 있고, 이름을 바꿀 수 있으며, 설명을 추가할 수 있습니다. 구속조건 핸들이 표시되는지 여부와 해당 크기를 결정합니다. 드래그한 객체 노드를 선택하여 가중치를 변경합니다.
구속조건 선택
구속조건 핸들은 Shift + LMB를 사용하여 뷰포트에서 선택할 수 있지만 선택할 수 있을 만큼 충분한 크기이고 눈에 띄어야 합니다. 또한 구속조건 노드를 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 장면 그래프에서 객체 선택 > 장면 그래프를 선택합니다. 구속조건 핸들을 선택하면 해당 대상이 선택되고 뷰포트에서 노란색으로 강조 표시됩니다. 장면 그래프 및 구속조건 편집기(열려 있는 경우)에서 해당 노드가 선택되고 파란색으로 강조 표시됩니다.
도구모음에서 변환 및 경계가 활성화되어 있는지 확인합니다.
구속조건 편집기에서 상위 노드를 확장하고 구속조건 노드를 선택합니다. 예에서는 Arrows 폴더가 확장되고 Orientation Constraint 노드가 선택되어 있습니다.

‘구속조건 표시’가 선택되어 있는지 확인하고 배율을 더 큰 값(예: 300)으로 늘려 구속조건 핸들을 쉽게 보고 선택할 수 있도록 합니다.
| 배율 조정 = 100 | 배율 조정 = 300 |
|---|---|
![]() |
![]() |
이제 Shift + LMB로 구속조건 핸들을 선택하거나 구속조건 노드를 마우스 오른쪽 버튼으로 클릭하고 객체 선택> 장면 그래프를 선택합니다.
구속조건 저장
구속조건이 만들어지고 파일 > 저장 또는 다른 이름으로 저장을 사용하여 장면을 .vpb로 저장하면 구속조건이 형상 자산에 유지되고 장면으로 다시 로드될 때 예상대로 작동합니다.
클리핑 평면 구속
구속하고 이동할 클리핑 평면을 설정하려면 월드-로컬 접근 방식을 사용하십시오. 이렇게 하면 월드 변환이 계산되지만, 클리핑 평면에 로컬로 구속조건이 적용됩니다. 따라서 상위 구속조건을 사용하여 클리핑 평면을 다른 노드에 구속하고 이동할 수 있습니다.
구속조건 편집기에서 구속조건이 만들어지면 이를 확장하여 구속된 노드를 표시합니다.
장면 그래프에서 구속조건 편집기의 구속된 노드로 클리핑 평면을 드래그 앤 드롭합니다.
구속조건 편집기에서 클리핑 평면을 선택한 다음 변환 적용 속성 섹션에서 시작 대상을 월드로 설정하고 구속조건 적용을 객체로 설정합니다.

구속조건 작성 및 삭제 실행 취소
구속조건은 UI를 통해 작성을 취소하거나 삭제를 취소할 수 없습니다. 그러나 Python을 사용하면 vrConstraintService로 구속조건 작성 및 삭제를 취소할 수 있습니다.
평가 시퀀스 내보내기
‘평가 시퀀스 내보내기’를 사용하여 장면에 적용된 모든 구속조건을 단일 구속조건 파일로 내보낼 수 있습니다. 예를 들어, 이 파일을 사용하여 구속조건 세트 내에서 구속조건을 공유, 순서 재지정 및 활성화/비활성화합니다. 이 파일은 다른 사용자와 공유할 수 있습니다.
제한 설정
변환 편집기에 목표 구속조건을 위한 이동, 회전 및 배율 조정 제한이 추가되었고 카메라 편집기 > 카메라 설정 > 조망 섹션에 카메라의 이동을 제한하기 위한 이동 제한 및 회전 제한이 추가되었습니다. 이를 통해 대상의 이동, 회전 및 배율 조정에 대한 제한을 설정하여 해당 변환을 설정된 범위로 제한합니다. 이를 구속조건과 함께 사용할 수 있지만 대상 또는 구속조건 노드를 제한하는 데 반드시 필요한 것은 아닙니다. 시작/끝 제한으로 정의하여 X, Y 및 Z축을 따라 이동, 회전 및 배율 조정을 빠르게 제한합니다. 빨간색은 X, 초록색은 Y, 파란색은 Z입니다.
장면 그래프에서 확장 열을 사용하여 제한이 있는 노드를 식별합니다(
).

아이콘을 두 번 클릭하면 노드가 선택되고 제한 섹션이 표시된 상태로 변환 편집기가 열립니다.

장면 그래프에서 제한할 노드를 선택합니다.
신속 접근 도구모음에서 변환을 선택하여 변환 편집기를 엽니다.
변환 편집기에서 노드를 선택한 상태로 속성의 기본 탭에서 변환을 제한할 섹션을 확장합니다. 예를 들어, 이동 섹션을 확장합니다.
제한 섹션 앞의 상자를 클릭하여 활성화한 다음 섹션을 확장하고 제한을 설정합니다.
