Phát hiện va chạm FPS


11

Làm thế nào để phát hiện va chạm và chuyển động thường được xử lý trong FPS, đặc biệt là xử lý những thay đổi nhỏ về chiều cao mặt đất như cầu thang (cả về độ nghiêng và độ suy giảm)?

Câu trả lời:


12

Các thực thể thường được đại diện bởi một viên nang (hình trụ có hình cầu ở hai đầu) chống lại hình học thế giới (hoặc lưới va chạm đơn giản hóa) cho va chạm thế giới.

Cầu thang thường không có va chạm với một đường dốc vô hình, hoặc dưới một độ cao nhất định, bạn thường có được một thang máy lên như một tác dụng phụ của giải quyết va chạm. (bạn sẽ nhận được sự thâm nhập với chuyển động như một phần của kích thước bước và độ phân giải sẽ đưa nó lên trên dưới dạng mặt phẳng gần nhất)

Tôi nghĩ đây là cách Unreal 3 hoạt động, nhưng tôi có thể sai. Tôi nhớ rằng đã thấy một hệ thống phân cấp hộp giới hạn trong Nguồn, nhưng tôi không thể nhớ nếu đó chỉ là để chiến đấu. bất kể, viên nang là đơn giản và nhanh chóng


1

Trong Unity 3D, cách dễ nhất là có bộ điều khiển người đầu tiên. Thông thường nhân vật phải nhảy lên nếu chiều cao bước cao hơn bước bù. Nhưng một cách khác để làm điều đó là thêm một máy va chạm hộp và xoay nó để nhân vật có thể lướt qua cầu thang một cách dễ dàng, như thể đó là một đoạn đường nối.


0

Câu trả lời của Brady là tốt, nhưng nếu bạn muốn một cách khéo léo để làm điều đó, bạn có thể chỉ cần chiếu một tia xuống hình học va chạm cơ sở của bạn, tìm ra hình tam giác nào chạm vào, và sau đó sử dụng trung bình có chiều cao của các câu tam giác để tìm ra chiều cao mặt đất.


Nếu nó là một hình tam giác lớn, dốc thì sao? Bạn có thể bằng cách nào đó tìm thấy điểm giao nhau của tia không?
Gustavo6046

Bạn đã biết vị trí trong mặt phẳng, bạn chỉ cần chiều cao, đó là lý do tại sao tôi chỉ định trung bình có trọng số. Tôi khuyên bạn nên chọn một cuốn sách về phát hiện va chạm nếu bạn thực sự muốn đi xa hơn. Đây không phải là định dạng tốt nhất để học toán.
BigSandwich

Ồ, vâng. Trọng số trung bình. Tôi nghĩ rằng tôi đã đọc sai điều đó. Lỗi của tôi.
Gustavo6046
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.