ladybird/Libraries
Jesse bcf3a4457f LibM: Fixed sin() precision (#726)
The old implementation of sin() had a very unacceptable amount of
error that was causing a lot of texture perspective issues in Quake.
This has been remedied through the use of the hardware `fsin`
x87 instruction. As has been noted in #246, this instruction is both
very slow, and can become wildly inaccurate for more precise values,
however the current implementation made an incorrect assumption about
applications "will end up writing their own implemtnation anyways",
which is not the case for Quake in Software mode, which relies heavily
on a correct `sin()` and `cos()` function for `R_ScanEdges()`.

Realistically, we should be using something like the CORDIC algorithm
(https://en.wikipedia.org/wiki/CORDIC) or `Taylor Expansion`, however
for now these provides a somewhat accurate result that allows Quake to
run without any texture or geometry issues.
2019-11-03 09:56:39 +01:00
..
LibAudio AudioServer: Added ability to get count of samples in the buffer queue 2019-10-19 20:05:13 +02:00
LibC POSIX compliance: (most) shell scripts converted to generic shell 2019-11-03 09:26:22 +01:00
LibCore POSIX compliance: (most) shell scripts converted to generic shell 2019-11-03 09:26:22 +01:00
LibDraw POSIX compliance: (most) shell scripts converted to generic shell 2019-11-03 09:26:22 +01:00
LibGUI POSIX compliance: (most) shell scripts converted to generic shell 2019-11-03 09:26:22 +01:00
LibHTML POSIX compliance: (most) shell scripts converted to generic shell 2019-11-03 09:26:22 +01:00
LibIPC POSIX compliance: (most) shell scripts converted to generic shell 2019-11-03 09:26:22 +01:00
LibM LibM: Fixed sin() precision (#726) 2019-11-03 09:56:39 +01:00
LibMarkdown LibMarkdown: Include a <head> element when rendering MD to HTML 2019-10-30 20:28:44 +01:00
LibPCIDB POSIX compliance: (most) shell scripts converted to generic shell 2019-11-03 09:26:22 +01:00
LibThread POSIX compliance: (most) shell scripts converted to generic shell 2019-11-03 09:26:22 +01:00
LibVT LibVT: Make inject_string() a public API so clients can use it 2019-10-22 22:14:36 +02:00