Cover image for Fundamental 2D Game Programming with Java.
Fundamental 2D Game Programming with Java.
Title:
Fundamental 2D Game Programming with Java.
Author:
Wright, Timothy M.
ISBN:
9781305076549
Personal Author:
Physical Description:
1 online resource (654 pages)
Contents:
Cover -- Contents -- Introduction -- PART I: THE FOUNDATIONS -- Chapter 1 Hello World -- Using the FrameRate Class -- Creating the Hello World Application -- Using Active Rendering -- Creating a Custom Rendering Thread -- Creating an Active Rendered Window -- Changing the Display Mode -- Active Rendering in Full-Screen Display Mode -- Resources and Further Reading -- Chapter 2 Input -- Handling Keyboard Input -- Keyboard Improvements -- Handling Mouse Input -- Relative Mouse Movement -- Resources and Further Reading -- Chapter 3 Transformations -- Using the Vector2f Class -- Using Polar Coordinates -- Understanding Points and Vectors -- Using Matrix Transformations -- Row-Major vs Column-Major Matrices -- Understanding the Matrix3x3f Class -- Affine Transformation -- Resources and Further Reading -- Chapter 4 Time and Space -- Calculating Time Delta -- Screen Mapping -- Adjusting the Viewport Ratio -- Cannon Physics -- Resources and Further Reading -- Chapter 5 Simple Game Framework -- Screen-to-World Conversion -- Understanding the Simple Framework -- Using the Simple Framework Template -- Resources and Further Reading -- Chapter 6 Vector2f Updates -- inv( ) -- add( ) -- sub( ) -- mul( ) -- div( ) -- len( ) and lenSqr( ) -- norm( ) -- perp( ) -- dot( ) -- angle( ) -- polar( ) -- toString( ) -- Resources and Further Reading -- Chapter 7 Intersection Testing -- Point in Polygon Testing -- Using an Axis Aligned Bounding Box (AABB) for Intersection Testing -- Using Circles for Intersections -- Using the Separating Axis Method -- Using the Line-Line Overlap Method -- Using the Rectangle-Rectangle Overlap Method -- Optimizing Your Tests -- Resources and Further Reading -- Chapter 8 Game Prototype -- Creating a Polygon Wrapper Class -- Making a Prototype Asteroid -- Creating a Prototype Editor -- Making Rocks with a Prototype Asteroid Factory.

Prototype Bullet Class -- Prototype Ship Class -- Coding the Prototype Game -- Resources and Further Reading -- PART II: THE POLISH -- Chapter 9 Files and Resources -- Understanding How Java Handles Files and Directories -- Understanding Input/Output Streams -- Creating the Resourcesjar File for Testing -- Putting Resources on the Classpath -- Making a Resource Loader Utility -- Exploring Java Properties -- An Overview of XML Files -- Resources and Further Reading -- Chapter 10 Images -- Learning About Colors in Java -- Exploring Different Image Types -- Performing Color Interpolation -- Using Volatile Images for Speed -- Creating Transparent Images -- Using the Alpha Composite Rules -- Drawing Sprites -- Exploring Different Scaling Algorithms -- Resources and Further Reading -- Chapter 11 Text -- Understanding Java Fonts -- Making a Draw String Utility -- Using Text Metrics for Layout -- Enabling Thread-Safe Keyboard Input -- Resources and Further Reading -- Chapter 12 Threads -- Using the Callable Task with Threads -- Using Threads to Load Files -- Using the FakeHardware Class for Testing -- Using the Wait/Notify Methods -- Using Threads in the Game Loop -- Using a State Machine -- The OneShotEvent Class -- The LoopEvent Class -- The RestartEvent Class -- The Multi-Thread Event Example -- Resources and Further Reading -- Chapter 13 Sound -- Working with Sound Files -- Problems with the Sound Library -- Developing Blocking Audio Classes -- Using the Blocking Clip Class -- Using the AudioDataLine Class -- Creating the BlockingDataLine Class -- Creating a SoundEvent Class -- Using the OneShotEvent Class -- Using the LoopEvent Class -- Using the RestartEvent Class -- Adding Sound Controls -- Resources and Further Reading -- Chapter 14 Deployment with ANT -- Installing the ANT Software -- Understanding the Format of a Build Script.

Learning Common ANT Tasks -- Building an Extendable Build Script -- Resources and Further Reading -- Chapter 15 Collision Detection -- Bouncing Balls with Collision Detection -- Using the Parametric Line Equation -- Finding a Line-Rectangle Intersection -- Finding a Circle-Line Intersection -- Finding a Line-Line Intersection -- Calculating a Reflection Vector -- Bouncing a Point Inside a Polygon -- Resources and Further Reading -- PART III: THE COMPLETE GAME -- Chapter 16 Tools -- Creating a Game Framework -- Updating the Polygon Editor -- Drawing a Sprite -- Creating a Simple Particle Engine -- Resources and Further Reading -- Chapter 17 Space Rocks -- The Bullet Class -- The PolygonWrapper Class -- The Particle Class -- The Asteroid Class -- The AsteroidFactory Class -- The AsteroidExplosion Class -- The Ship Class -- The ShipFactory Class -- The ShipExplosion Class -- Adding Game Constants -- The Acme Class -- The GameState Class -- The Score Class -- The QuickLooper Class -- The QuickRestart Class -- The HighScoreMgr Class -- Managing the State -- The StateController Class -- The CompleteGame Class -- The GameLoading State -- The AttractState Class -- The PressSpaceToPlay Mode -- The HighScore State -- The GameInformationState Class -- The LevelStarting State -- The LevelPlaying State -- The GameOver State -- The EnterHighScoreName State -- Creating a Build Script -- Resources and Further Reading -- Chapter 18 Conclusion -- Chapter 1-"Hello World" -- Chapter 2-"Input" -- Chapter 3-"Transformations" -- Chapter 4-"Time and Space" -- Chapter 5-"Simple Game Framework" -- Chapter 6-"Vector2f Updates" -- Chapter 7-"Intersection Testing" -- Chapter 8-"Game Prototype" -- Chapter 9-"Files and Resources" -- Chapter 10-"Images" -- Chapter 11-"Text" -- Chapter 12-"Threads" -- Chapter 13-"Sound" -- Chapter 14-"Deployment with ANT".

Chapter 15-"Collision Detection" -- Chapter 16-"Tools" -- Chapter 17-"Space Rocks" -- Resources and Further Reading -- Index -- A -- B -- C -- D -- E -- F -- G -- H -- I -- J -- K -- L -- M -- N -- O -- P -- Q-R -- S -- T -- U -- V -- W-Z.
Local Note:
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2017. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
Electronic Access:
Click to View
Holds: Copies: