| |
| |
Introduction | |
| |
| |
| |
A Brief History of Gaming | |
| |
| |
A Quick Timeline | |
| |
| |
1958-The First Video Game Invented | |
| |
| |
1961-Spacewar | |
| |
| |
1967-Television Video Games Created | |
| |
| |
1971-The First Video Arcade Game | |
| |
| |
1972-Magnavox Odyssey Brings Games Home | |
| |
| |
1975-Atari Releases Pong | |
| |
| |
1977-Atari 2600 | |
| |
| |
1978-Space Invaders | |
| |
| |
1979-High Score | |
| |
| |
1980-The First 3D Game | |
| |
| |
1980-Pac-Man | |
| |
| |
1981-Hello Mario | |
| |
| |
1983-Video Game Crash | |
| |
| |
1983-Dragon's Lair | |
| |
| |
1985-NES and Super Mario Bros | |
| |
| |
1985-Tetris | |
| |
| |
1989-Game Boy | |
| |
| |
1993-Atari Jaguar | |
| |
| |
1993-Doom | |
| |
| |
1995-PlayStation | |
| |
| |
1996-Nintendo 64 | |
| |
| |
2000-PlayStation 2 | |
| |
| |
2001-Xbox | |
| |
| |
| |
Becoming the World's Best 3D Game Programmer | |
| |
| |
The Skills You Need | |
| |
| |
Programming Skills | |
| |
| |
Graphic Design Skills | |
| |
| |
Team Skills | |
| |
| |
Math | |
| |
| |
Patience | |
| |
| |
Communication Skills | |
| |
| |
Grace Under Pressure | |
| |
| |
Attention to Detail | |
| |
| |
Creativity | |
| |
| |
How to Get the Skills | |
| |
| |
Play Games | |
| |
| |
Practice, Practice, Practice | |
| |
| |
Read | |
| |
| |
Get Out There | |
| |
| |
Find a Mentor | |
| |
| |
Take a Course | |
| |
| |
Have Other Interests | |
| |
| |
| |
Designing a Game | |
| |
| |
The Big Idea | |
| |
| |
An Old Video Game | |
| |
| |
A Book | |
| |
| |
A Sport | |
| |
| |
A Board Game | |
| |
| |
An Event in Your Life | |
| |
| |
A News Event | |
| |
| |
A Sitcom, Drama, Game Show, or Movie | |
| |
| |
Planning Your Game | |
| |
| |
Type of Game | |
| |
| |
The Story Line | |
| |
| |
Storyboarding | |
| |
| |
Controls | |
| |
| |
Sounds and Music | |
| |
| |
Creating a Design Document | |
| |
| |
| |
Anatomy of a Game | |
| |
| |
Programming Languages | |
| |
| |
C++ | |
| |
| |
Java | |
| |
| |
Visual Basic | |
| |
| |
Blitz3D | |
| |
| |
3D Modeling Software | |
| |
| |
Maya | |
| |
| |
3ds Max | |
| |
| |
Graphics Programs | |
| |
| |
Adobe Photoshop and Illustrator | |
| |
| |
CorelDRAW Graphics Suite | |
| |
| |
Audio Programs | |
| |
| |
Code Flow | |
| |
| |
| |
Exploring Blitz3D | |
| |
| |
Installing Blitz3D | |
| |
| |
Launching Blitz3D | |
| |
| |
Getting to Know the User Interface | |
| |
| |
The Menu Bar | |
| |
| |
The Toolbar | |
| |
| |
Switching Programs | |
| |
| |
The Side Panel | |
| |
| |
Entering Code and Comments | |
| |
| |
| |
Your First 3D Program | |
| |
| |
The Jumping Cone Program | |
| |
| |
Dissecting the Code | |
| |
| |
| |
Shapes and Objects | |
| |
| |
Understanding the 3D World | |
| |
| |
Creating Basic Shapes | |
| |
| |
Creating a Cone | |
| |
| |
Creating Multiple Cones | |
| |
| |
Creating Cubes, Cylinders, and Spheres | |
| |
| |
Segments | |
| |
| |
Resizing and Reshaping Objects | |
| |
| |
Resizing or Scaling | |
| |
| |
Reshaping | |
| |
| |
Flipping an Object | |
| |
| |
Coloring | |
| |
| |
Wireframe | |
| |
| |
Transparency | |
| |
| |
Textures and Texture Mapping | |
| |
| |
Applying Image Textures | |
| |
| |
Scaling Textures | |
| |
| |
Creating Text Textures | |
| |
| |
Object Order | |
| |
| |
| |
Getting Graphic | |
| |
| |
Heightmaps | |
| |
| |
Creating Heightmaps with Textured Fills | |
| |
| |
Creating Heightmaps with a Brush | |
| |
| |
Creating Heightmaps with Effects | |
| |
| |
Creating Textures | |
| |
| |
Walls | |
| |
| |
Terrains and Skies | |
| |
| |
Creating Terrains with Texture Fills | |
| |
| |
Wood | |
| |
| |
Creating Terrains with Effects | |
| |
| |
Information Screens | |
| |
| |
Welcome Screen | |
| |
| |
Pause Screen | |
| |
| |
| |
3D Modeling | |
| |
| |
Creating a Bottle | |
| |
| |
Creating the Outline | |
| |
| |
Lathing the Bottle | |
| |
| |
Exporting the Bottle | |
| |
| |
Creating a Missile | |
| |
| |
Creating the Missile Body | |
| |
| |
Creating the Wings | |
| |
| |
Exporting the Missile | |
| |
| |
Importing Models into Blitz3D | |
| |
| |
| |
Controlling Objects | |
| |
| |
Moving Objects | |
| |
| |
Rotating Objects | |
| |
| |
Rotating Objects on Their Own | |
| |
| |
Orbiting (a.k.a. Pivoting) | |
| |
| |
| |
Lights and Cameras | |
| |
| |
Working with Cameras | |
| |
| |
Creating and Positioning a Camera | |
| |
| |
Rotating a Camera | |
| |
| |
Using Two Cameras | |
| |
| |
Switching Cameras Virtually | |
| |
| |
Splitting Views | |
| |
| |
Zooming | |
| |
| |
Camera Movement | |
| |
| |
Following an Object | |
| |
| |
Light | |
| |
| |
Types of Lights | |
| |
| |
Light Range | |
| |
| |
| |
Setting the Stage | |
| |
| |
Creating a Terrain | |
| |
| |
Positioning a Terrain | |
| |
| |
Changing the Terrain Color | |
| |
| |
Applying a Texture to a Terrain | |
| |
| |
Changing the Size of a Terrain | |
| |
| |
Creating a Plane | |
| |
| |
Applying a Heightmap | |
| |
| |
Shapes as Environments | |
| |
| |
Going Inside Shapes | |
| |
| |
Using Shapes with Terrains | |
| |
| |
| |
Collisions | |
| |
| |
Creating a Collision | |
| |
| |
Collision Code | |
| |
| |
Colliding Objects | |
| |
| |
Collision Radius | |
| |
| |
Shields Down!-Clear Collisions | |
| |
| |
Collision Effects | |
| |
| |
Poof! Now You See It, Now You Don't | |
| |
| |
Chameleon Colors | |
| |
| |
Blowing Up Stuff | |
| |
| |
Other Collision Commands | |
| |
| |
| |
Sounds and Music | |
| |
| |
Sounds | |
| |
| |
Loading and Playing Sounds | |
| |
| |
Adjusting Volume | |
| |
| |
Adjusting Pitch | |
| |
| |
Adjusting Pan | |
| |
| |
All I Want Is Loving You, and Music, Music, Music | |
| |
| |
Working with Channels | |
| |
| |
Looping Music | |
| |
| |
| |
Other 3D Game Components | |
| |
| |
Gravity | |
| |
| |
Simple Jumping | |
| |
| |
Velocity | |
| |
| |
Chase Camera | |
| |
| |
Mirror | |
| |
| |
Timing | |
| |
| |
Text | |
| |
| |
Adding and Positioning Text | |
| |
| |
Adding Text Variables | |
| |
| |
Setting Font Size and Appearance | |
| |
| |
Freeing Fonts | |
| |
| |
Math | |
| |
| |
Random | |
| |
| |
Guns and Bullets | |
| |
| |
Positioning a First-Person Shooter Gun | |
| |
| |
Bullets | |
| |
| |
Pausing | |
| |
| |
Welcome Screens | |
| |
| |
| |
Programming Fundamentals | |
| |
| |
Variables | |
| |
| |
Integer Variables | |
| |
| |
Floating Point Variables | |
| |
| |
String Variables | |
| |
| |
Inputting with Other Variables | |
| |
| |
Global versus Local Variables | |
| |
| |
Functions | |
| |
| |
Arrays | |
| |
| |
Types | |
| |
| |
Conditionals | |
| |
| |
Operators | |
| |
| |
If ... Then Statements | |
| |
| |
If ... Then ... Else | |
| |
| |
Goto | |
| |
| |
Select ... Case | |
| |
| |
Looping Conditionals | |
| |
| |
| |
Putting It All Together | |
| |
| |
Planning the Game-"3D Gallery" | |
| |
| |
Files for the Game | |
| |
| |
Creating the Water Texture | |
| |
| |
Welcome Screen | |
| |
| |
Setting Up the Graphic Elements and Camera | |
| |
| |
Setting Up the Game Elements | |
| |
| |
Creating the World | |
| |
| |
Gallery Items | |
| |
| |
Creating the Guns and Bullets | |
| |
| |
Game Control and Gravity | |
| |
| |
Moving Targets | |
| |
| |
Firing Bullets | |
| |
| |
Pausing the Game | |
| |
| |
Creating Collisions | |
| |
| |
Changing the Gallery | |
| |
| |
Destroying Gallery Items | |
| |
| |
Reloading Bullets | |
| |
| |
Score | |
| |
| |
Time Remaining | |
| |
| |
Ending the Game | |
| |
| |
Text | |
| |
| |
Sounds | |
| |
| |
Appendix | |
| |
| |
Index | |