G

gain, audio programming, 104–105

Galactic Village Games, 11–12, 296

Game class

state-driven, 33–36

updates to, 80–83

game databases

connecting to, 285–286

data caching, 295–296

designing, 274–276

efficient runtime JDBC access, 290–292

introduction to, 271

joins, 291–292

primary and foreign keys in, 276–277

referential integrity, 278

stored procedures, 293–294

using MySQL, 279–284

game design

See also game development

collision detection. See collision detection

database design, 274–276

and performance, 241, 262

game development

applying game logic, updating system, 28

audio, generally, 85–86

current Java, 6

design. See game design

Java platform advantages, disadvantages, 3–4

message printing and display, 40

obtaining player’s input, 26–27

programming. See game programming

rendering frames, 28–29

scene graphs and, 456–457

scripting languages and, 297–298

using native code in your game, 338–348

writing scenes with, 444–445

game engine described, 23

Game Initialization, game component described, 24

game loops described, 25

game networking process

creating, joining games, 221–228

discovery, 207–221

joining game session, 228–232

game networking protocols, 232–236

Game Playing, game component, 24–25

game programming

artificial intelligence forms, 48–51

basic game structure, 24–25

choosing video mode, 58–63

computation time, 179

fundamentals of, 22

Java autoboxing feature, 19

and math performance, 241

time calculation, 5

game sessions

creating, 222–228

joining, 228–232

‘sanity-checks,’ 233

Game Shutdown, game component, 24–25

GAME_INIT method, 80–81

GameJoiner class, 228–232

GameJoiner methods, 231

GAME_MAIN method, 43, 80–82

gameMain( ) method, 35

games

See also specific types of games

audio. See audio games

basic game state machine (fig.), 34

collision detection. See collision detection

crashing, 302–303

creating, joining, 221–228

joining session, 228–232

lock-step vs. open-loop, 233–235

modifying existing, 301

role of timing in, 31–33

server-based, 237

using native code in your, 338–348

GameSessionCreator class, 222–224

GAME_SHUTDOWN method, 80

gameShutdown( ) method, 82

garbage collector (GC)

and deleted files, 3

housekeeping and direct buffer functions, 335

use described, 167–171

and VM, 152–153

generators, 309

generics, future development and, 18–19

geometry

containers, 430

drawing from 2D coordinates, 411

and matrix hierarchies, 439–444

occlusion culling, 454–455

static and dynamic, 433

textured, using, 414–415

3D animation. See 3D animation

and ‘worlds.’ 471

GetArrayLength, 330

GetJoyPos function, 342

getMagnitude( ) method, 241

getScreenDevices method, 58

GetStringChars, 332

GetSuperClass function, 327

.gif files, 56

glBitmap method, 413

glCallList( ) command, 409

GLCanvas, GLPanel classes, 390

GLDrawable class (JOGL), 390

glEnable/Disable( ), 404

global references, 323, 325

globally unique identifiers. See GUIDs

GlueGen tool, 390, 392

glutBitmapCharacter method, 414

Gouraud shading, 368–369

Gran Prix Legends (Sun Microsystems), 10–11

graphical user interface. See GUI system

graphics

game engine and rendering, 52

3D. See 3D graphics

in 2D games, 53–54

graphics accelerator cards, 356

GraphicsDevice class, 57–58

GraphicsEnvironment class, 57

graphs

described, serialization, 124

scene. See scene graphs

group nodes in scene graphs, 445–446

groups

channel, 216

multicast, 201

GUI system

components of, 416–419

container, managing, 419–424

and head-up display, 416

test applications, 404

GUIDs (globally unique identifiers), 277



Practical Java Game Programming
Practical Java Game Programming (Charles River Media Game Development)
ISBN: 1584503262
EAN: 2147483647
Year: 2003
Pages: 171

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net