Làm thế nào để bạn xử lý 'di chuyển đến chuột', nếu người chơi đã ở chuột?


7

Tôi đang làm một trò chơi 2D từ trên xuống. Khi người chơi của tôi di chuyển, con trỏ không di chuyển với nó. Trong trò chơi của tôi, người chơi di chuyển bằng cách đối mặt với con trỏ và sau đó đi về phía nó. Điều này có nghĩa là cuối cùng, người chơi sẽ tiếp cận con trỏ và sau đó thoát ra.

Làm cách nào để xử lý chuyển động của người chơi khi họ chạm chuột?


2
Một vài hình ảnh minh họa hoặc ảnh chụp màn hình sẽ giúp làm rõ hơn những gì bạn đang cố gắng thực hiện / sửa chữa.
William Mariager

1
Bạn sẽ phải xử lý trường hợp này bằng cách này hay cách khác (ví dụ như chỉ di chuyển nếu có khoảng cách tối thiểu?). Hầu hết các trò chơi tôi có thể nghĩ sẽ bỏ qua một con trỏ quá gần hoặc tiếp tục xoay bạn theo hướng nó đang đối mặt.
Mario

Nếu có một số vấn đề cụ thể phát sinh bạn đang cố gắng giải quyết, hãy thêm một số thông tin (mã nguồn!). Ngay bây giờ, nó không thực sự rõ ràng những gì bạn đang tìm kiếm ngoài "có" hoặc "không" (không thể).
Mario

Câu trả lời:


15

Nhiều trò chơi 2D từ trên xuống có camera tập trung vào người chơi. Điều này làm cho chuột luôn 'di chuyển' khỏi người chơi. Có thể xử lý 'trục trặc' mà bạn đề cập bằng cách thêm vùng chết ngay lập tức xung quanh người chơi. Nếu chuột được nhấp trong vùng chết này, các lệnh di chuyển và xoay không được kích hoạt.

Hành vi di chuyển và xoay không nhằm mục đích hoạt động trong khoảng cách ngắn như vậy. Nó sẽ thường xuyên vượt quá mục tiêu và đây là nơi 'trục trặc' được giới thiệu. Thuật toán về cơ bản dao động trên mục tiêu không bao giờ có thể đạt được nó. Cách khác để khắc phục điều này là có một số loại vận tốc tối đa dựa trên khoảng cách đến mục tiêu. Hãy xem các hành vi chỉ đạo đến để tìm hiểu thêm về vấn đề này:

Tránh quỹ đạo trong hành vi chỉ đạo theo đuổi

Đến hành vi lái


2
+1 cho vùng chết, đây có lẽ là cách nhanh nhất và đơn giản nhất để khắc phục sự cố.
Alexandre Desbiens 23/12/14

1
Hấp dẫn. Trong tất cả các trò chơi của tôi nếu distance<speedtôi thay đổi speedkhoảng cách bằng nhau, di chuyển một tích tắc, sau đó dừng hoạt hình.
Vịt Mooing

+1 thực sự, một "nếu con trỏ> minDistance đơn giản từ người chơi, sau đó di chuyển" có xu hướng hoạt động tốt và bạn có thể thay đổi mạnh mẽ điều khiển và cách trò chơi của bạn chơi bằng cách chơi với số. Một cái nhỏ sẽ tránh được các trục trặc, trong khi một cái lớn thay đổi cách xử lý cơ bản để nó lỏng lẻo và dễ tha thứ hơn nếu bị giật tay nhỏ.
BrianH
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.