시뮬레이션 시스템
일반
새로운 시뮬레이션 기술의 도입으로 Maxon은 Cinema 4D의 새로운 다이나믹스 시스템을 위한 기반을 마련했습니다. 리지드/소프트 바디, 의복, 스플라인('로프') 시뮬레이션 등 가능한 모든 유형의 신체 동작을 계산할 수 있는 시스템입니다. 또한 파이로 시스템도 이 범주에 속하며 연기, 화재 및 폭발을 시뮬레이션할 수 있습니다.
현재 태그 메뉴 시뮬레이션 태그에서 찾을 수 있는 모든 태그는 새로운 시뮬레이션 시스템에서 작동합니다:
-
리지드 바디는 중력과 충돌의 법칙을 따르는 변형이 불가능한 단단한 물체입니다. 폴리곤 오브젝트와 폴리곤 생성 생성자에 할당할 수 있습니다.
-
클로스, 부드러운 몸체, 풍선: 폴리곤 오브젝트와 폴리곤 생성자에 할당할 수 있습니다. 소프트 바디와 풍선도 천 태그를 사용하지만 프리셋이 다릅니다.
-
로프 (이전의 스플라인 다이나믹스 태그): 스플라인에 할당할 수 있습니다.
-
커넥터: 로프나 의류 태그를 착용한 물체와 리지드 바디에 할당되어 서로 연결됩니다.
-
클로스 벨트 (이전의 벨트 태그): 천 태그가 할당된 오브젝트에 할당되며, 이 오브젝트를 다른 시뮬레이션되지 않은 폴리곤 오브젝트에 연결합니다.
-
로프 벨트 (이전의 헤어 컨스트레인트 태그): 로프 태그가 할당된 오브젝트에 할당되며, 이 오브젝트를 다른 시뮬레이션되지 않은 폴리곤 오브젝트와 연결합니다.
-
충돌: 시뮬레이션되지 않은 폴리곤 오브젝트와 폴리곤 생성 제너레이터에 할당되어 시뮬레이션 시스템의 장애물 역할을 합니다. 즉, 오브젝트가 충돌할 수 있지만 관통하지 않습니다.
-
파이로: 폴리곤 또는 스플라인 오브젝트를 연기 및 화재의 이미터 또는 폭발의 출구 영역으로 지정할 수 있습니다. 파라미터의 프리셋은 연기와 화염을 생성합니다.
-
파이로 연료: 파이로 태그와 동일하지만 여기서는 폭발을 생성하도록 프리셋이 이미 조정되어 있다는 점이 다릅니다.
새로운 클로스/스플라인 시뮬레이션 시스템은 내부적으로 기존 시스템과 다르게 작동합니다. 다음과 같이 다릅니다:
-
기존 시스템: 기존 시스템은 가속도 및 속도 증가를 초래하는 충동과 힘을 기반으로 합니다. 질량과 스프링이 큰 역할을 했습니다.
-
새로운 시뮬레이션 시스템: 오브젝트 포인트는 애플리케이션 영역에 따라 특정 규칙(컨스트레인트)으로 연결됩니다. 예를 들어 의류에는 메쉬 엣지로 연결된 점에 대한 거리 제약 조건과 인접한 메쉬 폴리곤에 대한 굽힘 제약 조건이라는 두 가지 주요 유형의 제약 조건이 있습니다. 전자는 점 간 거리를 일정하게 유지하고, 후자는 폴리곤 사이의 각도를 유지하려고 합니다. 예를 들어, 서로 너무 가까이 있는 점(또는 엣지, 삼각형)을 부드럽게 떨어져서 관통하지 않도록 하는 접점 제약 조건이 있습니다. 솔버는 각 애니메이션 이미지에 대해 이 모든 것을 조정하고 그에 따라 포인트를 배치해야 합니다.
이 모든 것이 복잡하게 들리지만 결국 다음과 같은 장점으로 귀결됩니다. 새로운 시뮬레이션 시스템은 더 빠르고(예를 들어 GPU에서도 계산 가능), 더 정확하고, 더 사실적이며, 더 안정적이고, 더 사용하기 쉽습니다. 또한 새 시스템을 사용하여 다음과 같은 작업을 수행할 수 있습니다:
-
대부분의 시뮬레이션 포스 오브젝트는 작동합니다.
-
찢rla 기능에는 클로스 표면 오브젝트가 필요하지 않습니다.
-
천 태그가 할당되는 오브젝트는 더 이상 폴리곤일 필요가 없으며 생성자일 수도 있습니다.
-
배열 또는 클로너 오브젝트와 같은 제너레이터를 복제하는 경우 시뮬레이트 태그는 이 제너레이터에 속하며, 각 클론에는 이러한 속성이 할당됩니다. 일반적인 계층구조에서는 시뮬레이션에 참여하려면 각 자손 오브젝트에 시뮬레이트 태그가 제공되어야 하므로 여기서는 부모 오브젝트 이동에 관한 계층구조가 제거됩니다(자식오브젝트에 대한 파이로 이미터의 상속에는 적용되지 않음).
새로운 시뮬레이션 시스템에는 일반적으로 시뮬레이션 시스템에서 볼 수 있는 기본 솔버 설정이 있으며, "프로젝트 설정/시뮬레이션"에서 찾을 수 있습니다. 이러한 프리셋은 시뮬레이션의 동작에 자연스럽게 영향을 미치므로 시뮬레이션 프로젝트 설정과 동일한 파라미터를 가진 여러 시뮬레이션 씬 오브젝트를 사용하여 여러 시뮬레이션에 서로 다른 프리셋을 적용할 수 있습니다. 그런 다음 시뮬레이션 씬 오브젝트에 다양한 태그, 힘, 천 벨트 또는 충돌 오브젝트를 할당할 수 있습니다. 시뮬레이션 씬 오브젝트에 할당된 태그는 서로 상호 작용하지만 다른 시뮬레이션 씬 오브젝트의 태그와는 상호 작용하지 않습니다.
클로스, 풍선 및 소프트 바디 시뮬레이션을 위한 팁과 요령
-
시뮬레이션을 시작할 때 두께 설정을 고려하여 연락처가 없어야 합니다. 그렇지 않으면 시뮬레이션이 시작될 때와 단일 애니메이션 프레임 내에서 주름이나 떨림을 유발할 수 있는 모든 것이 접촉 영역 밖으로 이동합니다.
-
움직임이나 변형이 너무 빠르거나 갑작스럽게 변화하면 충돌 시 관통이 발생할 수 있습니다. 일반적으로 하위스텝 설정을 늘리는 것이 도움이 됩니다.
-
월드 원점에서 멀리 떨어진 시뮬레이션 요소의 경우 수학적 반올림 오류(GPU는 CPU의 64비트 대신 32비트로 계산)가 발생할 수 있으며, 이는 이상한 시뮬레이션 동작(예: 동일한 설정에서 서로 다른 의상 동작, 서로 멀리 떨어져 있는 두 개의 깃발이 완전히 다르게 펄럭이는 경우)으로 나타날 수 있습니다. 여기에는 구제책을 제공하는 여러 가지 옵션이 있습니다.
- 장면 크기를 변경합니다(씬 크기조절... ).
- 시뮬레이션에 참여하는 객체를 세계 원점에 더 가깝게 이동합니다.
- 특히 힘 오브젝트와 관련하여: 시뮬레이션된 요소나 작용하는 힘의 질량을 증가시킵니다. 힘 오브젝트를 비활성화질량 고려하는 데도 도움이 될 수 있습니다. -
예를 들어, 물리적 텍스타일의 동작을 제어하는 것은 쉽지 않습니다. 직물은 주로 뻣뻣함 또는 뻣뻣함의 부족이 특징입니다. 새로운 시뮬레이션 시스템에는 굽힘 설정이 있지만 강성에 영향을 미치는 일련의 요소에 따라 달라집니다. 예를 들어 중간 단계, 반복 (두 시뮬레이션 프로젝트 설정), 유연성, 신축성 (의류 또는 로프 태그), 메쉬 밀도 등이 이에 해당합니다. 따라서"구부러짐 = 1이고 물체는 가죽처럼 행동한다"와 같은 포괄적인 진술은 할 수 없습니다.
-
방금 언급한 메쉬 밀도와 분포도 시뮬레이션의 동작에 큰 영향을 미칩니다.
이 이미지에서 직경이 같고, 천 태그 설정이 정확히 같지만 메쉬가 다른 5개의 구체를 볼 수 있습니다. 레이어에 떨어지거나 충돌할 때 이러한 오브젝트는 완전히 다른 방식으로 작동합니다. 메쉬 밀도가 높은 두 번째에서 마지막 구는 다른 구보다 훨씬 더 많이 변형되며, 오른쪽에 있는 구는 메쉬 밀도가 훨씬 높아 질량이 집중됩니다. 이렇게 하면 바닥에 닿을 때 아래쪽과 오른쪽으로 회전하게 됩니다.
-
시뮬레이션이 저해상도 대리(프록시) 오브젝트로 작동하는 경우 계산 시간을 절약할 수 있으며, 예를 들어
메쉬 디포머는 변형이 고해상도 '뷰티' 오브젝트로 전송되도록 합니다. 환경설정 메뉴의 생성자 전 계산하기 에도 주목하세요.
-
드물지만 동시에 너무 많은 충돌이 발생하면 해당 오류 메시지와 함께 시뮬레이션이 중지될 수 있습니다. 이러한 경우 충돌에 관련된 오브젝트에 더 낮은 해상도를 사용하거나 더 낮은 해상도의 프록시 오브젝트를 충돌시키도록 해야 합니다. 또는 프로젝트 설정에서 패스 값을 높이면 동시 충돌 횟수가 줄어듭니다( 속도 제한 참조).
제한)
-
그래픽 카드(GPU)의 계산 속도에 대한 이점은 시뮬레이션이 충분히 복잡한 경우에만 눈에 띄게 나타납니다. 폴리곤이 수백 개만 사용되는 작은 씬의 경우 CPU가 더 빠를 수 있습니다.
-
GPU를 사용하여 계산하는 경우 시뮬레이션 시작이 약간 지연될 수 있습니다. 이 시간 동안 많은 양의 데이터가 컴파일되거나 그래픽 카드 메모리에 로드됩니다. 이는 처음 시작할 때만 발생합니다.
-
시뮬레이션은 컴퓨터마다 다른 결과를 생성합니다. CPU 또는 GPU에서 시뮬레이션을 계산하는 경우에도 다른 결과를 얻을 수 있습니다(여기에서 선택:장치). 따라서 동일한 결과가 필요한 경우(예: 렌더팜을 사용할 때) 항상 시뮬레이션을 베이크/캐쉬해야 합니다. 예를 들어 캐쉬 탭에서 천 태그에 대해 이 작업을 수행할 수 있습니다.
-
시뮬레이션은 강력하고 반대되는 힘이나 제약을 좋아하지 않습니다. 이로 인해 역설적인 힘과 움직임이 발생할 수 있습니다. 예를 들어 작용력을 줄이는 것이 해결책이 될 수 있습니다. 예를 들어 커넥터의 신축성을 높일 수 있습니다. 또는 매우 큰 질량(따라서 너무 큰 무게의 힘)을 피하세요.
-
씬에서 나가면 시뮬레이션 결과가 메모리에서 삭제됩니다. 시뮬레이션을 다시 계산해야 합니다. 그러나 시뮬레이션을 베이킹하여 항상 사용할 수 있도록 할 수 있습니다.
-
시뮬레이션은 로드하거나 다른 씬으로 전환할 때 메모리에서 삭제됩니다. 필요한 경우 씬을 다시 계산합니다.
.