Using a comprehensive and analytical approach to game engine architectures, this online course will teach you how to effectively design and develop games.Requirements:
Hardware Requirements:
- This course must be taken on a PC. Macs are not compatible.
Software Requirements:
- PC: Windows 8 or later (10 recommended)
- Browser: The latest version of Google Chrome (recommended), Mozilla Firefox, or Microsoft Edge.
- Microsoft Visual C++ 6.0 or higher (Visual Studio Community 2019 Edition recommended)
- Blender 3D (Latest version)
- Unreal Engine 4 (Latest version)
- Adobe Acrobat Reader.
- Software must be installed and fully operational before the course begins.
Other:
- Email capabilities and access to a personal email account.
Instructional Material Requirements:
The instructional materials required for this course are included in enrollment and will be available online.
Video game design and development is challenging, but the rewards are worth it. With this unparalleled comprehensive training course, you'll master skills that open doors to the growing video game industry. By the end of the course, you will have designed and created your own video game for the PC and will stand ready to join a team working on projects with larger scope or pursue independent development.
Using a comprehensive and analytical approach to game development, this course offers you the opportunity to learn how to effectively implement technical game ideas, assuming no prior training or experience. The curriculum is divided into four major areas of study: programming languages, mathematics skills, game asset creation, and modern real-time game engines. It will conclude with an independent study phase where you will design, document, and create your own game using all of the programming and game art skills you learned in the core classes. This course is entirely online and is completed at your own pace.
- C++ Programming for Game Developers I
- How to Create a C++ Program, Console Input and Output, Variable, and Arithmetic Operators
- Logical Operators, Controlling Program Flow, Repetition, and Arrays
- Functions
- References and Pointers
- Classes and Object-oriented Programming Design
- Strings
- Operator Overloading
- File Input and Output
- Inheritance and Polymorphism
- C++ Programming for Game Developers II
- Template Classes and Template Functions
- Error Handling
- Number Systems, Data Representations, and Bit Operations
- The Standard Template Library
- Introduction to Windows Programming
- Menus and Drawing with GDI
- Dialog Boxes
- Timing, Animation, and Sprites
- Designing and Implementing a 2D Game
- Game Mathematics
- Real Numbers
- Algebra
- Set Theory and Functions
- Polynomials
- Trigonometry
- Vector Mathematics
- Matrix Mathematics
- Quaternion Algebra
- Linear Transformations
- Analytic Geometry
- General Game Modeling and Texturing
- Interface and Rendering Modes
- Primitives, Meshes, and Mesh Editing
- Pivots and Manipulators
- The 3D Cursor
- Object Join, Separate, Duplication
- Polygon Structure and Count
- Modeling with Bevel, Extrude, Multiresolution Modifiers
- Spin Tool and Splines
- Image Planes
- Texture Maps and UV Unwrapping
- Creating and Saving Scenes
- Unreal Engine Foundation
- Creating Projects and Understanding the User Interface
- Viewport Navigation
- View Modes and Show Flags
- Placing Objects in a Level
- The Content Browser
- Material Creation
- Basic Scene Lighting
- Introduction to Blueprints
What you will learn
- Learn how to design and create video games for PC
- Understand the technical and aesthetic fundamentals for creating a successful game
- Master the math, programming language, and game engine knowledge needed to design video games
- Embark on an independent study module during which you'll create your own game
How you will benefit
- Create your own video game that can be used as a portfolio piece or shown to prospective employers
- Jump-start your career as a video game designer, whether you want to work at an organization or pursue independent projects
- Gain confidence in your design skills
- Complete this course online at your own pace while still maintaining your current job or schooling efforts
Frank Luna has programmed interactive 3D computer graphics for more than a decade. He has 15 years of C++ programming experience, having worked as a contractor, with Hero Interactive, and on the open source Scorch 3D engine. Since 2004, he has taught C++ and mathematics for games at the Game Institute. He has also written a number of best-selling textbooks on game and graphics programming, including "Introduction to 3D Game Programming with DirectX 11.0."
John DeGoes began writing software and designing digital logic circuits during the early 1980s. He has been actively involved in the fields of computer science, mathematics, and game development for more than fifteen years. He has authored two games programming books, "3D Game Programming with C++" and "3D Game Programming with C++ Gold Edition" and several published articles on the subject. DeGoes holds a bachelor's degree in applied mathematics from Montana State University-Billings and is working on his doctorate in applied mathematics.
Gary Simmons started programming games in 1981. In May 2000, he founded Mr.GameMaker.com, a teaching site dedicated to helping game programmers (hobbyists and professionals alike) learn cutting-edge game programming techniques. Simmons has published dozens of full-length game development papers and tutorials. He has been teaching since 2001 and also serves as a faculty director.
Adam Hoult is the lead technology developer at the Game Institute. He started programming in the early 1980s and has since developed a number of engine and tool design projects. Hoult spent time running a development tools production company and game programming site. Eventually, he teamed up with fellow instructor Gary Simmons to develop the successful Mr.GameMaker.com teaching website.
Brian Hall is an engineer and AI programmer at Midway Amusement Games. He currently works on advanced AI algorithms for an upcoming action-adventure console title. He has also designed and written parametetric airport generation software for SimAuthor Inc, as well as a real-time CLOD terrain system using real-world satellite imagery and elevation data. Previously, Hall was a senior engineer at Accurate Automation Corporation, where he developed real-time learning systems for detecting pilot-induced oscillations in aircraft.
David Bourg is a naval architect and marine engineer. He performs computer simulations and develops analysis tools that measure things such as hovercraft performance and the effect of waves on the motion of ships and boats. He also teaches ship design, construction, and analysis at the college level. In addition to his practical engineering background, Bourg owns a computer game development and consulting company, Crescent Vision Interactive. Current projects include a massive multiplayer online role-playing game and several Java-based multiplayer games.