| Introduction |
|
xi | |
| Chapter 1 A Brief History of Gaming |
|
1 | (16) |
|
|
|
3 | (14) |
|
1958—The First Video Game Invented |
|
|
3 | (1) |
|
|
|
3 | (1) |
|
1967—Television Video Games Created |
|
|
4 | (1) |
|
1971—The First Video Arcade Game |
|
|
4 | (1) |
|
1972—Magnavox Odyssey Brings Games Home |
|
|
5 | (2) |
|
|
|
7 | (1) |
|
|
|
7 | (1) |
|
|
|
7 | (2) |
|
|
|
9 | (1) |
|
|
|
10 | (1) |
|
|
|
10 | (1) |
|
|
|
11 | (1) |
|
|
|
12 | (1) |
|
|
|
12 | (1) |
|
1985—NES and Super Mario Bros |
|
|
13 | (1) |
|
|
|
14 | (1) |
|
|
|
14 | (1) |
|
|
|
15 | (1) |
|
|
|
15 | (1) |
|
|
|
15 | (1) |
|
|
|
15 | (1) |
|
|
|
15 | (1) |
|
|
|
16 | (1) |
| Chapter 2 Becoming the World's Best 3D Game Programmer |
|
17 | (10) |
|
|
|
18 | (4) |
|
|
|
19 | (1) |
|
|
|
19 | (1) |
|
|
|
19 | (1) |
|
|
|
20 | (1) |
|
|
|
21 | (1) |
|
|
|
21 | (1) |
|
|
|
21 | (1) |
|
|
|
22 | (1) |
|
|
|
22 | (1) |
|
|
|
22 | (5) |
|
|
|
23 | (1) |
|
Practice, Practice, Practice |
|
|
23 | (1) |
|
|
|
23 | (1) |
|
|
|
24 | (1) |
|
|
|
25 | (1) |
|
|
|
26 | (1) |
|
|
|
26 | (1) |
| Chapter 3 Designing a Game |
|
27 | (14) |
|
|
|
27 | (5) |
|
|
|
28 | (1) |
|
|
|
28 | (1) |
|
|
|
28 | (1) |
|
|
|
29 | (2) |
|
|
|
31 | (1) |
|
|
|
31 | (1) |
|
A Sitcom, Drama, Game Show, or Movie |
|
|
31 | (1) |
|
|
|
32 | (6) |
|
|
|
32 | (3) |
|
|
|
35 | (2) |
|
|
|
37 | (1) |
|
|
|
38 | (1) |
|
|
|
39 | (1) |
|
Creating a Design Document |
|
|
40 | (1) |
| Chapter 4 Anatomy of a Game |
|
41 | (12) |
|
|
|
41 | (3) |
|
|
|
42 | (1) |
|
|
|
43 | (1) |
|
|
|
43 | (1) |
|
|
|
44 | (1) |
|
|
|
44 | (2) |
|
|
|
45 | (1) |
|
|
|
46 | (1) |
|
|
|
46 | (3) |
|
Adobe Photoshop and Illustrator |
|
|
47 | (2) |
|
|
|
49 | (1) |
|
|
|
49 | (2) |
|
|
|
51 | (2) |
| Chapter 5 Exploring Blitz3D |
|
53 | (12) |
|
|
|
54 | (1) |
|
|
|
55 | (1) |
|
Getting to Know the User Interface |
|
|
56 | (5) |
|
|
|
56 | (1) |
|
|
|
56 | (3) |
|
|
|
59 | (1) |
|
|
|
60 | (1) |
|
Entering Code and Comments |
|
|
61 | (4) |
| Chapter 6 Your First 3D Program |
|
65 | (10) |
|
|
|
65 | (3) |
|
|
|
68 | (7) |
| Chapter 7 Shapes and Objects |
|
75 | (30) |
|
Understanding the 3D World |
|
|
75 | (5) |
|
|
|
80 | (6) |
|
|
|
80 | (2) |
|
|
|
82 | (2) |
|
Creating Cubes, Cylinders, and Spheres |
|
|
84 | (2) |
|
|
|
86 | (1) |
|
Resizing and Reshaping Objects |
|
|
87 | (1) |
|
|
|
87 | (2) |
|
|
|
89 | (2) |
|
|
|
91 | (1) |
|
|
|
91 | (3) |
|
|
|
94 | (1) |
|
|
|
95 | (1) |
|
Textures and Texture Mapping |
|
|
96 | (6) |
|
|
|
96 | (3) |
|
|
|
99 | (1) |
|
|
|
99 | (3) |
|
|
|
102 | (3) |
| Chapter 8 Getting Graphic |
|
105 | (48) |
|
|
|
106 | (9) |
|
Creating Heightmaps with Textured Fills |
|
|
106 | (4) |
|
Creating Heightmaps with a Brush |
|
|
110 | (3) |
|
Creating Heightmaps with Effects |
|
|
113 | (2) |
|
|
|
115 | (5) |
|
|
|
116 | (4) |
|
|
|
120 | (10) |
|
Creating Terrains with Texture Fills |
|
|
121 | (3) |
|
|
|
124 | (3) |
|
Creating Terrains with Effects |
|
|
127 | (3) |
|
|
|
130 | (23) |
|
|
|
131 | (9) |
|
|
|
140 | (13) |
| Chapter 9 3D Modeling |
|
153 | (26) |
|
|
|
154 | (7) |
|
|
|
154 | (2) |
|
|
|
156 | (1) |
|
|
|
157 | (4) |
|
|
|
161 | (14) |
|
Creating the Missile Body |
|
|
161 | (6) |
|
|
|
167 | (6) |
|
|
|
173 | (2) |
|
Importing Models into Blitz3D |
|
|
175 | (4) |
| Chapter 10 Controlling Objects |
|
179 | (14) |
|
|
|
179 | (2) |
|
|
|
181 | (2) |
|
Rotating Objects on Their Own |
|
|
183 | (2) |
|
Orbiting (a.k.a. Pivoting) |
|
|
185 | (8) |
| Chapter 11 Lights and Cameras |
|
193 | (26) |
|
|
|
193 | (19) |
|
Creating and Positioning a Camera |
|
|
194 | (2) |
|
|
|
196 | (1) |
|
|
|
197 | (2) |
|
Switching Cameras Virtually |
|
|
199 | (4) |
|
|
|
203 | (4) |
|
|
|
207 | (3) |
|
|
|
210 | (1) |
|
|
|
211 | (1) |
|
|
|
212 | (7) |
|
|
|
212 | (3) |
|
|
|
215 | (4) |
| Chapter 12 Setting the Stage |
|
219 | (22) |
|
|
|
219 | (7) |
|
|
|
220 | (4) |
|
Changing the Terrain Color |
|
|
224 | (1) |
|
Applyinga Texture to a Terrain |
|
|
224 | (1) |
|
Changing the Size of a Terrain |
|
|
225 | (1) |
|
|
|
226 | (1) |
|
|
|
227 | (5) |
|
|
|
232 | (9) |
|
|
|
233 | (3) |
|
Using Shapes with Terrains |
|
|
236 | (5) |
| Chapter 13 Collisions |
|
241 | (22) |
|
|
|
242 | (9) |
|
|
|
244 | (1) |
|
|
|
245 | (3) |
|
|
|
248 | (1) |
|
Shields Down!—Clear Collisions |
|
|
249 | (2) |
|
|
|
251 | (11) |
|
Poof! Now You See It, Now You Don't |
|
|
252 | (3) |
|
|
|
255 | (2) |
|
|
|
257 | (5) |
|
|
|
262 | (1) |
| Chapter 14 Sounds and Music |
|
263 | (12) |
|
|
|
263 | (8) |
|
Loading and Playing Sounds |
|
|
264 | (1) |
|
|
|
265 | (2) |
|
|
|
267 | (2) |
|
|
|
269 | (2) |
|
All I Want Is Loving You, and Music, Music, Music |
|
|
271 | (4) |
|
|
|
272 | (1) |
|
|
|
273 | (2) |
| Chapter 15 Other 3D Game Components |
|
275 | (60) |
|
|
|
275 | (2) |
|
|
|
277 | (2) |
|
|
|
279 | (3) |
|
|
|
282 | (3) |
|
|
|
285 | (1) |
|
|
|
286 | (1) |
|
|
|
287 | (14) |
|
Adding and Positioning Text |
|
|
288 | (3) |
|
|
|
291 | (5) |
|
Setting Font Size and Appearance |
|
|
296 | (4) |
|
|
|
300 | (1) |
|
|
|
301 | (3) |
|
|
|
304 | (7) |
|
|
|
311 | (19) |
|
Positioning a First-Person Shooter Gun |
|
|
312 | (3) |
|
|
|
315 | (15) |
|
|
|
330 | (3) |
|
|
|
333 | (2) |
| Chapter 16 Programming Fundamentals |
|
335 | (44) |
|
|
|
335 | (6) |
|
|
|
336 | (1) |
|
|
|
336 | (1) |
|
|
|
336 | (3) |
|
Inputting with Other Variables |
|
|
339 | (1) |
|
Global versus Local Variables |
|
|
340 | (1) |
|
|
|
341 | (5) |
|
|
|
346 | (4) |
|
|
|
350 | (11) |
|
|
|
361 | (4) |
|
|
|
362 | (1) |
|
|
|
363 | (2) |
|
|
|
365 | (6) |
|
|
|
370 | (1) |
|
|
|
371 | (8) |
|
|
|
373 | (6) |
| Chapter 17 Putting It An Together |
|
379 | (32) |
|
Planning the Game—"3D Gallery" |
|
|
379 | (2) |
|
|
|
381 | (1) |
|
Creating the Water Texture |
|
|
381 | (6) |
|
|
|
387 | (1) |
|
Setting Up the Graphic Elements and Camera |
|
|
388 | (1) |
|
Setting Up the Game Elements |
|
|
389 | (1) |
|
|
|
389 | (2) |
|
|
|
391 | (3) |
|
Creating the Guns and Bullets |
|
|
394 | (1) |
|
|
|
395 | (1) |
|
|
|
396 | (1) |
|
|
|
397 | (1) |
|
|
|
398 | (1) |
|
|
|
398 | (5) |
|
|
|
403 | (1) |
|
|
|
404 | (1) |
|
|
|
404 | (1) |
|
|
|
405 | (1) |
|
|
|
406 | (1) |
|
|
|
406 | (1) |
|
|
|
407 | (1) |
|
|
|
408 | (3) |
| Appendix |
|
411 | (4) |
| Index |
|
415 | |