In this project-based course you will focus on computer programming to build applications and games. ​Topics include researching games, obtaining client viewpoints, brainstorming solutions, rapid prototyping, testing, and iterative re-design. You will develop best practices for prototyping, examining user interfaces, play testing, game balancing, pacing and workflow. You will create 2D games using Scratch GameSalad that meets the criteria given by a client who will provide feedback and evaluate the success of your game. Then you will take your game design skills to the third dimension and create 3D games using industry standard software such Unreal Engine 5 and/or Unity which will introduce you to programming in C#. Although this unit is practically orientated, students will cover some theoretical aspects of game design and how it is used in our society.