C Ray Versions Save

c-ray is a small, simple path tracer written in C

v0.6.2

4 years ago

New in this version:

  • Deterministic renders. If you render an image twice with the same settings, the resulting image will match perfectly.
  • Rendertime estimates are now computed on the main thread. Much more reliable, no more race conditions.
  • Improved render status now shows completion percentage, average microseconds per ray, estimate until finished and samples per second. This status updates ~4 times a second.
  • All memory leaks are fixed as of this release.
  • Heaps of internal refactoring to ease future development.
  • Added support for loading textures from the following formats: JPEG, BMP, TGA, PIC and PNM (f7106e1)
  • Dramatically reduce KD-tree construction time. It no longer has an O(n^2) end condition (cb59980)
  • Write render information to PNG tEXt chunks. (You can observe with imagemagic: identify -verbose output/rendered_0000.png)
  • Timers now use microsecond precision.
  • Start implementing a new public API in src/c-ray.h. This is still very much WIP, but it is starting to look pretty good.
  • Fix over a hundred warnings, we now build with -Wextra where applicable.
  • Reduce heap allocations where they were not needed.
  • Fix bug where all normals everywhere were inverted, leading to some subtle bugs. (d78c862)
  • Re-implement smooth shading.
  • Add assertion macros, and assert in a few places where it makes sense.
  • The scene loader now has a sane defaults system, so you can omit settings you don't care about.
  • Meshes can now emit light. (0a26ea7)
  • Meshes can now have roughness (9c9bc64)
  • Meshes can now have normal maps (531ff80)
  • You can now set focal length and aperture in camera preferences to have depth-of-field (00088d9)
  • Disable -ffast-math, it was causing floating point errors that resulted in random white dots. (2380e7d)
  • Fix the BMP encoder so it no longer has black lines.

v0.6.1

4 years ago

Just testing for now. There's still a ton of work to do for this to be usable in any way at all. Lately I've been doing more test scenes and animations, so some of the obvious flaws in the input format have been fixed. Still though, the format will change, APIs need polishing and features need to be added. But you have to start somewhere!

You can always find the latest precompiled binaries at http://vkoskiv.com/c-ray/releases