Làm thế nào để đối phó với cửa hoạt hình trong gạch isometric


10

Tôi có một vấn đề khó khăn Tôi không biết làm thế nào để giải quyết tốt nhất: Tôi có một ô cửa hoạt hình. Khi nó đóng, nó sẽ được sắp xếp theo một cách, nhưng khi mở, nó sẽ cần được sắp xếp theo một cách khác, vì nó thuộc về một ô khác (gạch lân cận).

Đây là cánh cửa đóng lại:

Đóng cửa

và cánh cửa mở ra:

cánh cửa mở ra

Tôi tưởng tượng rằng có thể ghi đè hệ thống sắp xếp cho các ô như vậy và điều chỉnh sắp xếp dựa trên khung, nhưng nó cảm thấy hơi khó khăn.

Có ai gặp phải một kịch bản tương tự? Bất kỳ giải pháp thanh lịch?


2
Làm thế nào để hệ thống phân loại của bạn hiện phát hiện thứ tự vẽ của gạch?
Roy T.

Câu trả lời:


4

Có lẽ bạn có thể tạo ra một cánh cửa từ hai vật thể, trên các ô khác nhau và chỉ hiển thị một trong số chúng tại một thời điểm. Bằng cách này, cánh cửa mở ra cũng có thể hình dung chặn chuyển động, điều này có vẻ hơi thực tế.


4

Tạo ba họa tiết ...

  1. Cửa đóng (như sprite đầu tiên của bạn) - chuyển động khối
  2. Chỉ khung (bài trong trường hợp của bạn) của cánh cửa, nhưng không có cửa - không chặn chuyển động
  3. Chỉ cần cánh cửa ở vị trí mở - khối chuyển động

Khi cánh cửa được đóng lại, hãy vẽ sprite 1 và coi nó như một "công cụ chặn" để người chơi không thể bước qua nó.

Khi cánh cửa được mở, hãy thay thế sprite đó bằng # 2 (chỉ là trụ cửa). Sau đó đặt sprite # 3 (chỉ cửa) vào ô liền kề mà cửa sẽ ở.

Đóng cửa chỉ là loại bỏ cánh cửa, và thay thế bài viết bằng bài + cửa ở vị trí đóng.

Với thiết lập này, bạn không phải lo lắng về việc hiển thị cửa mở theo bất kỳ thứ tự đặc biệt nào. Chỉ cần kết xuất nó theo thứ tự như bất kỳ đối tượng nào khác trong hình vuông.

Nhược điểm là bạn không thể có người chơi hoặc bất kỳ đối tượng nào khác trong quảng trường nơi cửa mở sẽ đi.


3

Có 2 thủ thuật tôi sử dụng để sắp xếp trong 2D:

  • Thêm vị trí mặt đất cho các họa tiết, đây là một điểm mà sprite chạm vào mặt đất (chân nam, thân cây, khung cửa) và sắp xếp theo nó thay vì các pixel sprite. Cách này sprite sẽ không bị ảnh hưởng bởi hình ảnh động

  • Thêm những đứa trẻ không thể phân loại vào đồ vật (đàn ông có thể có một vài đứa trẻ không ảnh hưởng đến việc sắp xếp - áo choàng, cung, kiếm, v.v., khung cửa có cửa con). Cách này hoạt hình của các họa tiết con không ảnh hưởng đến việc sắp xếp.


1

Cách tốt nhất để giải quyết việc sắp xếp các đối tượng là không sắp xếp gì cả. Nếu bạn sử dụng bộ đệm độ sâu, bạn có thể kết xuất mọi thứ trong một lần. Các đối tượng có giá trị z cao hơn sẽ ở xa hơn các đối tượng có giá trị z thấp hơn.

Ngay cả khi trò chơi của bạn là 2D, bạn vẫn nên xem xét sử dụng tọa độ 3D với bộ đệm có chiều sâu, nếu không, bạn sẽ mãi mãi rối với thuật toán của họa sĩ .


Đúng, nhưng làm thế nào để xác định vị trí Z? Chỉ bằng cách sắp xếp
Kromster

Có, nhưng việc sắp xếp đó bây giờ xảy ra ngoại tuyến, thay vì trong khi kết xuất. Bây giờ, người thiết kế mức có thể xây dựng cấp độ với các giá trị Z trong tâm trí mà không phải lo lắng về việc cắt các đối tượng.
hiệp sĩ666
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.