임펄스 기반의 물리 엔진을 개발하고 있지만 질량 차이가 큰 물체에 문제가 있습니다.임펄스 기반 물리학 - 라이트 오브젝트에 무거운 물체 쌓기
각 프레임에서 엔진은 충돌을 처리하기 위해 충동을 적용합니다. 임펄스는 충돌하는 각 객체 쌍 사이에서 여러 반복을 통해 적용됩니다. 물체가 거의 같은 질량 인 경우 잘 작동합니다.
하지만 무거운 물체를 가벼운 물체 위에 올려 놓으면 무거운 물체가 가볍게 땅에 떨어지게됩니다.
문제의 원인은 두 개체간에 적용된 충격이 너무 작기 때문에 여러 번의 반복에도 불구하고 무거운 물체에 중력을 반격하기에 충분하지 않다는 것입니다.
필자는 필요한 충동을 정확하게 계산할 수있는 방법이 있다고 생각하지만, 너무 복잡하다고 두려워합니까? 그래서 대부분이 문제를 해결하기위한 몇 가지 트릭을 찾고 있지만 엔진 작동 방식을 변경하지는 않습니다.
아이디어를 제공해 주셔서 감사합니다.
몸체와지면의 탄성 변형 (최소한)을지지해야합니다. – dmckee
어떻게 충격을 계산합니까? – Beta
나는 다른 충돌에서 영향을받지 않은 것처럼 각 충돌에서 충격을 계산합니다. 그러나 iterating을 통해 일반적으로 올바른 "총 충동"을 찾습니다. – LaZe