Tôi đã phải viết, những gì có thể tóm tắt là, một trò chơi 3D hoàn chỉnh từ đầu học kỳ này. Cho đến bây giờ tôi chỉ lập trình các trò chơi 2D trong thời gian rảnh rỗi, quá trình chuyển đổi không có vẻ khó khăn, trò chơi đơn giản. Vấn đề duy nhất tôi có là phát hiện va chạm. Điều duy nhất tôi có thể tìm thấy là AABB, giới hạn hình cầu hoặc khuyến nghị của các động cơ vật lý khác nhau. Tôi phải lập trình một chiếc tàu ngầm sẽ di chuyển tự do bên trong hệ thống hang động, AFAIK Tôi không thể sử dụng các thư viện vật lý, vì vậy không có cách nào ở trên giải quyết được vấn đề của tôi.
Cho đến bây giờ tôi đang sử dụng SAT để phát hiện va chạm. Có bất kỳ thuật toán tương tự, tuyệt vời nào, nhưng được tạo ra để va chạm 3D không? Tôi không nói về quãng tám hoặc tối ưu hóa khác, tôi đang nói về phát hiện va chạm trực tiếp của một bộ đa giác 3D với một bộ đa giác 3D khác. Tôi đã nghĩ về việc sử dụng SAT hai lần, chiếu lưới từ đỉnh và mặt bên, nhưng sau đó dường như rất khó để phân chia không gian 3D thành các hình lồi. Ngoài ra, có vẻ như quá nhiều tính toán ngay cả với octrees.
Làm thế nào để các chuyên gia làm điều đó? Ai đó có thể làm sáng tỏ một số.