Skip to content

Advanced 2D Game Development

Best in textbook rentals since 2012!

ISBN-10: 1598633422

ISBN-13: 9781598633429

Edition: 2009

Authors: Jonathan S. Harbour

List price: $49.99
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Description:

This book is a comprehensive guide to 2D game programming, covering every significant 2D game subject in one volume. It includes coverage of 2D animated sprites, tile-based scrolling, level editing, vector graphics, 2D physics, and the major game genres--real time strategy (Command & Conquer), turn based strategy (Civilization IV), vertical scrolling shoot-em-ups (Mars Matrix), horizontal shoot-em-ups (R-Type), scrolling platform-style games (Mario), and of course, role-playing games (Ultima). It includes discussion of overall game theory and development, explaining how to create a real time strategy game from concept to completion. Readers will create their own professional-quality RTS…    
Customers also bought

Book details

List price: $49.99
Copyright year: 2009
Publisher: Course Technology
Publication date: 6/9/2008
Binding: Mixed Media
Pages: 336
Size: 7.40" wide x 9.13" long x 0.83" tall
Weight: 1.518
Language: English

Jonathan S. Harbour is an associate professor at the University of Advancing Technology (Tempe, AZ). His web site at www.jharbour.com includes an online forum and blog for book support. His most recent game projects are Starflight - The Lost Colony (www.starflightgame.com) and Aquaphobia: Mutant Brain Sponge Madness (www.aquaphobiagame.com).

Building a 2D Game Engine
Compiler Support
DirectX SDK Support
Why Do We Need an Engine?
Creating the Engine Project
Dev-C++ Project
Visual C++ Project
Engine Source Code
Compiling the Engine Project
Testing the Engine
The TestEngine Source Code
Dev-C++ Library Test Project
Visual C++ Library Test Project
3D Rendering
Rendering Basics
Adding Rendering Support
Adding Camera Support
Adding Mesh Support
Rendering Meshes
Runtime Cubes
Bouncing Balls
Direct Lighting
Directional Light
Spot Light
Point Light
Creating Lights
2D Rendering
Basic 2D Rendering
Raising Happy Sprites
Creating Vectors
Testing Vector3
Creating a Reusable Sprite Class
Rendering Spirites with Transparency
Color Key Transparency
Alpha Channel Transparency
Animation
Animation Demo
Sprite Rotation and Scaling
Animation with Transforms
Particles
Input
Keyboard Input
DirectInput Device
Initializing the Keyboard
Reading Key Presses
Mouse Input
Initializing the Mouse
Reading the Mouse
Engine Modifications
Input Class
Engine Changes
Testing Keyboard and Mouse Input
Audio
Designing an Audio System
What Is FMOD?
Using the FMOD SDK
Audio Classes
Sample Class
Audio Class
Adding FMOD to the Game Engine
Audio Test
Entities
Building an Entity Manager
The Entity Class
Modifying the Engine
Modifying the Sprite Class
Testing Sprites as Entities
Modifying the Mesh Class
Testing Meshes as Entities
Fonts
Creating a Font
Loading and Rendering a Font
Font Class
Using the New Font Class
Physics
Collision Detection
Automated Collision Detection
Bounding Rectangle Collision Test
Distance-Based Collision Test
Math
Math Class
Math Class Header
Math Class Implementation
Math Test
Linear Velocity
Angle to Target
Drop-Down Console
Console Class
Console Test
Threading
Introducing the POSIX Threads Library
Installing POSIX Threads
Using POSIX Threads
Programming POSIX Threads
ThreadDemo Program
Threading the Game Engine
Threaded Garbage Collection
Testing the Newly Threaded Engine
Scripting
Introducing Lua
Running Lua from the Command Prompt
Lua and C++
Lua Script Class
Linking with the Lua Library
Script Test
Games
Scrolling Example
Blocks Game
Alien Invaders
Epilogue
Index