diff --git a/articles/getting_started/5_adding_basic_code.md b/articles/getting_started/5_adding_basic_code.md index bf071b98..acc3d938 100644 --- a/articles/getting_started/5_adding_basic_code.md +++ b/articles/getting_started/5_adding_basic_code.md @@ -120,7 +120,7 @@ The following is a line-by-line analysis of the above code. float updatedBallSpeed = ballSpeed * (float)gameTime.ElapsedGameTime.TotalSeconds; ``` -This code caches how much time, in seconds, since the last `Update` call was run, which gives us the duration of a single frame drawn to the screen. This is then multiplied by the `ballSPeed` value to allow us to control just how fast the ball moves each frame. +This code caches how much time, in seconds, since the last `Update` call was run, which gives us the duration of a single frame drawn to the screen. This is then multiplied by the `ballSpeed` value to allow us to control just how fast the ball moves each frame. The reason why `ballSpeed` is multiplied by `gameTime.ElapsedGameTime.TotalSeconds` is because, when not using fixed time step, the time between Update calls varies. To account for this, the ballSpeed is multiplied by the amount of time that has passed since the last Update call. The result is that the ball appears to move at the same speed regardless of what framerate the game happens to be running at.