전체 글330 7. PhysX - RigidBody Dynamics - 1 속도 (Velocity) - PhysX 시뮬레이션에서, 물체의 운동은 선속도, 각속도로 분리된다. - 물체의 운동은 중력, 적용된 힘과 토크, 충돌 등 다양한 제약 조건으로 발생한다. 선속도를 가져오는 메서드 PxVec3 PxRigidBody::getLinearVelocity(); 각속도를 가져오는 메서드 PxVec3 PxRigidBody::getAngularVelocity(); 그리고 선속도와 각속도를 아래와 같이 설정할 수 있다. void PxRigidBody::setLinearVelocity(const PxVec3& linVel, bool autowake); void PxRigidBody::setAngularVelocity(const PxVec3& angVel, bool autowake); 질량 속.. 2023. 3. 4. 6. PhysX - RigidBody 충돌 - 2 Broad-phase 알고리즘 PhysX는 다음과 같은 여러 개의 Broad-phase 알고리즘을 지원합니다. - sweep-and-prune (SAP) - multi box pruning (MBP) - automatic box pruning (ABP) SAP - SAP는 객체의 많은 부분이 움직이지 않을 때 훌륭한 성능을 발휘한다. - 하지만 모든 객체가 움직이거나 많은 수의 객체가 Broad-phase에 추가되거나 제거될 때 성능이 저하된다. MBP - 모든 객체가 움직일 때 또는 많은 수의 객체를 삽입할 때 SAP와 같은 성능 문제가 발생하지 않는다. - 하지만 많은 수의 객체가 움직이지 않을 때 성능은 SAP보다 떨어질 수 있다. (이 알고리즘을 수행하기 위해 충돌을 계산하는데 사용하는 공간을 정.. 2023. 3. 3. 5. PhysX - RigidBody 충돌 - 1 강체(RigidBody)의 모양(Shape)는 물체가 공간에서 차지하는 범위와, 충돌 특성을 설명한다. 모양(Shape)는 세 가지 목적으로 사용된다. 1. 교차 검사(Intersection test) - 물체 간 접촉 기능을 결정 2. 장면 쿼리 테스트 (Scene query test) - 예시로는 레이캐스트(raycast) 3. 트리거 볼륨 정의 - 다른 모양들이 교차할 때 알림 생성 - 각각의 Shape는 참조 카운팅되며, PxGeometry 객체와 PxMaterial의 참조를 포함한다. - 이들은 생성 시 모두 지정되어야 함 *아래 코드는 구체 모양과 특정 재질을 가진 모양(Shape)를 생성하는 방법을 보여준다. PxShape* shape = physics.createShape(PxSphereG.. 2023. 3. 3. 4. PhysX - RigidBody 개요 - PhysX는 위와 같은 RigidBody / Actor 모델을 사용한다. 클래스 확장 기능 PxBase N/A 리플렉션 / 쿼리 PxActor PxBase 액터의 이름과 플래그 PxRigidActor PxActor 모양 PxRigidBody PxRigidActor 질량, 관성, 속도, 바디 플래그 PxRigidStatic PxRIgidActor 씬의 정적 바디 인터페이스 PxRigidDynamic PxRigidBody 씬의 동적 바디 인터페이스 PxArticulationLink PxRigidBody - PxArticulation PxBase - RigidBody Pipeline - Tutorial에서 설명한 내용과 같이, PxFoundation에서 시스템에 대한 전반적인 내용을 관리한다 - PxPhy.. 2023. 3. 3. 이전 1 ··· 43 44 45 46 47 48 49 ··· 83 다음