C# course : Game Programming / PDF
C# course : Game Programming / PDF
Table of Contents
1. Introduction
2. Background
2.1 History of Video Games
2.2 From Assembly to C#
2.3 The Story of C#
3. Basics of a Video Game
3.1 Game Design
3.3 Object-Oriented Programming
3.2 The Set Up
4. Concepts of Game Programming
4.1 Preparing the Project
4.2 Game Objects as Classes
4.3 Main Game Loop
4.4 Movement and Collision Detection
5. The Code behind a Video Game
5.1 Idea of Namespaces, Classes and Interfaces
5.2 Data and Data Collections
****************
Sample of the pdf document
Introduction
In the early 1970’s when first
video games began to appear, they were very simple and programmed on rather
primitive computers. Video games began to develop at the same pace as the High
Level languages and amongst some of the first programming languages used for video
games were Assembly language, FORTRAN and BASIC[i]. Such programming languages allowed
for limited capabilities of games and the code was hard to read.
With the development of successful games like “Pong”
and “Tetris” video game industry charted its beginning3. Higher demand for video games produced
higher expectations from video game developers. It was customary to expect the
newly released games to impress the consumer with some innovative aspect. As a
result, evolution in High Level languages began to take place and languages
like C/C++, Java, and Python were invented1. With the coming of these languages games
began to become more and more sophisticated advancing at an increasing rate and
were offering new and ground-breaking features like: Artificial Intelligence
(AI), vast world environment, stunning visuals, and complex game play.
Currently, video game industry’s standard is C++
language, as it offers great abilities to create modern video games. Along with
C++, DirectX has become the most used Application Program Interface (API) for
video game development1. However, with the ever improving
programming languages video games will become more advanced and provide
interesting features for the video game fans.
One of the most innovative
languages in the computer science field is C# (pronounced see-sharp) and comes
from the Microsoft team. C# was developed to replace its predecessor C++. C#
incorporates most of the features that C++ provided and it also includes many
benefits that Java programming language has. The most significant feature of C#
is the support of Microsoft’s .NET framework. The framework offers tons of
useful benefits and features that make C# an incredibly advanced High Level
language2. Because of all of this, many game
developers may make the switch from C++ to C#. Benefits of C# and .NET provide
benefits such as easily manageable code, lots of built in functions, support
for DirectX and many others7.
The knowledge of programming
games with C#, does not only open up career opportunities in the billion dollar
video game industry, but also expands the knowledge of important ideas behind
computer programming[ii]. Experience with game programming
allows understanding of AI, advanced data structures, memory storage, graphics,
algorithms, and further advanced programming subjects8. Most modern games are very advanced and
utilize some of the most advanced topics in programming. Such games take many
years to develop, have a multi-million dollar budget, employ a large team of
programmers and designers, and consist of millions of lines of code2. However, in order to learn the more
complex elements of C# programming and create modern type games, a beginner
programmer must learn the simple basics7.
That is why programmers should begin with
easy games and progress to more complicated ones. Object-Oriented (OO) programming
also becomes an important subject, when it comes to video game development.
Video games are heavily based on objects and it would be extremely hard to program
modern games in non-Object-Oriented languages. Since C# is strictly OO
language, and it contains many pre-built functions, it emerges as the game
programming language of the future7.
This document will introduce
fundamental knowledge about game programming using C#. The reader will be
familiarized with the basics behind creating a game and how C# and .NET make
learning game programming fun and painless experience. Some previous knowledge
of C++ or Java programming is required for understanding the jargons further
used. Understanding the basics of video games will set the programmer on the
path to creating more advanced games with interesting features. Nevertheless,
in the beginning it is crucial to understand the main concepts of C# and how it
can be utilized to create video games........
C# course : Game Programming / PDF
Use Font from Form to paint string on a form
RépondreSupprimercsharp programming examples