Những tính năng nào thuộc về động cơ và những tính năng nào của trò chơi?


19

Ngay bây giờ, tôi thấy mình đang triển khai và thử nghiệm các tính năng mới cho công cụ trò chơi 2D của mình, bằng cách trực tiếp mã hóa chúng vào công cụ. Đồng thời, tôi có một trò chơi giới thiệu với hỗ trợ kịch bản, nên gọi các chức năng của động cơ. Tôi đính kèm, ví dụ như một chuyển động gạch cố định cho lớp Thực thể trong công cụ, thay vì kịch bản này đặc biệt cho trò chơi. Điều này chắc chắn phá vỡ ý tưởng về một công cụ chung được sử dụng cho nhiều hơn một trò chơi.

Có cách thực hành tốt nhất nào để tiếp tục tập trung vào việc thực hiện đúng trong các phần phù hợp (đó là engine vs game) không?

Câu trả lời:


25

Vâng, có một vài cách nghĩ về điều này. Một là liệt kê các tính năng cụ thể mà công cụ nên có (những gì bạn đã hỏi ở đây.) Tuy nhiên, cách khác là bắt đầu tạo trò chơi mà không phải lo lắng quá nhiều về "công cụ", và sau đó các tính năng bạn tìm thấy đang được sử dụng lại giữa nhiều trò chơi (đặc biệt là các tính năng được sử dụng trong mọi trò chơi) bạn nên di chuyển từ nguồn cho một trò chơi cụ thể vào một cơ sở mã được chia sẻ có tên là "engine".

Bởi vì cuối cùng, tại sao bạn muốn một tính năng nhất định trong công cụ chứ không phải trong trò chơi là nó được chia sẻ giữa nhiều trò chơi. Thông thường, đó sẽ là những thứ như vẽ lệnh, bộ điều khiển đầu vào và mã mạng. Một công cụ trò chơi 2D sẽ có rất nhiều tính năng đồ họa 2D, như tải hình ảnh, phân cấp hiển thị theo thứ tự z, xử lý spritesheets, tweening, v.v. Rất nhiều trò chơi cần mô phỏng vật lý, mặc dù mặt khác nhiều người không làm được. Trong khi đó, nhiều thứ "dưới mui xe" được sử dụng trong hầu hết mọi trò chơi bao gồm bộ hẹn giờ, nhắn tin sự kiện và thậm chí các chức năng toán học dành riêng cho phát triển trò chơi (ví dụ: distanceToTarget ()


Mẩu chuyện dài:

A) Công cụ nên có các tính năng được chia sẻ bởi hầu hết các trò chơi.

B) Bạn tìm hiểu các tính năng được chia sẻ bằng cách tạo ra một loạt các trò chơi.


7
+1 -just start making games without worrying too much about the "engine"
JCM

1
Vâng just start making games without worrying too much about the "engine"chắc chắn là một gợi ý tốt đẹp.
Christian Ivicevic

3
Tôi đồng ý với hai ý kiến ​​trên tôi, nhưng nhận xét "chỉ cần tạo trò chơi mà không phải lo lắng về động cơ" đã được đưa ra khỏi bối cảnh và vô nghĩa mà không có phần còn lại: "và sau đó các tính năng bạn tìm thấy đang được sử dụng lại giữa nhiều trò chơi (đặc biệt là , các tính năng được sử dụng trong mọi trò chơi) bạn nên chuyển từ nguồn cho một trò chơi cụ thể sang một cơ sở mã được chia sẻ có tên là "engine". Nói tóm lại, hãy tạo ra càng nhiều trò chơi càng tốt để bạn có thể biết những gì nên đi theo một công cụ và những gì nên làm ' t.

2
Đây là một ý tưởng tuyệt vời vì nó cũng giúp bạn không thực hiện các tính năng động cơ mà bạn không thực sự cần trong các trò chơi của mình.
Zachary Yates

2
+1 để giữ tinh thần của Quy tắc ba .
Joshua Drake
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.