Catálogo de publicaciones - libros
Pro Java 6 3D Game Development: Java 3D, JOGL, JInput, and JOAL APIs
Andrew Davison
Resumen/Descripción – provisto por la editorial
No disponible.
Palabras clave – provistas por la editorial
Software Engineering/Programming and Operating Systems
Disponibilidad
Institución detectada | Año de publicación | Navegá | Descargá | Solicitá |
---|---|---|---|---|
No detectada | 2007 | SpringerLink |
Información
Tipo de recurso:
libros
ISBN impreso
978-1-59059-817-7
ISBN electrónico
978-1-4302-0212-7
Editor responsable
Springer Nature
País de edición
Reino Unido
Fecha de publicación
2007
Información sobre derechos de publicación
© Apress 2007
Cobertura temática
Tabla de contenidos
Introducing Java 3D
T he Java 3D API, a scene graph API developed by Sun Microsystems, provides a collection of highlevel constructs for creating, rendering, and manipulating a 3D scene graph. A scene graph makes 3D programming much easier for novices (and even for experienced programmers) because it emphasizes scene design, rather than rendering, by hiding the graphics pipeline. The scene graph supports complex graphical elements such as 3D geometries, lighting modes, picking, and collision detection.
Palabras clave: Virtual World; Collision Detection; Scene Graph; Behavior Node; Graphic Pipeline.
Part 1 - Java 3D | Pp. 3-14
Get a Life (in 3D)
T his chapter introduces a number of programming techniques that you will see again frequently in upcoming chapters. We will integrate Java 3D’s Canvas3D class (where a scene is rendered) with a Swing-based GUI and display the scene in a full-screen window. We will build a Java 3D scene graph that is lit with ambient and directional lights, has a blue-sky background, and is filled with multicolored spheres. The spheres gradually rotate, change color, and fade in and out of view. These dynamic elements are driven by a simple subclass of Java 3D’s Behavior acting as a timer, which triggers updates to the scene every 50 milliseconds. The user’s viewpoint (the camera) can be zoomed in and out, panned, and rotated with the mouse and control keys (courtesy of Java 3D’s OrbitBehavior class). We will then convert the example into a screensaver with the help of JScreenSaver, a Java-based Microsoft Windows screensaver loader.
Palabras clave: Cellular Automaton; Visual State; Directional Light; Scene Graph; Game Rule.
Part 1 - Java 3D | Pp. 15-48
Get a Life (the Java 6 Way)
T he Life3D example from Chapter 2 is utilized again in this chapter. Just to remind you, Life3D is a 3D version of Conway’s Game of Life , a simple cellular automaton game whose visualization demonstrates many of Java 3D’s basic capabilities. This time around I’ll change the application a little to discuss four new Java SE 6 features that are useful for gaming: splash screens; the system tray API; the desktop API; and scripting integration.
Palabras clave: Menu Item; Uniform Resource Identifier; Splash Image; Script File; Graphic Context.
Part 1 - Java 3D | Pp. 49-82
The Colliding Grabbers
T his chapter looks at how to use Java 3D’s built-in Box, Cylinder, and Sphere shapes to create articulated models . The shapes are linked together by Java 3D TransformGroups nodes acting as joints, which can be rotated and moved. This functionality is essential if you want to build humanoid figures with operational limbs or machinery with working parts.
Part 1 - Java 3D | Pp. 83-120
When Worlds Collide
A n important physics-related gaming problem is how to handle object collisions. It can be difficult to decide how a 3D object should rebound or bounce, especially when mass, linear and angular velocity, gravity, friction, and other forces are taken into account.
Palabras clave: Dynamic Object; Contact Joint; Scene Graph; Graphical Part; Collision Testing.
Part 1 - Java 3D | Pp. 121-144
A Multitextured Landscape
T his chapter’s focus is on using multitexturing and a heights map to make a natural-looking 3D landscape. I describe several multitexturing approaches for making a 3D landscape look more varied and natural by using grass and stone textures, adding light and shadow with a shadow map, and supplying flowers and water with an alpha map.
Palabras clave: Scene Graph; Texture Unit; Bump Mapping; Golden Ball; Alpha Channel.
Part 1 - Java 3D | Pp. 145-177
Walking Around the Models
T he previous chapter was about making interesting-looking landscape. This chapter is about populating a scene with 3D models and 2D images “pretending” to be 3D. The images act as ground cover, appearing to be 3D by rotating to always face the viewer.
Palabras clave: Ground Cover; Class Diagram; Scene Graph; Loader Interface; Scene Class.
Part 1 - Java 3D | Pp. 179-201
More Backgrounds and Overlays
I n Chapter 7, I described several ways of making detailed backgrounds that look different when viewed from different places in the scene. The techniques all utilize textures wrapped over 3D geometries connected to the scene graph.
Palabras clave: Mixed Mode; Text Message; Class Diagram; Background Image; Mutual Exclusion.
Part 1 - Java 3D | Pp. 203-229
More Backgrounds and Overlays
O ver the next few chapters, I look at using nonstandard input devices, including the game pad (in Chapters 11 and 12) and the P5 data glove (in Chapter 14), but I start with the webcam in this chapter and the next. (Chapter 13 is a sort of interlude, where I look at 3D sound generation using the JOAL API; JOAL is employed in the subsequent data glove chapter.)
Part 2 - Nonstandard Input Devices | Pp. 233-249
Navigating a 3D Scene by Waving Your Arm
I n this chapter, I explain how to navigate through a Java 3D world containing a checkerboard floor, a stormy background, a giant humanoid, and assorted ground cover, all mostly borrowed from the example in Chapter 7. The novelty here is that the navigation is achieved by the user moving and rotating his left arm; no keyboard or mouse manipulation is required. This “magic” is made possible by the user wearing a wrist strap containing three colored bands (blue, yellow, and red). Pictures of the strap are generated using the JMFCapture class from Chapter 9; a basic form of pattern recognition then finds the largest visible colored band on the strap. This information is converted into navigational commands for moving the camera around the world.
Part 2 - Nonstandard Input Devices | Pp. 251-271