售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
XNA 4.0 Game Development by Example – Visual Basic Edition Beginner's Guide
Table of Contents
XNA 4.0 Game Development by Example – Visual Basic Edition Beginner's Guide
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Time for action – heading
What just happened?
Pop quiz – heading
Have a go hero – heading
Reader feedback
Customer support
Downloading the example code and colored images
Errata
Piracy
Questions
1. Introducing XNA Game Studio
Overview of the games
System requirements
Installing XNA Game Studio
Time for action – installing XNA Game Studio
What just happened?
Building your first game
Time for action – creating a new Windows game project
What just happened?
Anatomy of an XNA game
The declarations area
Time for action – adding variables to the class declaration area
What just happened?
The Game1 class constructor
The Initialize() method
Time for action – customizing the Initialize() method
What just happened?
The LoadContent() method
Time for action – creating the squareTexture
What just happened?
The Update() method
Time for action – coding Update() for SquareChase
What just happened?
The Draw() method
Time for action – draw SquareChase!
What just happened?
Time for action – play SquareChase!
What just happened?
Have a go hero
Summary
2. Flood Control – Underwater Puzzling
Designing a puzzle game
Time for action – setting up the Flood Control project
What just happened?
Introducing the Content Pipeline
Time for action – reading textures into memory
What just happened?
Sprites and sprite sheets
Classes used in Flood Control
The GamePiece class
Identifying a GamePiece
Time for action – build a GamePiece class - declarations
What just happened?
Creating a GamePiece
Time for action – building a GamePiece class – constructors
What just happened?
Updating a GamePiece
Time for action – GamePiece class methods – part 1 – updating
Rotating pieces
Time for action – GamePiece class methods – part 2 – rotation
What just happened?
Pipe connectors
Time for action – GamePiece class methods – part 3 – connection methods
What just happened?
Sprite sheet coordinates
Time for action – GamePiece class methods – part 4 – GetSourceRect
What just happened?
The GameBoard class
Time for action – creating the GameBoard.cs class
What just happened?
Creating the game board
Time for action – initializing the game board
What just happened?
Updating GamePieces
Time for action – manipulating the GameBoard
What just happened?
Filling in the gaps
Time for action – filling in the gaps
What just happened?
Generating new pieces
Time for action – generating new pieces
What just happened?
Water-filled pipes
Time for action – water in the pipes
What just happened?
Propagating water
Time for action – making the connection
What just happened?
Building the game
Declarations
Time for action – Game1 declarations
What just happened?
Initialization
Time for action – updating the Initialize() method
What just happened?
The Draw() method – the title screen
Time for action – drawing the screen – the title screen
What just happened?
The Draw() method – the play screen
Time for action – drawing the screen – the play screen
What just happened?
Keeping score
Time for action – scores and scoring chains
What just happened?
Input handling
Time for action – handling mouse input
What just happened?
Letting the player play!
Time for action – letting the player play
What just happened?
Play the game
Summary
3. Flood Control – Smoothing Out the Rough Edges
Animated pieces
Classes for animated pieces
Time for action – rotating pieces
What just happened?
Time for action – falling pieces
What just happened?
Time for action – fading pieces
What just happened?
Managing animated pieces
Time for action – updating GameBoard to support animated pieces
What just happened?
Fading pieces
Time for action – generating fading pieces
What just happened?
Falling pieces
Time for action – generating falling pieces
What just happened?
Rotating pieces
Time for action – modify Game1 to generate rotating pieces
What just happened?
Calling UpdateAnimatedPieces()
Time for action – updating Game1 to update animated pieces
What just happened?
Drawing animated pieces
Time for action – update Game1 to draw animated pieces
What just happened?
SpriteBatch overloads
SpriteFonts
Time for action – add SpriteFonts to Game1
What just happened?
Score display
Time for action – drawing the score
What just happened?
ScoreZooms
Time for action – creating the ScoreZoom class
Time for action – updating and displaying ScoreZooms
What just happened?
Adding the GameOver game state
Time for action – game over
What just happened?
The flood
Time for action – tracking the flood
What just happened?
Displaying the flood
Time for action – displaying the flood
What just happened?
Difficulty levels
Time for action – adding difficulty levels
What just happened?
Have a go hero
Summary
4. Asteroid Belt Assault – Lost in Space
Creating the project
Time for action – creating the Asteroid Belt Assault project
What just happened?
Another definition for sprite
Building the Sprite class
Time for action – declarations for the Sprite class
What just happened?
Time for action – Sprite constructor
What just happened?
Time for action – basic Sprite properties
What just happened?
Time for action – animation and drawing properties
What just happened?
Collision detection
Time for action – supporting collision detection
What just happened?
Animation and movement
Time for action – adding animation frames
What just happened?
Time for action – updating the Sprite
What just happened?
Time for action – drawing the Sprite
What just happened?
A Sprite-based star field
Time for action – creating the StarField class
What just happened?
Time for action – updating and drawing the StarField
What just happened?
Time for action – viewing the StarField in action
What just happened?
Animated sprites – asteroids
Time for action – building the AsteroidManager class
What just happened?
Positioning the asteroids
Time for action – positioning the asteroids
What just happened?
Time for action – checking the asteroid's position
What just happened?
Time for action – updating and drawing Asteroids
What just happened?
Colliding Asteroids
Time for action – bouncing Asteroids – part 1
What just happened?
Time for action – bouncing Asteroids – part 2
What just happened?
Player and enemy shots
Time for action – adding the ShotManager class
What just happened?
Time for action – firing shots
What just happened?
Time for action – updating and drawing shots
What just happened?
Adding the player
Time for action – creating the PlayerManager class
What just happened?
Handling user input
Time for action – handling user input
What just happened?
Time for action – updating and drawing the player's ship
What just happened?
Enemy ships
Time for action – creating the Enemy class
What just happened?
Time for action – waypoint management
What just happened?
Time for action – enemy update and draw
What just happened?
The EnemyManager class
Time for action – creating the EnemyManager class
What just happened?
Managing waypoints
Time for action – setting up the EnemyManager class
What just happened?
Time for action – spawning enemies
What just happened?
Time for action – updating and drawing the EnemyManager
What just happened?
Summary
5. Asteroid Belt Assault – Special Effects
Explosion effects
Expanding on sprites – particles
Time for action – constructing the Particle class
What just happened?
Time for action – updating and drawing particles
What just happened?
Particle explosions
Time for action – the ExplosionManager class
What just happened?
Time for action – creating explosions
What just happened?
Time for action – updating and drawing explosions
What just happened?
The collision manager
Time for action – creating the CollisionManager class
What just happened?
Handling collisions
Time for action – player shot collisions
What just happened?
Time for action – player collisions
What just happened?
Time for action – using the CollisionManager class
What just happened?
Sound effects
Generating and finding sound effects
Sound in XNA
Time for action – building a sound effects manager
What just happened?
Time for action – using the SoundManager class
What just happened?
The game structure
Time for action – structuring the game
What just happened?
Time for action – drawing the game structure
What just happened?
Have a go hero
Summary
6. Robot Rampage – Multi-Axis Mayhem
Modules, modules, everywhere
Time for action – creating the Robot Rampage project
What just happened?
A world larger than the screen
Defining a camera
Time for action – creating the Camera class
What just happened?
World-aware sprites
Time for action – building a new Sprite class
What just happened?
Visualizing the view
Time for action – viewing the Sprite and Camera classes in action
What just happened?
The game world – tile-based maps
Tiles
The tile map
Time for action – creating the TileMap module
What just happened?
Map squares
Time for action – dealing with map squares
What just happened?
Dealing with tiles
Time for action – handling tiles
What just happened?
Drawing the map
Time for action – drawing the tile map
What just happened?
Generating a random map
Time for action – random wall placement
What just happened?
Adding the player
Building the Player module
Time for action – building the Player module
What just happened?
Moving around the world
Time for action – handling input
What just happened?
Staying in bounds
Time for action – staying in bounds
What just happened?
Running into tiles
Time for action – accounting for walls
What just happened?
Summary
7. Robot Rampage – Lots and Lots of Bullets
Visual effects
Revisiting particles
Time for action – the Particle class
What just happened?
The EffectsManager class
Time for action – the EffectsManager module
What just happened?
Time for action – building explosions
What just happened?
Time for action – spark effects
What just happened?
Adding weaponry
The WeaponManager
Time for action – beginning the WeaponManager module
What just happened?
Weapon upgrades
Time for action – new weapons
What just happened?
Shot to map collisions
Time for action – shots colliding with tiles
What just happened?
Power-ups
Time for action – power-ups
What just happened?
We still have a problem...
Pathfinding
The A* Pathfinding algorithm
Implementing A*
Time for action – the PathNode class
What just happened?
Time for action – beginning the implementation of A*
What just happened?
Time for action – finding the path
What just happened?
Time for action – adjacent squares
What just happened?
Safely placing power-ups
Time for action – updating the WeaponManager class
What just happened?
Player goals
Computer terminals
Time for action – building a computer terminal
What just happened?
Spawning computer terminals
Time for action – the GoalManager module
What just happened?
Enemy robots
Enemy basics
Time for action – building the Enemy class
What just happened?
Moving enemies
Time for action – enemy AI methods
What just happened?
The enemy manager
Time for action – the enemy manager
What just happened?
Updating the WeaponManager
Time for action – destroying enemies
What just happened?
Game structure
Time for action – the GameManager module
What just happened?
Keeping score
Time for action – awarding points
What just happened?
Updating Game1
Time for action – updating the Game1 class
What just happened?
Have a go hero
Summary
8. Gemstone Hunter - Put on your Platform Shoes
Borrowing graphics
Time for action – creating projects
What just happened?
A more advanced tile engine
Time for action – the MapSquare class
What just happened?
Rebuilding the camera
Time for action – the Camera module
What just happened?
Constructing the Tile Engine
Time for action – the TileMap module – part 1
What just happened?
Time for action – the TileMap module – part 2
What just happened?
Drawing the Tile Map
Time for action – the TileMap module – part 3
What just happened?
Time for action – adding the tile map to the game project
What just happened?
The map editor project
Creating the map editor project
Time for action – creating the Level Editor project
What just happened?
Adding a form
Time for action – adding a form
What just happened?
Time for action – adding event handlers
What just happened?
Filling out our form
Time for action – creating the menu bar
What just happened?
Time for action – tile selection controls
What just happened?
Time for action – scroll bars
What just happened?
Time for action – final controls
What just happened?
Updating the Game1 class
Time for action – updating Game1
What just happened?
Time for action – the Game1 Update method
What just happened?
Connecting the form to the game
Time for action – completing the editor – part 1
What just happened?
Time for action – fixing the scrolling delay
What just happened?
Loading and saving maps
Time for action – implementing loading and saving
What just happened?
Passability
Map codes
One last issue
Time for action – handling the FormClosed event
What just happened?
Have a go hero
Summary
9. Gemstone Hunter—Standing on your Own Two Pixels
Animation strips
Time for action – building the AnimationStrip class
What just happened?
Animated game objects
Time for action – building the GameObject class – part 1
What just happened?
Drawing, animation, and movement
Time for action – building the GameObject class – part 2
What just happened?
Map-based collision detection
Time for action – building the GameObject class – part 3
What just happened?
The player
Time for action – creating the Player class
What just happened?
Running...
Time for action – overriding the Update() method – part 1
What just happened?
...and jumping
Time for action – overriding the Update() method – part 2
What just happened?
Staying on the screen
Time for action – repositioning the camera
What just happened?
Loading levels
The LevelManager module
Time for action – building the LevelManager module
What just happened?
Gemstones
Time for action – building the Gemstone class
What just happened?
Scoring
Time for action – implementing score tracking
What just happened?
Enemies
Time for action – summoning the zombies
What just happened?
Player-enemy interaction
Time for action – interacting with zombies
What just happened?
Level transitions
Time for action – supporting map transitions
What just happened?
Processing other codes
Time for action – handling codes
What just happened?
Game structure
Time for action – implementing game states
What just happened?
Have a go hero
Summary
Index
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜