Tôi đã thực hiện một công cụ vật lý dựa trên các khái niệm trong văn bản cổ điển Vật lý nhân vật nâng cao của Thomas Jakobsen. Ma sát chỉ được thảo luận rất ngắn gọn trong bài viết và chính Jakobsen lưu ý làm thế nào "các mô hình ma sát khác và tốt hơn so với điều này có thể và nên được thực hiện."
Nói chung làm thế nào người ta có thể thực hiện một mô hình ma sát đáng tin cậy trên đầu các khái niệm từ bài viết được đề cập? Và làm thế nào ma sát tìm thấy có thể được dịch thành xoay trên một vòng tròn?
Tôi không muốn câu hỏi này liên quan đến việc triển khai cụ thể của tôi mà là về cách kết hợp các ý tưởng của Jakobsens với một hệ thống ma sát tuyệt vời nói chung. Nhưng đây là bản demo trực tiếp cho thấy trạng thái hiện tại của động cơ của tôi không xử lý ma sát theo bất kỳ cách nào: http://jsfiddle.net/Z7ECB/embedded/result/
Dưới đây là hình ảnh hiển thị và ví dụ về cách phát hiện va chạm có thể hoạt động trong động cơ dựa trên giấy. Trong tích hợp Verlet, vị trí hiện tại và trước đó luôn được lưu trữ. Dựa trên những vị trí mới được tính toán. Trong mỗi khung tôi tính khoảng cách giữa các vòng tròn và các đường. Nếu khoảng cách này nhỏ hơn bán kính vòng tròn, sẽ xảy ra va chạm và vòng tròn được chiếu vuông góc ra khỏi đường vi phạm theo kích thước của lớp phủ (bù trên hình).
Vận tốc tiềm ẩn do tích hợp Verlet nên việc thay đổi vị trí cũng thay đổi vận tốc. Những gì tôi cần biết là bằng cách nào đó xác định lượng ma sát trên vòng tròn và di chuyển ngược lại song song với đường thẳng để giảm tốc độ của nó.