Skip to Main Content
XNA 3.0 Game Programming Recipes: A Problem-Solution Approach
book

XNA 3.0 Game Programming Recipes: A Problem-Solution Approach

by Riemer Grootjans
May 2009
Intermediate to advanced content levelIntermediate to advanced
671 pages
18h 34m
English
Apress
Content preview from XNA 3.0 Game Programming Recipes: A Problem-Solution Approach
CHAPTER 4 ■ WORKING WITH MODELS
299
maximum acceleration and rotation speed inside a model structure. Furthermore, you need to
pass the user input, as well as the friction value.
private float Accelerate(ref Vector3 position, ref float angle,
ref Vector3 velocity, float forwardReq, float rotationReq,
float elapsedTime, float maxAccel, float maxRotSpeed, float friction)
{
Matrix rotMatrix = Matrix.CreateRotationY(angle);
Vector3 forwardDir = Vector3.Transform(new Vector3(0, 0, -1), rotMatrix);
velocity = velocity * (1 - friction * elapsedTime) +
elapsedTime * forwardReq * maxAccel *forwardDir;
float forwardSpeed = Vector3.Dot(velocity, forwardDir);
velocity = forwardSpeed * forwardDir;
modelPosition += velocity * elapsedTime;
modelYRot ...
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

XNA 4.0 Game Development by Example: Beginner's Guide

XNA 4.0 Game Development by Example: Beginner's Guide

Kurt Jaegers
Learning LibGDX Game Development - Second Edition

Learning LibGDX Game Development - Second Edition

Suryakumar Balakrishnan Nair, Andreas Oehlke

Publisher Resources

ISBN: 9781430218555Purchase Link