Skip to Main Content
Killer Game Programming in Java
book

Killer Game Programming in Java

by Andrew Davison
May 2005
Intermediate to advanced content levelIntermediate to advanced
998 pages
26h
English
O'Reilly Media, Inc.
Content preview from Killer Game Programming in Java

Terrain Following and Collision Avoidance

Realistic terrain following must handle issues such as gravity effects (e.g., falling off a cliff), how high to step up/down at a time, holes, and water. The code in KeyBehavior and Landscape doesn't deal with any of these concerns.

A programming style question is whether picking should be used as a walking aid. One reason for employing it is that the same mechanism can help with movement through scenery, such as up and down staircases, so long as the objects can be picked. Picking makes it possible to walk over a terrain without needing a predefined "map."

A downside, until recently, was the large amount of garbage that could accumulate over time because of repeatedly computing intersections. The resulting garbage collection could degrade the application's execution. Fortunately, the PickRay and PickSegment intersection code was rewritten in Java 3D v.1.3.1 to reduce the overhead, but the other picking shapes, such as PickCylinderRay, remain unchanged.

Garbage collection may only become a serious issue when picking is utilized for collision avoidance: the moving object typically sends out multiple rays in several directions at each frame update, each requiring intersection testing. However, this approach is used without problems in the Pernica multiplayer role-playing game (http://www.starfireresearch.com/pernica/pernica.html) from Starfire Research.

Java XTools (http://www.3dchat.org/dev.php) offers a KeyNavigatorBehavior class, which implements ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Java Game Development with LibGDX: From Beginner to Professional

Java Game Development with LibGDX: From Beginner to Professional

Lee Stemkoski

Publisher Resources

ISBN: 0596007302Supplemental ContentErrata Page