Learning C# by programming games

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

C# is the language of choice for learning how to program. It is a very well structured object-oriented language and avoids some of the problems of Java. An excellent free programming environment is available for C#, as well as a game programming framework. And (if necessary) moving from C# to C++ is easy.

Developing computer games is a perfect way to learn how to program in modern programming languages. This book teaches how to program in C# through the creation of computer games – and without requiring any previous programming experience.

Contrary to most programming books, Egges, Fokker and Overmars do not organize the presentation according to programming language constructs, but instead use the structure and elements of computer games as a framework. For instance, there are chapters on dealing with player input, game objects, game worlds, game states, levels, animation, physics, and intelligence. The reader will be guided through the development of four games showing the various aspects of game development. Starting with a simple shooting game, the authors move on to puzzle games consisting of multiple levels, and conclude the book by developing a full-fledged platform game with animation, game physics, and intelligent enemies. They show a number of commonly used techniques in games, such as drawing layers of sprites, rotating, scaling and animating sprites, showing a heads-up display, dealing with physics, handling interaction between game objects, and creating pleasing visual effects such as snow or glitter. At the same time, they provide a thorough introduction to C# and object-oriented programming, introducing step by step important aspects of programming in general, including many programming constructs and idioms, syntax diagrams, collections, and exception handling.

The book is also designed to be used as a basis for a game-oriented programming course. For each part, there are concluding exercises and challenges, which are generally more complex programming endeavors. Lots of supplementary materials for organizing such a course are available on the accompanying web site http://www.csharpprogramminggames.com, including installation instructions, solutions to the exercises, software installation instructions, game sprites and sounds.

Author(s): Arjan Egges, Jeroen D. Fokker, Mark H. Overmars (auth.)
Edition: 1
Publisher: Springer-Verlag Berlin Heidelberg
Year: 2013

Language: English
Pages: 443
Tags: Programming Techniques; Programming Languages, Compilers, Interpreters; Personal Computing; Multimedia Information Systems

Front Matter....Pages I-XXII
Front Matter....Pages 1-1
Building Your First Game Application....Pages 3-9
Programming....Pages 11-25
Game Programming Basics....Pages 27-41
Creating a Game World....Pages 43-62
Front Matter....Pages 63-64
Knowing What the Player Is Doing....Pages 65-79
Reacting to Player Input....Pages 81-93
Basic Game Objects....Pages 95-124
Adding Interaction....Pages 125-140
A Limited Number of Lives....Pages 141-150
Organizing Game Objects....Pages 151-169
Finishing the Game....Pages 171-180
Front Matter....Pages 181-182
Collections of Game Objects....Pages 183-195
Fullscreen Games....Pages 197-202
Game Objects in a Structure....Pages 203-223
Redesigning the Game World....Pages 225-231
Gameplay Programming....Pages 233-248
Game States....Pages 249-254
Finishing the Game....Pages 255-269
Front Matter....Pages 271-272
Sprite Sheets....Pages 273-279
Menus and Settings....Pages 281-288
Front Matter....Pages 271-272
Game State Management....Pages 289-296
Loading Levels from Files....Pages 297-314
Pairing the Penguins....Pages 315-326
Finishing the Game....Pages 327-337
Front Matter....Pages 339-340
Creating the Main Game Structure....Pages 341-349
Animation....Pages 351-360
Game Physics....Pages 361-375
Intelligent Enemies....Pages 377-386
Adding Player Interaction....Pages 387-392
Finishing the Game....Pages 393-402
Back Matter....Pages 403-443