Bắt đám mây 2D pixel pixel theo dõi chuột


10

Tôi đang làm việc trên một trò chơi 2D đang cố gắng để có được một "đám mây" gồm vài trăm khối hoặc đĩa nhỏ để theo con trỏ chuột của mình mà không chồng chéo lên nhau.

Tuy nhiên, sử dụng công cụ vật lý giới thiệu hiệu suất chậm chạp khi số lượng đĩa tăng lên và việc phát hiện va chạm nói chung là rất khó khăn.

Có một cách dễ dàng để tối ưu hóa động cơ cho loại điều này? Nếu không, tôi có nên tắt máy và viết thứ gì đó của riêng mình không? (Ly hợp tại ống hút ở đây, nhưng :) Có tài nguyên hay ví dụ nào về cách thực hiện việc này không?

Câu trả lời:


13

Vâng, sử dụng một công cụ vật lý cho điều đó sẽ là một chút quá mức cần thiết. Tôi đề nghị bạn thực hiện một thuật toán đổ xô. Những điều cơ bản trong đó là:

  • Tách: Chỉ đạo để tránh đông đúc đàn chiên địa phương

  • Sắp xếp: Chỉ đạo hướng tới tiêu đề trung bình của các đàn chiên địa phương

  • Sự gắn kết: Chỉ đạo để tiến tới vị trí trung bình của các đàn chiên địa phương

Bạn có thể thấy nó hoạt động ở đây và nhận được một số chi tiết về việc thực hiện nó . Bạn sẽ thực hiện một số điều chỉnh nhỏ để bao gồm tác dụng lực lên con trỏ chuột.


1
Xe taxi của bạn sử dụng lưới động ảo hoặc phân vùng không gian khác để tạo hiệu quả đổ xô nếu bạn có nhiều lỗ hổng, bạn cũng không thể xử lý một cách ngây thơ. Rất nhiều cách để tối ưu hóa.
Sean Middleditch
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.