연체동역학
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
연체동역학은 물체의 변형을 시뮬레이션하는 컴퓨터 그래픽스 분야의 기술이다. 질량-스프링 모델, 유한 요소법, 에너지 최소화 방법, 형상 매칭, 강체 기반 변형 등 다양한 접근 방식을 사용하며, 의류, 파괴 가능한 재료, 머리카락, 생체 조직 등 다양한 효과를 시뮬레이션하는 데 활용된다. 충돌 감지는 시뮬레이션의 중요한 요소이며, 이산적/사후적 또는 연속적/사전적 방식을 사용한다. 연체동역학은 비디오 게임, 애니메이션, 영화 등 다양한 분야에서 활용되며, 불릿, 하복, 피직스 등 다양한 소프트웨어와 게임 엔진에서 지원된다.
더 읽어볼만한 페이지
- 컴퓨터 물리 엔진 - CUDA
CUDA는 엔비디아에서 개발한 GPU 기반 병렬 컴퓨팅 플랫폼으로, 연산 집약적인 작업을 가속화하며 다양한 프로그래밍 언어를 지원하고 3D 그래픽, 동영상 변환 등 여러 분야에 활용된다. - 컴퓨터 물리 엔진 - 언리얼 엔진
언리얼 엔진은 에픽게임즈에서 개발한 게임 엔진으로, 게임 개발을 넘어 영화, 건축 등 다양한 분야에서 활용되며, C++ 및 블루프린트 비주얼 스크립팅 시스템을 통해 게임 로직을 구현하고, 최근에는 Verse라는 새로운 스크립트 언어가 도입되었다. - 3차원 컴퓨터 그래픽스 - 픽셀 셰이더
픽셀 셰이더는 렌더링 과정에서 픽셀의 색상을 계산하여 최종 모습을 결정하며, 텍스처, 빛, 그림자 등의 시각 효과를 구현하고, 다양한 언어로 프로그래밍되며, 그래픽 카드 및 칩셋은 지원하는 버전을 가진다. - 3차원 컴퓨터 그래픽스 - 모션 캡처
모션 캡처는 물체의 움직임을 디지털 데이터로 변환하는 기술로서, CG 영상 제작에 활용되며, 센서 부착 방식에서 마커리스 방식으로 발전하여 다양한 분야에 응용된다. - 비디오 게임 개발 - 게임 서버
게임 서버는 온라인 게임에서 게임 로직 실행과 플레이어 간 상호작용을 관리하는 핵심 시스템으로, 운영 주체와 방식에 따라 게임 회사 직접 운영 방식과 사용자 직접 운영 방식으로 나뉘며, 성능, 안정성, 비용 면에서 장단점을 가진 다양한 형태로 구현될 수 있다. - 비디오 게임 개발 - 비디오 게임 봇
비디오 게임 봇은 사용자의 조작을 대신하거나 플레이어 수를 보충하기 위해 사용되는 프로그램이며, 게임 밸런스를 해치고 부정적인 측면이 존재하여 한국 온라인 게임에서 심각한 문제가 되기도 한다.
연체동역학 | |
---|---|
개요 | |
유형 | 컴퓨터 그래픽스 시뮬레이션 |
설명 | 변형 가능한 물체의 시뮬레이션 |
기술 | |
주요 기술 | 물리 기반 변형 모델 |
사용 예시 | Carbon Physics PhysX soft bodies Digital Molecular Matter (DMM) Havok Cloth Bullet Physics Maya Nucleus |
2. 연체동역학의 기본 원리
체적 고체 연성체의 시뮬레이션[8]은 다양한 접근 방식을 사용하여 구현할 수 있다.
2. 1. 질량-스프링 모델 (Mass-Spring Model)
이 접근 방식에서 물체는 이상적인 무중량 탄성 스프링으로 연결된 일련의 점 질량(노드)으로 모델링되며, 이는 후크의 법칙의 일부 변형을 따른다. 노드는 물체의 표면을 나타내는 2차원 다각형 메쉬 표현의 모서리에서 파생될 수도 있고, 물체의 내부 구조를 모델링하는 3차원 노드 및 모서리 네트워크에서 파생될 수도 있다(또는 예를 들어 로프나 머리카락 가닥을 시뮬레이션하는 경우 1차원 링크 시스템). 원하는 효과를 얻기 위해 노드 사이에 추가 스프링을 추가하거나 스프링의 힘 법칙을 수정할 수 있다. 스프링 및 외부 힘(접촉, 중력, 공기 저항, 바람 등)에 의해 가해지는 힘을 포함하여 점 질량에 뉴턴의 제2법칙을 적용하면 노드의 운동에 대한 일련의 미분 방정식이 생성되며, 이는 상미분 방정식을 풀기 위한 표준 수치 방식에 의해 풀린다.[9] 3차원 질량-스프링 격자의 렌더링은 종종 자유형 변형을 사용하여 수행되는데,[10] 여기서 렌더링된 메쉬는 격자에 임베디드되어 격자의 모양에 맞춰 변형된다. 모든 점 질량이 0과 같다고 가정하면 탄성 격자 거동과 관련된 여러 엔지니어링 문제 해결을 목표로 하는 늘어난 격자 방법을 얻을 수 있다. 이들은 때때로 질량-스프링-댐퍼 모델로 알려져 있다. 가압된 연성체에서는[11] 질량-스프링 모델이 이상 기체 법칙에 기초한 압력 힘과 결합된다.
2. 2. 유한 요소법 (Finite Element Method, FEM)
이는 보다 물리적으로 정확한 접근 방식으로, 널리 사용되는 유한 요소법을 사용하여 편미분 방정식을 푼다. 이 방정식은 탄성 재료의 동역학을 지배한다. 물체는 서로 맞는 많은 고체 요소로 분할하여 3차원 탄성 연속체로 모델링되며, 재료 모델을 사용하여 각 요소의 응력과 변형을 계산한다.[12] 요소는 일반적으로 사면체이며, 노드는 사면체의 꼭지점이다 (2차원 다각형을 삼각형으로 ''삼각 분할''하는 것과 유사하게, 다각형 메쉬로 경계가 정해진 3차원 영역을 사면체로 ''사면체화''하는 비교적 간단한 방법이 존재한다[13][14]). 변형률(재료의 점이 원래 상태에서 벗어난 국부적인 변형을 측정)은 변형률 텐서 로 정량화된다. 응력(재료에 작용하는 모든 방향의 단위 면적당 국부적인 힘을 측정)은 Cauchy 응력 텐서 로 정량화된다. 현재 국부 변형률이 주어지면, 국부 응력은 후크의 법칙의 일반화된 형태를 통해 계산할 수 있다.여기서 는 탄성 텐서이며, 이는 재료 특성을 인코딩한다 (등방성 재료의 선형 탄성에서 푸아송 비와 영률로 매개변수화됨).
요소 노드의 운동 방정식은 각 요소에 대한 응력장을 적분하고 이를 뉴턴의 제2법칙을 통해 노드 가속도와 관련시켜 얻는다.
Pixelux (디지털 분자 물질 시스템 개발자)는 사면체 메쉬를 사용하여 유한 요소 기반 접근 방식을 사용하고 응력 텐서를 노드 힘으로 직접 변환한다.[15] 렌더링은 자유 형태 변형의 한 형태를 통해 수행된다.[10]
2. 3. 에너지 최소화 방법 (Energy Minimization Methods)
이 접근 방식은 변분법과 표면의 물리학에 의해 동기 부여되었으며, 이는 제약된 표면이 최소 전체 포텐셜 에너지 원리에 따라 변형의 총 에너지를 최소화하는 형태(비누 거품과 유사)를 취한다는 것을 지시한다. 표면의 에너지를 국부적인 변형(에너지는 신장과 굽힘의 조합으로 인해 발생)으로 표현하면, 표면에 가해지는 국부적인 힘은 에너지의 위치에 대한 미분을 통해 주어지며, 표준적인 방법으로 풀 수 있는 운동 방정식을 생성한다.[16][17]2. 4. 형상 매칭 (Shape Matching)
이 방식에서는 모델이 원래 형상으로 돌아가도록 벌칙력이나 제약 조건을 적용한다[18] (즉, 재료는 형상 기억처럼 동작한다). 운동량을 보존하기 위해, 예를 들어 극분해를 통해 물체의 회전을 적절하게 추정해야 한다. 유한 요소 시뮬레이션을 근사하기 위해 형상 맞춤은 3차원 격자에 적용될 수 있으며, 여러 형상 맞춤 제약 조건을 혼합할 수 있다.[19]2. 5. 강체 기반 변형 (Rigid-body Based Deformation)
변형은 제약 조건으로 연결된 여러 강체 네트워크를 사용하여 연성체 움직임을 모델링하고, (예를 들어) 매트릭스-팔레트 스키닝을 사용하여 렌더링을 위한 표면 메쉬를 생성하는 전통적인 강체 물리 엔진으로 처리할 수도 있다. 이것은 하복 파괴에서 변형 가능한 객체에 사용되는 접근 방식이다.[20]3. 의류 시뮬레이션 (Cloth Simulation)
컴퓨터 그래픽스 분야에서 의류 시뮬레이션은 2차원 연속체 탄성 막의 형태로 부드러운 물체를 시뮬레이션하는 것을 의미한다. 실제 의류의 실 수준 구조는 무시할 수 있다.[21] 렌더링 효과를 통해, 비디오 게임, 애니메이션, 영화 등 다양한 상황에서 사용되는 직물 및 의복의 시각적으로 그럴듯한 에뮬레이션을 생성할 수 있다. 또한 직물 외에 변형 가능한 금속 패널이나 식물과 같은 2차원 재료 시트를 시뮬레이션하는 데에도 사용할 수 있다. 비디오 게임에서는 의상을 입은 애니메이션 캐릭터의 현실감을 향상시키는 데 자주 사용된다.
의류 시뮬레이터는 일반적으로 질량-스프링 모델을 기반으로 하지만, 힘 기반 솔버와 위치 기반 솔버로 구분할 수 있다.
3. 1. 힘 기반 의류 (Force-based Cloth)
질점-스프링 모델(천의 다각형 메쉬 표현에서 얻음)은 각 타임스텝에서 노드에 작용하는 내부 스프링 힘을 결정한다(중력 및 가해진 힘과 함께). 뉴턴의 제2법칙은 표준 상미분 방정식(ODE) 솔버를 통해 해결할 수 있는 운동 방정식을 제공한다. 그러나 현실적인 강성을 가진 고해상도 천을 만드는 것은 간단한 명시적 솔버(예: 전진 오일러 적분)로는 불가능하다. 이는 타임스텝을 대화형 애플리케이션에 너무 작게 만들어야 하기 때문이다. 명시적 적분기는 충분히 강성 시스템에 대해 수치적으로 불안정하기 때문이다. 따라서, 암시적 솔버를 사용해야 하며,[22] 대형 희소 행렬 시스템을(예: 켤레 기울기 방법) 해결해야 하며, 이는 대화형 프레임 속도로 달성하기 어려울 수 있다. 대안[23][24]은 낮은 강성을 가진 명시적 방법을 사용하여 불안정성과 과도한 늘어짐을 피하는 ''임시변통'' 방법(예: 변형 제한 보정)을 사용하는 것이다.3. 2. 위치 기반 동역학 (Position-Based Dynamics, PBD)
상미분 방정식(ODE)의 복잡한 암시적 해법을 피하기 위해, 많은 실시간 의상 시뮬레이터(특히 PhysX, Havok Cloth, Maya nCloth)는 제약 조건 완화에 기반한 접근 방식인 ''위치 기반 동역학''(PBD)을 사용한다.[25] 질량-스프링 모델은 연결된 노드 간의 거리가 초기 거리와 같도록 요구하는 제약 시스템으로 변환된다. 이 시스템은 각 제약 조건을 만족시키기 위해 노드를 직접 이동시켜 순차적이고 반복적으로 해결되며, 충분히 뻣뻣한 의상이 얻어질 때까지 진행된다. 이는 질량-스프링 모델의 암시적 행렬 시스템에 대한 가우스-자이델 방법 해법과 유사하다. 그러나 가짜 진동을 피하고 제약 조건이 선형 운동량 보존과 각운동량 보존을 위반하지 않도록 각 시간 단계에서 동일한 순서로 제약 조건을 해결하는 데 주의를 기울여야 한다. 추가적인 위치 제약 조건을 적용할 수 있으며, 예를 들어 노드를 원하는 공간 영역 내에 유지하거나 (예를 들어, 애니메이션 모델에 충분히 가깝게), 형상 매칭을 통해 신체의 전반적인 모양을 유지할 수 있다.4. 충돌 감지 (Collision Detection)
연체동역학에서 시뮬레이션된 부드러운 물체가 주변 환경과 사실적으로 상호작용하는 것은 시각적으로 현실적인 결과를 얻는 데 매우 중요하다. 특히 옷감 시뮬레이션에서 옷감 자체의 교차를 허용하는 것은 현실감을 높이는 데 중요한 요소이다. 하지만 자체 충돌 및 둘 이상의 변형 가능한 물체 간의 상호 충돌을 감지하고 해결하는 것은 대화형 프레임 속도에서는 어려운 문제이다.
충돌 감지 방식은 크게 이산적/사후적(Discrete/A posteriori) 방식과 연속적/사전적(Continuous/A priori) 방식으로 나뉜다. 이산적 방식은 객체가 미리 정해진 시간 간격으로 이동한 후 침투 여부를 검사하고 해결하는 반면, 연속적 방식은 객체가 충돌할 때까지만 이동하고 충돌이 발생하면 즉시 처리한다.
효율적인 충돌 감지를 위해서는 충돌 가능성이 없는 물체를 빠르게 식별하여 계산 대상에서 제외하는 것이 중요하다. 이를 위해 복잡도의 무차별 대입(brute-force) 테스트 대신 공간 분할 기법을 사용한다. 널리 사용되는 공간 분할 기법은 다음과 같다:
- 경계 부피 계층 구조(AABB 트리,[27] OBB 트리, 구 트리)
- 균일 그리드 (메모리 효율을 위해 해싱 사용) 또는 계층적 그리드 (예: 옥트리, kd-tree)
- 스윕 앤 프룬 (삽입 정렬 사용), 전방 추적을 사용한 트리-트리 충돌과 같은 일관성 활용 방식
- 위 방식들을 조합한 하이브리드 방식 (예: 조잡한 AABB 트리와 충돌하는 리프 간의 일관성을 가진 스윕 앤 프룬)
4. 1. 이산적/사후적 충돌 감지 (Discrete/A posteriori Collision Detection)
시뮬레이션된 부드러운 물체가 주변 환경과 사실적으로 상호작용하는 것은 시각적으로 현실적인 결과를 얻는 데 중요할 수 있다. 옷감 자체의 교차는 현실적인 시뮬레이션 의류를 위해 일부 프로그램에서 중요하다. 이는 특히 자체 충돌 및 둘 이상의 변형 가능한 물체 간의 상호 충돌을 감지하고 해결하는 경우, 대화형 프레임 속도로 달성하기 어렵다.충돌 감지는 ''이산적/사후적''(객체가 미리 정해진 간격으로 시간을 이동한 다음, 모든 침투가 감지되고 해결됨)이거나, ''연속적/사전적''(객체는 충돌이 발생할 때까지만 이동하며, 충돌은 진행하기 전에 처리됨)일 수 있다. 전자는 구현하기 쉽고 빠르지만, 물체가 충분히 빠르게 움직이면 충돌을 감지하지 못하거나 (또는 가짜 충돌을 감지하는) 오류가 발생한다. 실시간 시스템은 일반적으로 충돌 감지를 놓치지 않도록 다른 ''임시'' 방법과 함께 이산 충돌 감지를 사용해야 한다.
잘 정의된 "내부"가 있는 옷감과 환경 물체 간의 충돌 감지는, 시스템이 옷감 메쉬 정점과 면이 몸체와 교차하는지 여부를 명확하게 감지하고 그에 따라 해결할 수 있으므로 간단하다. 잘 정의된 "내부"가 없는 경우(예: 닫힌 경계를 형성하지 않는 메쉬와의 충돌)는 압출을 통해 "내부"를 구성할 수 있다. 사면체로 정의된 부드러운 물체의 상호 또는 자체 충돌은 고체 사면체 간의 충돌 감지로 축소되므로 간단하다.
그러나 이산 충돌 감지를 통해 두 개의 다각형 옷감 간의 충돌(또는 옷감 자체와의 충돌)을 감지하는 것은 훨씬 더 어렵다. 왜냐하면 시간 단계 후에 침투된 옷감 노드가 "잘못된" 쪽에 있는지 여부를 국소적으로 감지할 수 있는 명확한 방법이 없기 때문이다. 해결책은 옷감 움직임의 기록을 사용하여 교차 이벤트가 발생했는지 확인하거나, 옷감 상태에 대한 전역적 분석을 수행하여 자체 교차를 감지하고 해결하는 것이다. 픽사(Pixar)는 구성 공간에서 메쉬 교차의 전역적 위상 분석을 사용하여 옷감의 자체 침투를 감지하고 해결하는 방법을 제시했다.[26] 현재, 이것은 일반적으로 실시간 옷감 시스템에는 계산 비용이 너무 많이 든다.
충돌 감지를 효율적으로 수행하려면 충돌하지 않는 기본 도형을 가능한 한 빨리 식별하고, 시간을 낭비하지 않도록 고려 대상에서 제외해야 한다. 이를 위해 기본 도형 충돌에 대한 무차별 대입 테스트를 피하기 위해 일부 형태의 공간 분할 방식이 필수적이다. 사용되는 접근 방식은 다음과 같다.
- 경계 부피 계층 구조(AABB 트리,[27] OBB 트리, 구 트리)
- 균일(메모리 효율성을 위해 해싱 사용) 또는 계층적(예: 옥트리, kd-tree) 그리드
- 삽입 정렬을 사용한 스윕 앤 프룬, 전방 추적을 사용한 트리-트리 충돌과 같은 일관성을 활용하는 방식.
- 다양한 이러한 방식의 조합과 관련된 하이브리드 방법 (예: 조잡한 AABB 트리와 충돌하는 리프 간의 일관성을 가진 스윕 앤 프룬).
4. 2. 연속적/사전적 충돌 감지 (Continuous/A priori Collision Detection)
시뮬레이션된 소프트 객체가 환경과 현실적으로 상호 작용하는 것은 시각적으로 현실적인 결과를 얻는 데 중요할 수 있다. 옷감 자체 교차는 허용 가능한 현실적인 시뮬레이션 의류를 위해 일부 응용 프로그램에서 중요하다. 이는 특히 자체 충돌 및 두 개 이상의 변형 가능한 객체 간의 상호 충돌을 감지하고 해결하는 경우 대화형 프레임 속도로 달성하기 어렵다.충돌 감지는 ''이산적/사후적''일 수 있다(이는 객체가 미리 결정된 간격으로 시간을 거쳐 이동한 다음, 모든 침투가 감지되고 해결됨을 의미). 또는 ''연속적/사전적''일 수 있다(객체는 충돌이 발생할 때까지만 이동하며, 충돌은 진행하기 전에 처리됨). 전자는 구현하기 쉽고 빠르지만 객체가 충분히 빠르게 움직이면 충돌을 감지하지 못하거나 (또는 가짜 충돌을 감지하는) 오류로 이어진다. 실시간 시스템은 일반적으로 충돌 감지를 감지하지 못하는 것을 방지하기 위한 다른 ''임시'' 방법과 함께 이산 충돌 감지를 사용해야 한다.
잘 정의된 "내부"가 있는 옷감과 환경 객체 간의 충돌 감지는 시스템이 옷감 메쉬 정점과 면이 몸체와 교차하는지 여부를 모호하지 않게 감지하고 그에 따라 해결할 수 있으므로 간단하다. 잘 정의된 "내부"가 존재하지 않는 경우 (예: 닫힌 경계를 형성하지 않는 메쉬와의 충돌의 경우), 압출을 통해 "내부"를 구성할 수 있다. 사면체로 정의된 소프트 바디의 상호 또는 자체 충돌은 고체 사면체 간의 충돌 감지로 축소되므로 간단하다.
그러나 이산 충돌 감지를 통해 두 개의 다각형 옷감 간의 충돌(또는 옷감 자체와의 충돌)을 감지하는 것은 훨씬 더 어렵다. 왜냐하면 시간 단계 후에 침투된 옷감 노드가 "잘못된" 쪽에 있는지 여부를 국소적으로 감지할 수 있는 명확한 방법이 없기 때문이다. 해결책은 옷감 움직임의 기록을 사용하여 교차 이벤트가 발생했는지 확인하거나 옷감 상태에 대한 전역적 분석을 수행하여 자체 교차를 감지하고 해결하는 것이다. 픽사(Pixar)는 구성 공간에서 메쉬 교차의 전역적 위상 분석을 사용하여 옷감의 자체 침투를 감지하고 해결하는 방법을 제시했다.[26] 현재, 이것은 일반적으로 실시간 옷감 시스템에 대해 계산 비용이 너무 많이 든다.
5. 기타 응용 분야
연체 동역학 기법으로 시뮬레이션할 수 있는 다른 효과는 다음과 같다.
- '''취성 고체의 파괴''', 연성체의 절단, 천의 찢어짐. 유한 요소법은 재료 내 응력 분포에 대한 현실적인 모델을 포함하기 때문에 파괴를 모델링하는 데 특히 적합하며, 이는 파괴 역학에 따라 물리적으로 파괴가 발생하는 시점을 결정하는 요소이다.
- 소성 (영구 변형) 및 융해[18][30]
- 시뮬레이션된 머리카락,[31] 털, 깃털
- 생물 의학적 응용 분야를 위한 시뮬레이션된 장기[32]
컴퓨터 그래픽스 맥락에서 유체 시뮬레이션은 일반적으로 연체 동역학으로 간주되지 않으며, 이는 일반적으로 형태를 유지하려는 경향이 있는 재료의 시뮬레이션을 의미한다. 반대로, 유체는 입자가 비교적 약한 힘에 의해 결합되어 있기 때문에 그것을 담는 용기의 형태를 취한다.
6. 연체동역학 지원 소프트웨어
연체동역학을 지원하는 소프트웨어는 크게 시뮬레이션 엔진과 게임으로 나눌 수 있다.
종류 | 엔진/게임 | 홈페이지 | 라이선스 | 설명 |
---|---|---|---|---|
시뮬레이션 엔진 | 불릿 | http://bulletphysics.org | zlib 라이선스 | |
Carbon | http://numerion-software.com | 사유 | ||
크라이엔진 3 | http://mycryengine.com | 무료 | ||
Digital Molecular Matter | http://pixelux.com | 사유 | ||
하복 | http://havok.com | 유료 | ||
마야 | http://autodesk.com/maya | 유료 | ||
OpenCloth | https://github.com/mmmovania/opencloth | 옷감 시뮬레이션을 구현하는 소스 코드 모음과 OpenGL의 연체동역학. | ||
OpenTissue | http://opentissue.org | zlib 라이선스 | ||
Physics Abstraction Layer | http://www.adrianboeing.com/pal/index.html | BSD 허가서 | 표준 API는 여러 물리 엔진을 지원한다. | |
PhysX | http://developer.nvidia.com/physx | 유료 | ||
Phyz | http://phyz.ath.cx | Public domain | ||
Simulation Open Framework Architecture | http://www.sofa-framework.org/ | GNU 약소 일반 공중 사용 허가서 v2.1+ | ||
Step | http://edu.kde.org/step/ | GNU 일반 공중 사용 허가서 v2 | ||
SyFlex | http://syflex.biz | 유료 | ||
언리얼 엔진 | https://unrealengine.com | 사유 | ||
Vega FEM | https://web.archive.org/web/20190417164513/http://run.usc.edu/vega/ | 3-clause BSD 라이선스 | ||
블렌더 | https://www.blender.org/ | 무료 | 오픈 소스. | |
Ziva VFX | http://zivadynamics.com | 사유 | 캐릭터 시뮬레이션 소프트웨어 - FEM 근육, 지방, 피부 및 옷감. | |
Havok Cloth | http://havok.com | 비자유 | ||
Houdini | https://www.sidefx.com/products/houdini/ | 독점 | 절차적 생성 및 VFX 소프트웨어 - 연성체 FEM, 천 시뮬레이션 (Vellum) | |
시뮬레이션 엔진 | Maya nCloth | http://autodesk.com/maya | 비자유 | |
Source Engine | https://developer.valvesoftware.com | 독점 | 시뮬레이션된 머리카락 및 천 물리 사용 지원.[33] | |
Torque | https://torque3d.org/torque3d/ | MIT 라이선스 | ||
게임 | BeamNG.drive | https://beamng.com | 유료 | 차량에 연체동역학을 구현하는 상업용 샌드박스 게임. 다만 작동이 아닌 차량의 구조를 시뮬레이션한다. |
Rigs of Rods | https://www.rigsofrods.org/ | GNU 일반 공중 사용 허가서 v3 | 무료 및 오픈 소스 차량 소프트웨어. | |
Wreckfest | http://nextcargame.com | 유료 | 더비 레이싱 게임. 연체동역학은 상부 구조에 적용되지만, 부품 및 구성 요소(예: 엔진)는 단순한 손상 모델링을 사용한다. | |
크래시 이펙트 Inc.(Crash Effects Inc.) | https://www.crasheffects.com/ | 유료 | 차량 제작 / 1인칭 충돌 테스트 시뮬레이터. 연체동역학은 상부 구조에 적용되며, 일부 차량 구성 요소는 단순한 손상 모델링을 사용한다. |
6. 1. 시뮬레이션 엔진
wikitext엔진 | 홈페이지 | 라이선스 | 설명 |
---|---|---|---|
불릿 | http://bulletphysics.org | zlib 라이선스 | |
Carbon | http://numerion-software.com | 사유 | |
크라이엔진 3 | http://mycryengine.com | 무료 | |
Digital Molecular Matter | http://pixelux.com | 사유 | |
하복 | http://havok.com | 유료 | |
마야 | http://autodesk.com/maya | 유료 | |
OpenCloth | https://github.com/mmmovania/opencloth | 옷감 시뮬레이션을 구현하는 소스 코드 모음과 OpenGL의 연체동역학. | |
OpenTissue | http://opentissue.org | zlib 라이선스 | |
Physics Abstraction Layer | http://www.adrianboeing.com/pal/index.html | BSD 허가서 | 표준 API는 여러 물리 엔진을 지원한다. |
PhysX | http://developer.nvidia.com/physx | 유료 | |
Phyz | http://phyz.ath.cx | Public domain | |
Simulation Open Framework Architecture | http://www.sofa-framework.org/ | GNU 약소 일반 공중 사용 허가서 v2.1+ | |
Step | http://edu.kde.org/step/ | GNU 일반 공중 사용 허가서 v2 | |
SyFlex | http://syflex.biz | 유료 | |
언리얼 엔진 | https://unrealengine.com | 사유 | |
Vega FEM | https://web.archive.org/web/20190417164513/http://run.usc.edu/vega/ | 3-clause BSD 라이선스 | |
블렌더 | https://www.blender.org/ | 무료 | 오픈 소스. |
Ziva VFX | http://zivadynamics.com | 사유 | 캐릭터 시뮬레이션 소프트웨어 - FEM 근육, 지방, 피부 및 옷감. |
Bullet | http://bulletphysics.org | zlib 라이선스 | |
Carbon | http://numerion-software.com | 독점 | |
CryEngine 3 | http://mycryengine.com | 비자유 | |
Digital Molecular Matter | http://pixelux.com | 독점 | |
Havok Cloth | http://havok.com | 비자유 | |
Houdini | https://www.sidefx.com/products/houdini/ | 독점 | 절차적 생성 및 VFX 소프트웨어 - 연성체 FEM, 천 시뮬레이션 (Vellum) |
Maya nCloth | http://autodesk.com/maya | 비자유 | |
OpenCloth | https://github.com/mmmovania/opencloth | OpenGL에서 천 시뮬레이션 알고리즘과 연성체 역학을 구현하는 소스 코드 모음. | |
OpenTissue | http://opentissue.org | zlib 라이선스 | |
Physics Abstraction Layer | http://www.adrianboeing.com/pal/index.html | 3-clause BSD 라이선스 | 균일한 API, 여러 물리 엔진 지원. |
PhysX | http://developer.nvidia.com/physx | 비자유 | |
Phyz | http://phyz.ath.cx | Public domain | |
Simulation Open Framework Architecture | http://www.sofa-framework.org/ | GNU Lesser General Public License v2.1+ | |
Source Engine | https://developer.valvesoftware.com | 독점 | 시뮬레이션된 머리카락 및 천 물리 사용 지원.[33] |
Step | http://edu.kde.org/step/ | GNU General Public License v2 | |
SyFlex | http://syflex.biz | 비자유 | |
Torque | https://torque3d.org/torque3d/ | MIT 라이선스 | |
Unreal Engine | https://unrealengine.com | 독점 | |
Vega FEM | https://viterbi-web.usc.edu/~jbarbic/vega/ | 3-clause BSD 라이선스 | |
Blender (소프트웨어) | https://www.blender.org/ | GNU General Public License v2 | |
Ziva VFX | http://zivadynamics.com | 독점 | 캐릭터 시뮬레이션 소프트웨어 - FEM 근육, 지방, 피부 및 천 |
6. 2. 게임
게임 | 웹사이트 | 라이선스 | 설명 |
---|---|---|---|
BeamNG.drive | https://beamng.com | 유료 | 차량에 연체동역학을 구현하는 상업용 샌드박스 게임. 다만 작동이 아닌 차량의 구조를 시뮬레이션한다. |
Rigs of Rods | https://www.rigsofrods.org/ | GNU 일반 공중 사용 허가서 v3 | 무료 및 오픈 소스 차량 소프트웨어. |
Wreckfest | http://nextcargame.com | 유료 | 더비 레이싱 게임. 연체동역학은 상부 구조에 적용되지만, 부품 및 구성 요소(예: 엔진)는 단순한 손상 모델링을 사용한다. |
크래시 이펙트 Inc.(Crash Effects Inc.) | https://www.crasheffects.com/ | 유료 | 차량 제작 / 1인칭 충돌 테스트 시뮬레이터. 연체동역학은 상부 구조에 적용되며, 일부 차량 구성 요소는 단순한 손상 모델링을 사용한다. |
참조
[1]
웹사이트
Physically Based Deformable Models in Computer Graphics
[2]
웹사이트
Numerion Software - Carbon Physics
http://numerion-soft[...]
[3]
웹사이트
PhysX soft bodies
http://developer.nvi[...]
2014-02-24
[4]
웹사이트
Pixelux's Digital Molecular Matter (DMM)
https://web.archive.[...]
2010-03-07
[5]
웹사이트
Havok Cloth
https://web.archive.[...]
2010-03-07
[6]
웹사이트
Bullet Physics
http://bulletphysics[...]
2022-03-21
[7]
웹사이트
Maya Nucleus
http://usa.autodesk.[...]
[8]
웹사이트
Doc:2.4/Manual/Physics/Soft Bodies 2.46 - BlenderWiki
https://web.archive.[...]
2015-09-19
[9]
웹사이트
Interactive animation of structured deformable objects
http://www.multires.[...]
[10]
웹사이트
Free-Form Deformation of Solid Geometric Models
http://tom.cs.byu.ed[...]
[11]
웹사이트
A pressure model for soft body simulation
http://www.ep.liu.se[...]
[12]
웹사이트
Flexible Simulation of Deformable Models Using Discontinuous Galerkin FEM
http://www.graphics.[...]
[13]
웹사이트
Robust Tetrahedral Meshing of Triangle Soups
http://cg.informatik[...]
[14]
웹사이트
Adaptive Physics Based Tetrahedral Mesh Generation Using Level Sets
http://physbam.stanf[...]
[15]
웹사이트
Real-Time Deformation and Fracture in a Game Environment
http://graphics.cs.b[...]
[16]
웹사이트
Elastically Deformable Models
http://www.cs.ucla.e[...]
[17]
웹사이트
Discrete Quadratic Curvature Energies
https://www.cs.colum[...]
[18]
웹사이트
Meshless Deformations Based on Shape Matching
http://www.beosil.co[...]
[19]
웹사이트
Fast Adaptive Shape Matching Deformations
https://web.archive.[...]
2010-03-08
[20]
웹사이트
Havok Destruction
https://web.archive.[...]
2010-03-07
[21]
웹사이트
Simulating Knitted Cloth at the Yarn Level
http://www.graphics.[...]
[22]
웹사이트
Large Steps in Cloth Simulation
https://www.cs.cmu.e[...]
[23]
웹사이트
Collision and self-collision handling in cloth model dedicated to design garments
[24]
웹사이트
Robust Treatment of Collisions, Contact and Friction for Cloth Animation
http://graphics.stan[...]
[25]
웹사이트
Position Based Dynamics
http://www.matthiasm[...]
[26]
웹사이트
Untangling Cloth
http://graphics.pixa[...]
[27]
웹사이트
Efficient Collision Detection of Complex Deformable Models using AABB Trees
http://knight.temple[...]
[28]
웹사이트
Optimized Spatial Hashing for Collision Detection of Deformable Objects
http://www.beosil.co[...]
[29]
웹사이트
Fast Arbitrary Splitting of Deforming Objects
http://graphics.ethz[...]
[30]
웹사이트
Point Based Animation of Elastic, Plastic and Melting Objects
http://www.inf.ethz.[...]
[31]
웹사이트
A Mass Spring Model for Hair Simulation
https://web.archive.[...]
2010-03-07
[32]
웹사이트
When Will Virtual Surgery Make the Cut?
http://www.scientifi[...]
Scientific American
[33]
웹사이트
$jigglebone
https://developer.va[...]
2022-08-04
[34]
웹인용
Physically Based Deformable Models in Computer Graphics
[35]
웹인용
Numerion Software - Carbon Physics
http://numerion-soft[...]
[36]
웹인용
PhysX soft bodies
http://developer.nvi[...]
[37]
웹인용
Pixelux's Digital Molecular Matter (DMM)
http://www.pixelux.c[...]
2019-03-17
[38]
웹인용
Havok Cloth
http://www.havok.com[...]
2019-03-17
[39]
웹인용
Bullet Physics
http://bulletphysics[...]
[40]
웹인용
Maya Nucleus
http://usa.autodesk.[...]
2019-03-17
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com