이 항목에서는 컨테이너를 사용할 수 있는 일반적인 시나리오에 대해 설명합니다.
워크플로우: 오브젝트를 컨테이너에 그룹화하고, 단일 엔티티로 변환하고, 복사본을 만들고, 복사본을 업데이트하고, 별도 개발을 위해 컨테이너를 분기합니다.
컨테이너가 열린 상태로 표시됩니다. 열린 컨테이너는 편집이 완전히 가능합니다.
추가한 오브젝트는 하위 오브젝트로 컨테이너에 연결됩니다.
두 개의 아파트 모델이 컨테이너에 추가됨
컨테이너를 변경하면 해당 내용에도 영향을 줍니다.
컨테이너 내용이 장면에 재배치됨
컨테이너 내용이 뷰포트에 여전히 표시되지만 결과적으로는 장면에서 제거된 것입니다(예를 들어, 내용을 선택하려고 하면 대신 컨테이너가 선택됨). 이제 장면이 저장된 위치에서 Block_A.maxc 파일을 참조합니다.
모든 컨테이너에서 동일한 Block_A.maxc 파일을 참조합니다.
원본 Block_A 컨테이너(맨 왼쪽) 및 두 개의 복사본(가운데 및 오른쪽)
다른 컨테이너에서 특정 컨테이너의 정의를 편집하는 동안에는 해당 특정 컨테이너를 열 수 없다는 메시지가 표시됩니다. 이 기능은 변경된 컨테이너를 실수로 덮어쓰는 일이 없도록 해줍니다.
다른 컨테이너에서 동일한 MAXC 파일을 참조하므로 해당 컨테이너도 업데이트됩니다.
모든 컨테이너에 추가한 오브젝트가 수신됨
이제 Block_B 컨테이너가 자체 개발을 위해 분기됩니다. 이후 변경 사항은 사본에 적용되지 않습니다.
Block_B 컨테이너(맨 오른쪽)가 분기됨. Block_A 컨테이너(왼쪽 및 가운데) 업데이트에 의해 영향을 받지 않음.
워크플로우: 다른 사용자의 내용을 상속하고, 변경 사항을 원래 작성자에게 전달하고, 로컬 개발을 위해 참조된 컨테이너에서 분기합니다.
컨테이너는 사용자 A의 장면에서 저장되었던 위치에 나타납니다. 이때 사용자 B는 해당 컨테이너를 사용할 수 있지만 내용에는 액세스할 수 없습니다.
사용자 B(오른쪽)가 사용자 A(왼쪽)의 컨테이너를 상속함
컨테이너를 닫기 전 사용자 A의 건물(왼쪽)에 대한 변경 사항
컨테이너는 닫힐 때 자동으로 저장됩니다. 컨테이너가 저장되고 상속된 컨테이너에 대해 닫을 시 자동 업데이트가 켜지면 사용자 B는 사용자 A가 내용을 닫는지 여부에 관계없이 내용 변경 사항을 상속합니다.
사용자 A의 변경 사항을 상속한 후 사용자 B의 컨테이너(오른쪽)
사용자 B의 컨테이너에 대한 업데이트 버튼 옆에 있는 경고 아이콘에 업데이트가 필요하다는 메시지가 표시됩니다. 자동 업데이트는 변경된 내용에만 적용되고 컨테이너 자체의 변경된 설정에는 적용되지 않습니다.
위치에서 편집 버튼을 사용할 수 있게 되므로 사용자 B는 이 버튼을 클릭합니다.
컨테이너가 닫히고 사용자 A의 소스 정의를 덮어씁니다. 다음에 작성자나 컨테이너를 참조하는 다른 사용자가 컨테이너를 로드하면 사용자 B의 변경 사항이 표시됩니다.
사용자 A가 사용자 B의 변경 사항을 상속함
내용 상속 롤아웃에서 사용자 B가 소스 정의 병합을 클릭합니다. 이제 내용이 로컬이 되고 외부 소스에서 상속된 것이 아니라 현재 장면에서 처음부터 만들어진 것처럼 동작합니다. 컨테이너는 이제 분기되며 어떤 규칙에 의해서도 액세스가 제한되지 않습니다.
복사한 컨테이너(오른쪽)가 분기되고 다른 프로젝트에서 사용됨
워크플로우: 컨테이너를 닫고, 컨테이너를 언로드하여 해당 내용을 장면에서 제거하고, 컨테이너 도우미를 장면의 다른 영역으로 이동하고, 컨테이너를 다시 로드하여 새 위치에 해당 내용이 표시되도록 합니다.
컨테이너가 디스크에 저장되고, 해당 내용이 뷰포트에는 표시되지만 장면에서 제거됩니다. 장면 성능이 향상됩니다. 이제 장면 파일을 저장하고 다시 로드할 때는 물론 자동 저장할 때도 시간이 단축됩니다.
저장된 3개의 로컬 컨테이너를 사용한 도시 장면
한 컨테이너를 언로드한 상태의 도시 장면
컨테이너 내용이 새 위치에 다시 나타납니다.
거리 아래로 이동된 컨테이너
다시 로드된 컨테이너 내용
이렇게 하면 복잡한 장면이나 데이터 양이 많은 장면에 내용을 빠르게 포함시키고 제외시킬 수 있습니다.
워크플로우: 컨테이너를 만들어 두 번째 컨테이너를 내부에 배치하고, 주 컨테이너를 편집할 수 있도록 허용하고, 다른 사용자의 편집을 방지하기 위해 중첩된 컨테이너를 상속합니다.
도시 블록 하나의 오브젝트가 추가된 컨테이너(오른쪽)
이제 사용자 A는 상위 컨테이너와 내부에 중첩된 다른 컨테이너를 갖고 있습니다.
고층 건물 컨테이너(왼쪽)가 내부에 중첩된 주 컨테이너(오른쪽)
이제 고층 건물 컨테이너가 주 컨테이너로 상속되며 해당 내용에 대한 액세스는 금지됩니다.
사용자 B(맨 아래)가 사용자 A(맨 위)로부터 컨테이너를 상속함
이전에 편집할 수 없었던 컨테이너가 열리지만 더 이상 작성자의 소스 컨테이너를 참조하지 않습니다. 이제 사용자 B는 자신의 장면에 대해 컨테이너 내용을 로컬에서 수정할 수 있습니다.
사용자 B는 사용자 A의 작업을 기반으로 계속 로컬에서 작업함
워크플로우: 특정 컨테이너에서 작업하고 장면 내용의 나머지 부분을 숨길 수 있도록 컨테이너 디스플레이를 설정합니다. 장면의 디스플레이 구성을 영구적으로 변경하지 않고 디스플레이 설정을 변경합니다.
이렇게 하면 각 오브젝트가 어떤 컨테이너에 속하는지 쉽게 식별할 수 있습니다.
3개의 컨테이너와 해당 내용의 범위를 표시하는 해당 경계 상자
램프 오브젝트 레이어가 표시된 장면
맨 왼쪽 컨테이너의 디스플레이 특성이 다른 숨겨진 오브젝트 레이어를 재정의함
컨테이너 탐색기나 도구 컨테이너 하위 메뉴에서 선택한 컨테이너의 오브젝트 특성을 쉽게 재정의할 수 있습니다.
뒤에 있는 오브젝트를 표시하기 위해 왼쪽 컨테이너 오브젝트 디스플레이 특성이 투명으로 설정됨
왼쪽 및 오른쪽 컨테이너의 렌더 기능이 꺼짐
장면의 렌더링 가능 내용은 개별 오브젝트 또는 레이어 설정이 아니라 컨테이너에 의해 결정됩니다.
워크플로우: 사용자 A는 사용자 B로부터 컨테이너를 상속하고, 사용자 B는 사용자 A로부터 컨테이너를 상속하며, 각 사용자가 업데이트를 클릭하여 상대방의 작업을 최신 상태로 유지합니다. 두 사용자는 해당 컨테이너에 대해 위치에서 편집 허용을 클릭하여 외부 사용자가 변경하는 것을 허용합니다.
사용자 A의 장면(위쪽) 및 사용자 B의 장면(아래쪽)
이제 사용자 A와 B가 병렬로 작업할 수 있습니다. 두 사용자는 장면의 해당 구성요소를 개발하는 동시에 상대방의 작업 진행 상황을 확인할 수 있습니다.
사용자 A(위쪽)와 사용자 B(아래쪽)가 서로의 장면 구성요소를 상속함
사용자 B가 키를 추가하여 사용자 A의 도시 부분으로 애니메이션을 확장함
사용자 A가 사용자 B의 변경 사항을 상속합니다.