Book Image

Microsoft XNA 4.0 Game Development Cookbook

By : Luke Drumm
Book Image

Microsoft XNA 4.0 Game Development Cookbook

By: Luke Drumm

Overview of this book

Microsoft XNA attempts to free game developers from writing "repetitive boilerplate code", allowing them to focus on producing enjoyable gameplay rather than tedious and complicated setup. The Framework has reduced the once steep learning curve for game development, transforming it into something more attainable, and this cookbook will help you to take full advantage of XNA to bring reality into your virtual worlds. "Microsoft XNA 4.0 Game Development Cookbook" is the perfect resource for propelling your game development capabilities from the simple 2D demo towards engaging and exciting, professional looking games. With a diverse selection of game-related topics covered, discover how to create rich 2D and 3D worlds filled with interesting characters, detailed scenery and dynamic special effects applicable to PC, Xbox 360, and Windows Phone 7 game play. There is no shortage of introductory texts available for XNA, a number of which are fantastic for getting started with simple 2D games, but "Microsoft XNA 4.0 Game Development Cookbook"ù will help you take the steps to start producing games that have deeper gameplay, compelling graphics and that little bit of extra polish! The book's recipes will get you up and going quickly with the next level of game features such as 3D graphics, AI, and network play. With this practical cookbook to hand, even the more experienced developer will be better equipped to achieve high level tasks with XNA in a quick and efficient manner.
Table of Contents (15 chapters)
Microsoft XNA 4.0 Game Development Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface

Applying simple car physics


In this example, we're going to tackle what I consider to be pretty close to the bare minimum of car physics: allowing the player to move forwards, backwards, left and right. No simulation of note will be included beyond the tracking of speed and location.

This sort of physics is usually well-suited for the simple, arcade type driving where you want the player to be able to focus on aspects other than the act of driving itself, such as dodging or shooting.

Getting ready

This recipe relies upon the Geometric Buffer classes discussed in Chapter 3, Procedural Modeling, to build the car mesh. Any representation, be it a 3D mesh or even a 2D image, can be substituted without issue though.

How to do it...

To create your own drivable car:

  1. 1. Create a new Car() class to hold the display and control logic for a car:

    class Car
    {
    
  2. 2. Add instance-level variables to hold the meshes and relative positions of the wheels:

    GeometricBuffer<VertexPositionNormalTexture> carBuffer...