You've been logged out of GDC Vault since the maximum users allowed for this account has been reached. To access Members Only content on GDC Vault, please log out of GDC Vault from the computer which last accessed this account.

Click here to find out about GDC Vault Membership options for more users.


Session Name:

Math for Game Developers: Understanding and Tracing Numerical Errors in C++


Computer number representations have limited precision. Results of arithmetic operations are rounded to the nearest representable number. The effect of rounding can be hard to estimate, however, it helps to think in terms of relative error rather than absolute error. This session will discuss how computations introduce large relative rounding errors and show how to determine the maximum relative error in a computed value. In C++ code, a tight upper bound for the rounding error can be determined automatically for every computed value by substituting float or double types with a proxy class. The presentation will show how to write C++ functions and expressions such that the ErrorTracer proxy class can be dropped in transparently and helps to validate the stability of your computations.

Did you know free users get access to 30% of content from the last 2 years?

Get your team full access to the most up to date GDC content

  • GDC 2019
  • Gino van den Bergen
  • Dtecta
  • free content
  • Programming
  • Programming