mirror of
https://github.com/ZDoom/gzdoom.git
synced 2025-05-31 01:01:44 +00:00
- Replaced toint/quickertoint with the portable routines from xs_Float.h. The
former used fistp, which is not portable across platforms, so cannot be used in the play simulation. They were only suitable for the renderer. xs_Float.h also has a very fast float->fixed conversion, so FLOAT2FIXED uses that now. (And I also learned that the FPU's round to nearest is not the rounding I learned in grade school but actually Banker's Rounding. I had no idea.) (Also, also, the only thing that could have made quickertoint faster than toint was that it stored a 32-bit int. I never timed them, and I doubt in practice there was any real difference between the two.) - Changed atan2f to atan2. Using floats is not a win, because the result is returned as a double on the x87 stack, which the caller then needs to cast down to a float using fst/fld. SVN r1990 (trunk)
This commit is contained in:
parent
eca9b4981b
commit
344dda4a1a
13 changed files with 56 additions and 83 deletions
|
@ -1,3 +1,15 @@
|
|||
November 19, 2009
|
||||
- Replaced toint/quickertoint with the portable routines from xs_Float.h. The
|
||||
former used fistp, which is not portable across platforms, so cannot be
|
||||
used in the play simulation. They were only suitable for the renderer.
|
||||
xs_Float.h also has a very fast float->fixed conversion, so FLOAT2FIXED
|
||||
uses that now.
|
||||
(And I also learned that the FPU's round to nearest is not the rounding I
|
||||
learned in grade school but actually Banker's Rounding. I had no idea.)
|
||||
(Also, also, the only thing that could have made quickertoint faster than
|
||||
toint was that it stored a 32-bit int. I never timed them, and I doubt in
|
||||
practice there was any real difference between the two.)
|
||||
|
||||
November 18, 2009
|
||||
- Added padding around packed textures to compensate for apparent NVidia
|
||||
texture coordinate imprecision.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue