2012-01-23 43 views
5

Tôi có một loạt các voxels, a la Minecraft. Người chơi/kẻ thù nằm trong lưới này. Tôi không biết phải làm thế nào để làm kiểu phát hiện va chạm này. Lưu ý, đây không phải là đối tượng động di động so với đối tượng động di động, đây là đối tượng di chuyển so với mặt đất/tường/trần cố định.Trình phát hiện va chạm/phát hiện va chạm voxel

Tôi không có vấn đề gì với việc phát hiện, đó là câu trả lời mà tôi không biết cách thực hiện.

Tôi phải làm gì với: Vị trí trình phát, vận tốc và hộp giới hạn và một loạt các voxels 1x1x1 bao quanh trình phát.

+1

Bạn có thể có thêm một chút may mắn xin vào http: //gamedev.stackexchange. com/ – Holger

+0

Tôi có được phép sao chép nó vào một câu hỏi mới ở đó không? – khyperia

+0

@khyperia: Tôi đã gắn cờ nó để được di chuyển bởi một mod. –

Trả lời

6
  • Tính chấm sản phẩm của vận tốc của người chơicác unitsurface normal của voxel va chạm (chỉ bên ngoài).
  • Quy mô (nhân) bề mặt đơn vị bình thường với giá trị này.
  • Trừ kết quả của bạn khỏi vận tốc của người chơi.

này sẽ cung cấp cho bạn "trượt vào tường" hiệu ứng mà hầu hết các trò chơi sử dụng (không có bất kỳ lượng giác có vấn đề)

+0

Điều gì về việc cho biết hướng người chơi nên đi, IE mà bề mặt máy bay là người chơi giao nhau? Đầu, bên, cái gì? – khyperia

+0

Nếu bạn gặp khó khăn trong việc xác định điều đó, tôi khuyên bạn nên đăng câu hỏi mới. Một số có thể đăng câu trả lời tốt hơn tôi có thể. –

+2

Chỉ cần bổ sung, nếu bạn cũng có hệ số nhân khác nhau, trên đầu trang của sản phẩm chấm, mỗi tài liệu trong voxel, thì bây giờ bạn đang tạo mô hình ma sát và có thể có nhiều khối trơn hơn hoặc thô hơn. –

Các vấn đề liên quan