Đừng để bị cuốn theo khái niệm "công cụ trò chơi". Mặc dù sự thật là các studio trò chơi thường có một số loại công cụ trò chơi mà họ tạo ra để tăng tốc quá trình sản xuất trò chơi, nhiều nhà phát triển độc lập đã cố gắng tạo ra một công cụ trò chơi mà họ không bao giờ thực sự tạo ra thứ gì đó hoạt động.
Một công cụ trò chơi có thể là bất cứ điều gì bạn muốn nó được. Nếu bạn thấy đủ điểm chung giữa các trò chơi của mình thì bạn có thể phân lớp một Engine
lớp như ví dụ của bạn, điều đó tốt. Nếu một "công cụ" thực sự chỉ là một thư viện nhỏ các chức năng mà bạn thấy tiện dụng trong các trò chơi trước đây bạn đã phát triển, thì điều đó cũng thật tuyệt. Dù nó có ý nghĩa gì với bạn, khái niệm "công cụ" chỉ là mã có thể tái sử dụng để giúp bạn tạo ra nhiều trò chơi hơn.
Nếu bạn đang cố gắng tạo một trò chơi, đừng tập trung vào việc tạo ra một công cụ. Làm một trò chơi. Khi trò chơi đã hoàn tất và bạn đã sẵn sàng để tạo trò chơi thứ hai, hãy bắt đầu tạo trò chơi thứ hai và bạn sẽ tìm thấy các bit mà bạn đã thực hiện trong trò chơi đầu tiên của mình; sau đó bạn có thể trích xuất các bit đó vào thư viện hoặc công cụ để chia sẻ giữa hai trò chơi. Đó là cách một động cơ nên được thực hiện. Đây thường không phải là thứ mà bạn quyết định viết trước khi tạo trò chơi, bởi vì bạn sẽ kết thúc với hàng tấn mã chưa được kiểm tra và về cơ bản bạn đang viết những thứ trước khi bạn biết bạn cần chúng (do đó bạn thậm chí không cần chúng). Điều này giống như tối ưu hóa sớm, nhưng tồi tệ hơn.
Vì vậy, để trả lời trực tiếp câu hỏi của bạn, về cơ bản, công cụ trò chơi là một "thứ" có thể tái sử dụng (thư viện, công cụ, khung) mà một studio trò chơi sử dụng để hỗ trợ nhanh chóng sản xuất trò chơi và họ thường tạo ra nó với các trò chơi cụ thể hoặc sau khi đã tạo một số trò chơi, trích xuất các bit tương tự và đúc chúng thành một công cụ mà chúng biết có thể được sử dụng trong các trò chơi trong tương lai. Nó gần như không bao giờ được tạo mà không cần xem lại (hai hoặc nhiều trò chơi đã được tạo) hoặc lập kế hoạch TUYỆT VỜI.