Sam Hocevar
69629d16c1
color: tweak RGB to HSV/HSL code for not yet investigated numerical
stability issues.
12 роки тому
Sam Hocevar
b07216ae20
base: add missing local using statement for namespace std.
12 роки тому
Sam Hocevar
57814351b9
base: optimise array concatenation, fix string concatenation, and fix
string concatenation unit tests.
12 роки тому
Sam Hocevar
41b752e635
base: tweak the asserts in the String class, add String::Sub() method
for substrings, and the corresponding unit tests.
12 роки тому
Sam Hocevar
0ea4133bba
base: add safety asserts to the Array and String classes.
12 роки тому
Sam Hocevar
8613d04c03
core: implement a cool ASSERT() macro.
12 роки тому
Sam Hocevar
e7806e96cc
build: check for getcwd() and _getcwd() and configure time.
12 роки тому
Sam Hocevar
937f3e4522
sys: check for <unistd.h> and use getcwd() properly on non-Windows systems.
12 роки тому
Sam Hocevar
7d9d7184f3
base: fix header guard names.
12 роки тому
Sam Hocevar
34948b7a0c
base: fix a bug in the String fixed-size constructor.
12 роки тому
Sam Hocevar
ce04c94ff3
sys: retrieve executable path if available.
12 роки тому
Sam Hocevar
4a643241be
build: remove leftover entries from .vcxproj.
12 роки тому
Sam Hocevar
5402346b16
core: move the Log and Timer classes to the sys/ subdirectory, use
the String class instead of the stack for logging, and get rid of
the old and useless BitField class.
12 роки тому
Sam Hocevar
c65b715e3a
core: implement String::Printf() for va_list arguments.
12 роки тому
Sam Hocevar
a2b1a60689
core: fix PS3 compilation.
12 роки тому
Sam Hocevar
75b677cade
core: add missing <cstring> include in our string.h.
12 роки тому
Sam Hocevar
bbf72e1a64
core: pass the project directory to the binary build and get rid of
that 2-year old "temporary Win32 hack".
12 роки тому
Sam Hocevar
6ce17605a7
string: implement String::Last() and a constructor for fixed-length strings.
12 роки тому
Sam Hocevar
145ad9e806
build: fix a ClInclude that should have been ClCompile.
12 роки тому
Sam Hocevar
1a54a81167
sys: move thread.h to the sys/ directory.
12 роки тому
Sam Hocevar
6a6e46cf0d
system: try to autodetect the data directory from the executable path;
currently works for images (SDL and GDI+ loaders) and sound samples.
12 роки тому
Sam Hocevar
8dd6d33a6d
base: implement String::Resize().
12 роки тому
Lolbot
7e4da3d634
fixed 27 files out of 2315:
- removed 0 CR characters
- removed 188 trailing whitespaces
- replaced 537 tabs with spaces
12 роки тому
Benjamin ‘Touky’ Huet
ad275175b8
Tweak to prevent tri_to_process.Last().m1 emptying.
12 роки тому
Sam Hocevar
3973f80a9d
base: fix a nasty double free issue in Array::Remove().
12 роки тому
Benjamin ‘Touky’ Huet
1038fa7fbe
Small MeshCsg return FIX
12 роки тому
Benjamin ‘Touky’ Huet
6db0694db4
Revert shiny.lolfx to previous, monogolo-commit.
12 роки тому
Benjamin ‘Touky’ Huet
4393a43752
Added CSG v0.001a : not optimized, too much operation makes it slow. triangle count is not optimized.
Useage : "...[.... csg*]" equals "current mesh -CSG- the mesh in the braces".
Keywords : CsgUnion<csgu>, CsgSubstract<csgs>, CsgAnd<csga>, CsgXor<csgx>
TODO : cleanup useless code.
TODO : Some bugs are still present, some face that disappear should not.
TODO : Correct epsilon useage (see geometry files).
TODO : Coplanar face are not handled -at all-.
TODO : Vertex count goes through the roof in case of a Xor.
12 роки тому
Benjamin ‘Touky’ Huet
3d56a23a55
Added geometry basic functions.
TODO : second pass on coding-style, and some tweak & usage modification.
12 роки тому
Sam Hocevar
f44e3e323b
core: you can now while(app.MustTick()) { Tick(); } instead of app.Run().
12 роки тому
Sam Hocevar
d3032e3e67
color: slightly better HSVToRGB routine.
12 роки тому
Sam Hocevar
47cf667a93
color: write the RGB to HSL routine and its associated unit tests.
12 роки тому
Sam Hocevar
5715742774
color: optimise RGB to HSV conversion routine using my latest findings,
and add a simple unit test function.
12 роки тому
Benjamin ‘Touky’ Huet
c7219ff1dd
New year copyright update.
12 роки тому
Sam Hocevar
d9bdb33bc0
color: a reasonably fast RGB to HSV conversion with only three tests.
12 роки тому
jeunathe
08e81c93d1
coding style my ass
12 роки тому
jeunathe
504f9a4ca2
Update EasyMesh.Convert() method.
Now takes an optional shader
12 роки тому
Sam Hocevar
99b0874652
color: simplify CIEDE2000 distance code.
12 роки тому
Sam Hocevar
b12c16448a
color: fix a mistake in the CIEDE2000 color-difference formula.
12 роки тому
Sam Hocevar
a5ba03b405
color: unit test data for the CIEDE2000 color-difference formula.
12 роки тому
Sam Hocevar
eae9dae863
color: fix typo in float table.
12 роки тому
Sam Hocevar
d8577e0ec7
color: move the CIEDE2000 distance code into the C++ file and
reorganise the CIE-1931 and CIE-1964 tables.
12 роки тому
Sam Hocevar
4e678e2cd0
color: linear interpolation for the wavelength to colour function.
12 роки тому
Sam Hocevar
44f324a354
color: add conversion from CIE-xyY to CIE-XYZ and start working on
a wavelength to saturated xyY function based on the standard observer
data.
12 роки тому
Sam Hocevar
46cc299f5e
base: fix more memory corruptions in the Array class.
12 роки тому
Sam Hocevar
02bea89c0e
color: ensure XYZ values use the [0 100] scale and add an optional
white value in case we want to convert XYZ to L*a*b* with something
else than D65.
12 роки тому
Sam Hocevar
1b9b5be4b7
color: add HSL/HSV conversions, fix XYZ/RGB conversions that I mixed up,
add XYZ to xyY conversion (which gives us a pretty accurate xy graph of
the sRGB gamut), and normalise XYZ using a D65 white point.
12 роки тому
Sam Hocevar
1fe4a5796e
math: mark unused arguments as used in fract().
12 роки тому
Sam Hocevar
1787ddbf19
color: implement HSV to RGB transformation and a CIEDE2000 distance
function for CIE L*a*b* values.
12 роки тому
Sam Hocevar
e00d987083
math: implement fract() for vectors and scalar types.
12 роки тому