Sam Hocevar
|
2edb8115e6
|
core: port all code to NativeClient. Nothing runs for now, but it builds.
|
13 vuotta sitten |
Sam Hocevar
|
c508dc2a4a
|
core: dynamically allocate mantissa for real numbers. One day we'll be able
to modify their precision at runtime.
|
13 vuotta sitten |
Sam Hocevar
|
4e4e800572
|
core: implement the gamma function for reals using Spouge's formula.
|
13 vuotta sitten |
Sam Hocevar
|
b6b8044442
|
core: implement frexp(), ldexp() and modf() for reals.
|
13 vuotta sitten |
Sam Hocevar
|
b354e17ef3
|
core: implement log10, sinh and cosh for real numbers.
|
13 vuotta sitten |
Sam Hocevar
|
1280301f27
|
core: implement pow() for real numbers; for now special cases such as
negative zero or negative nth roots are not handled.
|
13 vuotta sitten |
Sam Hocevar
|
2235e9c180
|
core: implement real methods cbrt(), log2(), exp2(), and copysign().
|
13 vuotta sitten |
Sam Hocevar
|
efafb640b7
|
core: implement tan() for real numbers.
|
13 vuotta sitten |
Sam Hocevar
|
5d9167bda0
|
core: fix an accuracy error in real::re() and real::sqrt() introduced in
the 16-to-32-bit refactoring.
|
13 vuotta sitten |
Sam Hocevar
|
9ff54f59e3
|
core: encode real numbers using uint32_t rather than uint16_t.
|
13 vuotta sitten |
Sam Hocevar
|
c5c4913bda
|
core: implement round() and fmod() for real numbers.
|
13 vuotta sitten |
Sam Hocevar
|
064856b443
|
core: implement floor() and ceil() for real numbers.
|
13 vuotta sitten |
Sam Hocevar
|
221f469c3f
|
core: implement asin() and acos() for real numbers and add unit tests for
these functions.
|
13 vuotta sitten |
Sam Hocevar
|
f5019d3930
|
core: implement atan() for real numbers.
|
13 vuotta sitten |
Sam Hocevar
|
bbd75b80eb
|
core: add real constants for 0, 1, 2 and 10, and reorder static constants
so that their initialisation order ensures they have the proper values. Add
unit tests for these constants.
|
13 vuotta sitten |
Sam Hocevar
|
1ffa994f4b
|
core: add boolean operators on real numbers, add unit tests for that,
and simplify the Remez code accordingly.
|
13 vuotta sitten |
Sam Hocevar
|
8f400b6364
|
core: create global real number variables such as R_E, R_PI, R_LN2 etc.
|
13 vuotta sitten |
Sam Hocevar
|
4822f02d8d
|
core: implement shift operators for reals; they're useful for fast
multiplications by integers, especially powers of two.
|
13 vuotta sitten |
Sam Hocevar
|
f62946fc7b
|
core: implement log() for real numbers, and start documenting our next
improved implementation of exp(), which relies on log().
|
13 vuotta sitten |
Sam Hocevar
|
593aa3af70
|
core: implement sin(), cos() and abs() for reals and fix a crash in the
addition and subtraction operators occurring when exponents were too
different.
|
13 vuotta sitten |
Sam Hocevar
|
c0edb49ed6
|
core: add exp() for real numbers and fix the == operator.
|
13 vuotta sitten |
Sam Hocevar
|
02bcc443f6
|
core: add sqrt() for real numbers.
|
13 vuotta sitten |
Sam Hocevar
|
ff45d2ac98
|
test: add a 10-line example program that computes Pi to the 150th digit.
|
13 vuotta sitten |
Sam Hocevar
|
58ee1d5b81
|
core: add operators +=, *= etc. to the real class, and refactor the
print() method so that it displays decimal values.
|
13 vuotta sitten |
Sam Hocevar
|
cdc155c42b
|
core: allow to cast reals to doubles in addition to floats.
|
13 vuotta sitten |
Sam Hocevar
|
325ea94821
|
core: implement division of reals and change their default precision
to 32 bigits.
|
13 vuotta sitten |
Sam Hocevar
|
a173e49ddc
|
core: implement comparison operators for reals.
|
13 vuotta sitten |
Sam Hocevar
|
48f00deff9
|
core: fix real unary minus and handle negative numbers in additions.
|
13 vuotta sitten |
Sam Hocevar
|
dbb0463f4c
|
core: start working on the extended floating point addition.
|
13 vuotta sitten |
Sam Hocevar
|
202ac6aaf3
|
core: switch real mantissa to uint16_t instead of uint32_t to ease the
multiplication.
|
13 vuotta sitten |
Sam Hocevar
|
5fc298964b
|
core: start working on a "real" class for arbitrarily sized floats.
|
13 vuotta sitten |
Sam Hocevar
|
22b7a41c2e
|
core: fix include guard naming scheme.
|
13 vuotta sitten |
Sam Hocevar
|
8848cf53db
|
Put everything in the "lol" namespace. Better late than never.
|
14 vuotta sitten |
Sam Hocevar
|
290c8f40d7
|
Skeleton for sample entity and sampler manager classes.
|
14 vuotta sitten |
Sam Hocevar
|
0ed566d3cc
|
Complete Lol Engine / Deus Hax / Monsterz split.
|
14 vuotta sitten |
Sam Hocevar
|
3bb8c8aa2f
|
Factor Forge and Tiler using the new Dict class.
|
14 vuotta sitten |
Sam Hocevar
|
7d382e549d
|
The frame counter is now an asset object.
|
14 vuotta sitten |