slide1 l.
Skip this Video
Loading SlideShow in 5 Seconds..
Lecture 1 Game Programming Introduction PowerPoint Presentation
Download Presentation
Lecture 1 Game Programming Introduction

Loading in 2 Seconds...

play fullscreen
1 / 11

Lecture 1 Game Programming Introduction - PowerPoint PPT Presentation

  • Uploaded on

Lecture 1 Game Programming Introduction Lecture 1 Game Programming Introduction Choosing the Right Language and Game Library In this course we will use standard C/C++ as our programming language with Allegro.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Lecture 1 Game Programming Introduction' - Antony

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Lecture 1

Game Programming


Lecture 1

Game Programming



Choosing the Right Language and Game Library

In this course we will use standard C/C++ as our programming language with Allegro.

Allegro is an open-source graphics library that is designed to support game development.

In Windows, Allegro accesses the graphics and sound features of DirectX.

Using C++ with Allegro will permit us to write game programs that can be ported to any computer platorm running any operating system, including Windows, Mac OS X, Solaris, BeOS, FreeBSD, and Linux.


Simple Program using Allegro

#include <allegro.h>

int main(void)



allegro_message("Welcome to CSC 575");


return 0;




Why Game Programming?


Programming games can be more enjoyable than playing them.

Computer/Video Game Industry is now larger than the Movie Industry

A great new game concept can make its creator famous.

Game programming give a deeper understanding of many CS topics:

Real-Time Systems Issues


Graphics and Animation

Sound Generation

Graphical Design and Layout

Human/Computer Interfaces

Scientific Visualization




Types of Games

Classic Arcade

1st Person Shooter



Board Games

Adventure/Puzzle Solving

Flight Simulators

World Simulations


Fighting Games


Can One Person Still Write a Great Game ?


While many popular computer games are the result of 100s of programmers, designers, writers, artists, and producers, there is still a place for the lone programmer. The growing popularity of online (e.g. applet-level) games and games on PDA's, handhelds, and even cell-phones provide a wide variety of opportunities for individuals and small start-up game companies.


Establishing and Maintaining a Game Theme

One of the most important and most difficult aspects of game design is a consistent and enjoyable theme. The theme of a game affects the mood of the player. It is important to put some thought into choosing an appropriate theme before jumping into the details of game design and development. Keep the theme of your game in mind as you design graphical elements of the background and characters, select sounds, and sequence events.


compute elapsed

time t



read player input

state data

update game

state S(t)

image data

render and

display S(t)



The Game Loop


Lessons Learned

  • There are limits to what you will be able to cover in this course. If your dream is to create a Massive Multiplayer Role-Playing Game (MMRPG), you will have to take solice in the fact that the lessons learned in this course apply directly to game development projects that are much bigger than can be accomplished here.
  • Understanding the physics of motion and body on body interations is the same for all applications.
  • The incorporation of and manipulation of sound applies to the simple single-player game as well as the larger multiplayer game.
  • The techniques of animation can be applied equally well to an animated sprite as to a intro/segway video sequence.
  • The methods to maintain real-time interations as the complexity of the game scene varies are the same for any level of complexity.
  • The skills developed in creating an enjoyable single-player game are essential for development of an (MMRPG).