f4445417dc
Reorganizing the module tree.
...
Enough things had accumulated that it seemed to make sense to
group some stuff together. So here it is.
2017-02-14 00:14:08 -08:00
97b5ef77f8
Code cosmetics: organize and alphabetize crate/mod/use statements.
2016-08-20 18:10:55 -07:00
0880a0f19d
Make renderer actually use the material system properly.
...
The intersection code still isn't using any kind of shading,
and materials aren't parsed by the parser, but the renderer
class itself is using them.
2016-07-07 19:51:19 -07:00
e56ac418da
Beginnings of global illumination.
...
There are still some obvious bugs in it that I haven't tracked down,
so the renders aren't correct yet.
2016-07-03 01:18:50 -07:00
18245b725c
All final intersections are now done in world space.
...
BVH traversal still happens in local space, but final actual
surface intersection calculations are done in world space by
transforming the triangle into world space. This is to improve
numerical consistency between intersections.
2016-06-09 01:04:12 -07:00
a681ba461e
Implemented basic multi-threaded rendering.
...
It's a bit inefficient because a thread is spawned for each pixel.
Need to implement bucketing.
2016-06-03 21:03:04 -07:00
901fc88f63
Assemblies now use BVH accel and actually utilize instances.
2016-04-23 13:37:38 -07:00
f6891173eb
Moved ray tracing responsibilities to the Tracer.
...
This is still pretty WIP, but it at least gets the functionality
back to where it was before.
2016-03-13 13:01:10 -07:00
25f8e0782a
Added Assembly and Scene types.
...
This is in preparation for real scene data, as parsed from real
psy files. Exciting!
2016-03-08 21:57:51 -08:00
907d15f643
Started creating an interface for surfaces.
...
Testing it out by making a bogus TriangleMesh surface type.
2016-01-03 00:09:23 -08:00