Sự khác biệt giữa vật lý Arcade, P2 và Ninja trong Phaser


33

Tôi là người mới bắt đầu và cố gắng học phát triển trò chơi bằng Phaser . Hiện tại Phaser đang cung cấp ba hệ thống vật lý là Arcade, P2 và Ninja. Nhưng tôi không biết sự khác biệt giữa chúng và tôi cũng muốn biết trong kịch bản nào chúng ta nên sử dụng một hệ thống vật lý cụ thể?

Xin vui lòng cho tôi một cái nhìn sâu sắc cho các hệ thống vật lý.


1
Phaser vận chuyển với hệ thống Vật lý Arcade, Ninja Vật lý và P2.JS - một hệ thống vật lý toàn thân. Arcade Vật lý chỉ dành cho va chạm AABB tốc độ cao. Ninja Vật lý cho phép gạch và dốc phức tạp, hoàn hảo cho cảnh quan cấp độ và P2.JS là một hệ thống vật lý toàn thân, với các ràng buộc, lò xo, hỗ trợ đa giác và hơn thế nữa.
congusbongus

Và bây giờ cũng có phụ trợ Box2D trả phí, tương tự như P2.JS nhưng tốt hơn.
Ciro Santilli 心 心

Câu trả lời:


39

Như đã đề cập trong các bình luận, trang web của họ đã giải thích ba hệ thống là gì và chúng có thể được sử dụng để làm gì.

Arcade Vật lý chỉ dành cho va chạm AABB tốc độ cao.

AABB có nghĩa là hình chữ nhật giới hạn theo trục; điều đó có nghĩa là bạn có các đối tượng mà không quay và bạn chỉ kiểm tra xem hình ảnh (là hình chữ nhật) có trùng với hình ảnh khác không (vì vậy có khả năng xảy ra xung đột). Đây là giá rẻ để tính toán, và nhanh chóng, đó có lẽ là lý do tại sao họ khuyên dùng nó cho các va chạm tốc độ cao.

Một vấn đề với AABB là nó không đảm bảo rằng thực sự có va chạm; bạn có thể có một khu vực hoàn toàn trong suốt chồng chéo.

Ninja Vật lý cho phép gạch và dốc phức tạp, hoàn hảo cho cảnh quan cấp, [...]

Hãy nhớ làm thế nào AABB không được quay? Ninja Vật lý sẽ xử lý các vòng quay (vì vậy nó có thể làm dốc và gạch phức tạp). Đây là một mô hình vật lý linh hoạt hơn (và có lẽ chính xác hơn); nó có lẽ chậm hơn

[...] P2.JS là một hệ thống vật lý toàn thân, với các ràng buộc, lò xo, hỗ trợ đa giác và hơn thế nữa.

Nếu bạn cần mô hình lò xo (ví dụ: một cái gì đó lắc lư như một con lắc), các ràng buộc về lực và hình dạng đa giác tùy ý (ví dụ: tứ diện), điều này nghe giống như những gì bạn muốn. Nếu bạn muốn có một khung tham chiếu, hãy nghĩ về một cái gì đó như Angry Birds.

Dựa trên trò chơi của bạn, bạn có thể chọn cái nào phù hợp nhất với nhu cầu của bạn. Nghe có vẻ như một phổ tốc độ so với độ chính xác / độ phức tạp (Arcade Vật lý là nhanh nhất nhưng đơn giản nhất).


Có một tỷ lệ của mô hình chính xác hơn làm giảm hiệu suất?
expiredninja

@Exiredninja vâng, tất nhiên. AABB nhanh và rẻ; hai cái còn lại phức tạp hơn và giàu tính năng hơn (ví dụ: dốc, xoay) để chúng có chi phí hiệu năng.
tro999

tôi đoán tôi đã tự hỏi về những gì các ngưỡng nói chung là về số lượng và / hoặc độ phức tạp của các đối tượng.
hết hạn

2
@Exiredninja sẽ phụ thuộc phần lớn vào logic phần cứng và trò chơi của bạn. Tôi đề nghị bạn mở một câu hỏi khác, hoặc tốt hơn nữa, chỉ cần thử chúng và xem những gì phù hợp nhất với nhu cầu của bạn.
tro999
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.