Gear3Engine Development Plan #1274
JSideris
started this conversation in
Game Engine Tech Blog
Replies: 1 comment
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Saucers.Space started off as a single JavaScript project written for Node.js with express server, serving raw HTML and the JS game code.
Since then, it has been rewritten multiple times. If you visit the projects page, you can see the multiple phases that were done.
In phase 1, the entire client-side code was rewritten in TypeScript, and the server-side code was split into two projects: an API (which managed accounts, logins, permissions, stats, etc), and a game instance (which actually hosted and simulated the game server-side).
In phase 2, the server started getting converted into TypeScript, and a common Saucers library was extracted so that the server and client could share code for the first time, which was previously a huge bottleneck for development. This and all further steps are still in progress as of this announcement.
In phase 3, I started separating out anything that was specific to Saucers.Space from anything that could be used to build other games. Quite by accident, a game engine was built. The name of this engine is Gear3Engine. It is a massive undertaking, but I will use this engine to build more games, once it is completed.
Finally, in phase 4 I began breaking down the game engine into modules in order to address the problem that a single engine can't be used to serve both client and server, 2D and 3D, etc, without extensive overhead. Not all games need AI. Clients need graphics. Servers need DB access. This decoupling was one of the most challenging projects of all.
I don't anticipate that there will be a phase 5. So this will be the final major project for this engine (aside from the development of additional modules, such as a planned 2.5D graphics module, and some simulation tools).
Beta Was this translation helpful? Give feedback.
All reactions