SFTtech/openage

Fixed point intermediary type

heinezen opened this issue · 3 comments

Required Skills: C++

Difficulty: Medium

We could use an optional intermediary type for fixed-point types. Intermediary types are used for temporary values in calculations where intermediary steps can cause the original values to overflow. A common scenario where this can happen are multiplication or division. We take inspiration for this from the fpm library.

Intermediary types are only strictly necessary if the base type is small, e.g. int16_t. Therefore, their usage should be optional.

Tasks

  • Add intermediary type as optional template parameter
  • Use intermediary type in fixed-point calculations

Further Reading

@ArcXeon Sure, go ahead :)

Hey, I'd like to give this a shot.
Thanks!

@Pranshu-S go for it :)