Myles Dalton
June 2022
[Link to Capstone Presentation]
The 2D web game engine resulting from Build Your Own 2D Game Engine and Crete Great Web Games is a complicated application programming interface (API) that allows developers to quickly create their own robust videogames. The purpose of a game engine is to provide ready-made solutions to the implementation of common videogame features, such as image sprites, realistic motion simulations, and scene lighting. Using these features as a developer requires detailed knowledge of the API’s functions. Previously, the only way to learn this information was by reading the 727-page textbook, studying the source code, or taking a class. In order to make the API more accessible I documented the complete source code and created tutorials on how to use its various features.
To ensure ease of access, the documentation and tutorials were written as websites using HTML and are hosted on the GitHub page of the engine. I used JSDoc 3 to automatically generate separate standardized, interlinked webpages from the internal source code documentation. These webpages clearly present information on the API’s functions that are in the normal videogame developer use case.
While the documentation provides a quick reference point for all experience levels, the tutorials are aimed at first time game developers. The six tutorials showcase how the many classes of the engine are designed to interact, alongside explanations of how and why to use them.
The difficulty of learning how to use the game engine API is a detraction from its viability as an educational tool for beginning developers. Ultimately, the publicly accessible websites for the documentation and tutorials can be valuable resources for independent developers and students.
All materials presented are accessible off the Build Your Own 2D Game Engine and Crete Great Web Games book website.