Tôi là người mới bắt đầu tuyệt đối với phát triển trò chơi và tất cả những gì tôi biết về tránh va chạm / giải quyết va chạm, tôi đã tìm hiểu nó trên hoặc thông qua trang web này trong tuần qua ... vì vậy đừng ngần ngại sửa cho tôi nếu những gì tôi hỏi ở đây là dựa trên những giả định / hiểu lầm sai Tôi đã cố gắng hết sức để rõ ràng, nhưng điều đó nói rằng, chủ đề vẫn là tiểu thuyết đối với tôi.
Xe cộ
Trong trò chơi của tôi, tôi có những chiếc xe di chuyển tự động. Chúng được đặt trong một không gian 3D và chuyển động của chúng bị chi phối bởi một số biến số khác nhau cho mỗi phương tiện. Một trong những quan tâm ở đây chủ yếu là:
- Chỉ chuyển động về phía trước .
- Một tốc độ có thể khác nhau giữa các cực tiểu và cực, nhưng mà min là không (thậm chí gần) bằng không.
- Một bán kính lái mà sẽ phụ thuộc vào tốc độ (tốc độ cao hơn, bán kính lớn hơn)
- Hai gia tốc tối đa (để giảm tốc độ và tăng tốc)
Mục tiêu
Mục tiêu của tôi là triển khai một số loại AI sẽ tránh va chạm chính xác 100% (tức là tôi sẽ chắc chắn rằng các phương tiện sẽ không bao giờ va chạm).
Thiết kế
- Mặc dù tôi thích ý tưởng có AI "trên tàu" hơn (nghĩa là mỗi chiếc xe đều có "AI tránh va chạm", cuối cùng truy vấn và / hoặc gửi tin nhắn cho các phương tiện khác) tôi cũng có thể thực hiện CA AI tại một cấp trung ương (gửi lệnh cho các phương tiện).
- Trong hầu hết các trường hợp, chiếc xe chỉ đơn giản là phải tránh xa nhau theo bất kỳ hướng nào, nhưng trong một số trường hợp nhất định, chúng sẽ phải tránh va chạm và đi về cùng một mục tiêu
Những gì tôi tìm thấy cho đến nay và nơi tôi bị mắc kẹt
Trong rất nhiều liên kết tôi tìm thấy trong các câu hỏi khác trên chính trang web này, tôi thấy đặc biệt sử dụng những liên kết này:
Mặc dù ba liên kết này "mở mắt" theo nhiều cách, nhưng tôi không rõ ngay cách sử dụng thông tin đó trong trường hợp của mình. Cụ thể, bài viết số 2 chỉ "cố gắng" để ngăn va chạm (nhưng va chạm xảy ra theo thời gian). Trong khi bài viết số 3 cần dừng xe đôi khi để tránh va chạm.
Điều tôi cũng nhận thấy là các thuật toán tránh va chạm được liên kết ở trên sử dụng "phép chiếu tức thời" của tốc độ tuyến tính để kiểm tra xem có thứ gì đó đang trên đường của xe không. Tôi đã tự hỏi liệu điều này là đủ trong trường hợp của tôi hay nếu tôi phải dự đoán vị trí của mình theo cách thực tế hơn (ví dụ: Nếu tôi lái 60 ° sang bên phải 90 °, tôi nên tính toán vị trí của mình cho phần còn lại của 30 ° của đường cong, và sau đó giả sử chuyển động tuyến tính).
Cuối cùng, tôi đặc biệt sợ bế tắc . Nói cách khác: mặc dù mật độ phương tiện trên thế giới sẽ khá thấp, tôi lo lắng rằng với một số lượng phương tiện nhất định hội tụ về cùng một điểm, một khi họ sẽ nhận ra rằng họ đang ở trong một vụ va chạm, bất kỳ thao tác lảng tránh nào cũng sẽ không thể xảy ra vì nó sẽ đưa chiếc xe vào con đường va chạm với một số người khác.
Câu hỏi
Làm thế nào tôi có thể đạt được "mục tiêu" của mình? Một lời giải thích sâu sắc tất nhiên được đánh giá rất cao, nhưng các liên kết đến các nguồn lực bên ngoài cũng sẽ giúp ích rất nhiều (tôi chắc chắn tôi không phải là người đầu tiên gặp vấn đề này, nhưng có lẽ tôi đã sử dụng từ khóa sai để tìm kiếm trên web? )
Cảm ơn rất nhiều về sự trợ giúp của bạn!