Learn 2D Game Development with C#

By Jebediah Pavleas , Jack Keng-Wei Chang , Kelvin Sung , Rob Zhu

2D games are hugely popular across a wide range of platforms and the ideal place to start if you’re new to game development. With Learn 2D Game Development with C#, you'll learn your way around the universal building blocks of game development, and how to put them together to create a real working game.

Full Description

  • ISBN13: 978-1-4302-6604-4
  • 292 Pages
  • User Level: Beginner to Intermediate
  • Publication Date: December 21, 2013
  • Available eBook Formats: EPUB, MOBI, PDF
  • Print Book Price: $39.99
  • eBook Price: $27.99
Buy eBook Buy Print Book Add to Wishlist

Related Titles

Full Description

2D games are hugely popular across a wide range of platforms and the ideal place to start if you’re new to game development. With Learn 2D Game Development with C#, you'll learn your way around the universal building blocks of game development, and how to put them together to create a real working game.

C# is increasingly becoming the language of choice for new game developers. Productive and easier to learn than C++, C# lets you get your games working quickly and safely without worrying about tricky low-level details like memory management. This book uses MonoGame, an open source framework that's powerful, free to use and easy to handle, to further reduce low-level details, meaning you can concentrate on the most interesting and universal aspects of a game development: frame, camera, objects and particles, sprites, and the logic and simple physics that determines how they interact.

In each chapter, you'll explore one of these key elements of game development in the context of a working game, learn how to implement the example for yourself, and integrate it into your own game library. At the end of the book, you’ll put everything you’ve learned together to build your first full working game! And what’s more, MonoGame is designed for maximum cross-platform support, so once you’ve mastered the fundamentals in this book, you’ll be ready to explore and publish games on a wide range of platforms including Windows 8, MAC OSX, Windows Phone, iOS, Android, and Playstation Mobile. Whether you're starting a new hobby or considering a career in game development, Learn 2D Game Development with C# is the ideal place to start.

What you’ll learn

  • Know your way around the world of game design and the process of designing a game from scratch.
  • Understand the basic architecture of a 2D game engine and develop your own game library.
  • Work with the MonoGame framework and use it to build your own 2D interactive games.
  • Learn and implement simple in-game pseudo autonomous behaviors.
  • Understand and implement the math and physics underlying realistic game interactions.
  • Give your game impact with graphic effects, and audio and special effects.

Who this book is for

This book is perfect for game enthusiasts, hobbyists, and anyone who is interested in building interactive games but is unsure of how to begin. It assumes no background in computer graphics or game development, but readers should be familiar with C# or another object-oriented language.

Table of Contents

Table of Contents

  1. Introducing 2D Game Development in C#
  2. Getting to Know the MonoGame Framework
  3. 2D Graphics, Coordinates, and Game State
  4. Getting Things Moving
  5. Pixel-Accurate Collisions
  6. Game Object States and Semiautonomous Behaviors
  7. Sprites, Camera, Action!
  8. Particle Systems
  9. Building Your First 2D Game

Source Code/Downloads

Downloads are available to accompany this book.

Your operating system can likely extract zipped downloads automatically, but you may require software such as WinZip for PC, or StuffIt on a Mac.

Errata

Please Login to submit errata.

On page 37:

Not really an error, it's more like a suggestion.
In the "ThumbStickState" method for the AllThumbSticks struct, the Y values could be inverted, because the Y values of the Vector2 returned from the thumb sticks are inverted, and it gets kinda confusing when you press UP on the keyboard and the image moves down.