Tuesday, December 14, 2010

Delphi Graphics and Game Programming Exposed with DirectX 7















Introduction
Foreword
About the Author
CHAPTER 1—The Lure of Game Programming
The Dark Side of the Game Programming Industry
Difficult Learning Curve
Long Hours
Corporate Instability
The Light Side of the Game Programming Industry
Fun and Rewarding
Fame and Fortune
The People
Game Programming, In Delphi?
Delphi as a Games Development Platform
Opportunities
Untapped Markets
Types of Games
Real-Time Strategy
Turn-Based Strategy
First-Person Shooters
Adventure Games
Action Games
Puzzle Games
Sports Games
Board and Card Games
Simulations
Windows, Delphi, and Games
Summary
CHAPTER 2—The Anatomy of a Game
Game Dissection: The Vital Organs
Graphics
Sound
User Input
Real-Time Event-Driven Programming
Basic Game Architecture
Initialization
Introduction
Game Startup
The Game Loop
Game Ending
Shutdown and Exit
The Game Loop
Retrieve User Input
Perform Antagonist AI and Other Game Logic
Update Sprite Positions
Check for Collisions
Start Sound Effects
Start Music
Render the Next Frame
Check for Game End
Speed Delay
Game States
The Demo State
The Playing State
The Intermission State
The Paused State
The Game Over State
Case Study
Summary
CHAPTER 3—Basic Graphics Programming
The Graphical Device Interface
Graphical Elements
Pixels
Lines
Polygons
Bitmaps
Graphical Element Classifications
Video Mode Resolutions and Color Depth
Resolution
Color Depth
Video Board Memory
The Components of a Color
Palettized Modes
Non-palettized Modes
Graphics Output Techniques
The Device Context
Painting on the Canvas
Bitmap Essentials
Bitmap Types: DDB and DIB
The TBitmap Object
Raster Operations
Simulating Transparency
Palettes
Logical vs. System Palettes
Using a Palette
Further Adventures in Windows Programming
Summary
CHAPTER 4—An Introduction to DirectX
What is DirectX?
The Promise of DirectX
Benefits and Drawbacks of DirectX Programming
The DirectX Architecture
DirectX Components
DirectX and Delphi
The DirectX SDK
Project JEDI
Other Components and Headers
A DirectDraw Tutorial
Features
Functional Overview
COM Fundamentals
Surfaces
Page Flipping
Resolution, Color Depth, and Video Memory
Windowed Versus Full-Screen
Initializing DirectDraw
Rendering with GDI
Flipping the Surfaces
Displaying Bitmaps
Surface Memory Location
Loading and Displaying the Bitmap
Blitting Surfaces
Lost Surfaces
Retrieving DirectDraw Capabilities
The DirectX Baseline Application
DirectX Result Codes
Retrieving the DirectX Version
Summary
CHAPTER 5—Palettes
What is a Palette?
The IDirectDrawPalette Object
Creating the Palette Object
Defining Palette Colors
Using the Palette Object
Disconnecting Palettes
Palettes and GDI Functions
Palette Animation
Animating the Palette
Screen Transitions
Summary
CHAPTER 6—Sprite Techniques
The Illusion of Animation
Constructing the Animation Frames
Producing the Animation
The Illusion of Motion
Sprite Attributes
The Animation Cycle
Transparency Issues
Color Keying
Pixel Checking
Collision Detection
Bounding Boxes
Pixel Overlap Comparison
Animation Issues
Timing
Z-Order
Summary
CHAPTER 7—Input Techniques
Human/Computer Interaction
Input Devices
Input Considerations
DirectInput
Features
Functional Overview
Initializing DirectInput
Retrieving Input Data
Keyboard Input
Mouse Input
Game Controller Input
Summary
CHAPTER 8—Force Feedback
Features
Functional Overview
Basic Concepts
Kinetic Force
Condition
Magnitude
Coefficient
Duration
Sample Period
Gain
Axes
Direction
Envelope
Force Feedback Effects
Base Effect Structure
Creating Effects
Create and Acquire the DirectInput Device
Query for Force Feedback Support
Initialize a TDIEffect Structure and the Type-Specific Parameters Structure
Create the Effect Object
Download the Effect
Start the Effect
Stop the Effect
Case Study
Additional Effect Considerations
Retrieving Effect Status
Retrieving the Force Feedback System State
Sending Commands to the Force Feedback System
Modifying an Effect at Run Time
Envelopes
Summary
CHAPTER 9—Sound and Music
Sound Effects
Simplistic Sound Effects
DirectSound
Music
MCISendCommand
MIDI
CD Audio
Summary
CHAPTER 10—Optimization Techniques
Optimization Theory
Timing Code
Examining the Algorithm
Effective Optimization
Delphi-Specific Optimization Techniques
Automatic Compiler Optimizations
Additional Compiler Optimizations
Other Delphi-Specific Optimization Techniques
General Optimization Techniques
Loop Unrolling
Lookup Tables
Binary Bit Shifting
Additional Optimization Considerations
Summary
CHAPTER 11—Special Effects
Bitmap Manipulation
Bitmap Transformations
Scaling
Rotation
Lighting Tricks
Transition Effects
Simple Texture Mapping
Dynamic Images
Star Fields
Fire
Summary
CHAPTER 12—Artificial Intelligence Techniques
Movement
Random Movement
Aggression/Evasion
Patterned Movement
Finite State Machines
Probability Machines
Path Finding
Algorithms
Basic Implementation
Back Stepping
Case Study
Enhancements
Summary
CHAPTER 13—Putting It All Together
Delphi Blocks
General Game Architecture
Player Advancement
Game States
User Input
Sound and Music
Graphics
Enhancements
The Case Study Code
Summary
Appendix A
Glossary
Bibliography
Index


Download
Another Game Programming Books
Another Delphi Books

2 comments:

  1. I work in game programming and I have not yet come across this book. Have any other readers used this text? Can you give feedback?

    ReplyDelete

Related Posts with Thumbnails

Put Your Ads Here!