Exercises
An exercise takes the learner on a journey towards an educational experience. Exercises are learning-oriented.
Welcome to Game Programming! I’m really excited to teach and learn the process of developing games with you. Even though we’ll “only” be making 2D games in this course, I think you’ll be surprised at how complex these (seemingly simple) games are to develop. Hopefully, you’ll gain an appreciation of how developers back in the day were able to accomplish so much with limited (for their time) hardware.
In this course, we will be programming in JavaScript and making games with the HTML5 <canvas>
element. This course is not about learning any particular engine or framework (ex. Unity, GameMaker, Phaser, etc.) as these kinds of software tend to have their time in the spotlight before the new shiny thing bumps them out. Instead, this course focuses on the fundamentals of game development that can be applied to any engine or framework that you might use in the future. This includes things like code organization, architecture, and design patterns that are common to game development.
When your fundamentals are solid, you can learn any framework very quickly and you’ll recognize how the components of the framework function under the hood. Ultimately, this leads to you becoming a pro developer!
Trust me 😉
This site uses the Diataxis framework for writing technical documentation. It is split into the following categories:
Exercises
An exercise takes the learner on a journey towards an educational experience. Exercises are learning-oriented.
Guides
How-to guides direct the reader through a problem or towards a result. How-to guides are goal-oriented.
Concepts
Concepts are explanations or discusive treatments of a subject, that permit reflection. Concepts are understanding-oriented.
References
References are technical descriptions of the machinery and how to operate it. Reference materials are information-oriented.