raytraCer
c-ray
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
raytraCer
c-ray
-
Making C and Python Talk to Each Other
I did a lot of this for my raytracer, c-ray [1]. Originally it was just a self-contained C program, but I got tired of writing buggy and limited asset import/export code, so eventually I put together a minimal public C API [2] that I then wrapped with CPython bindings [3] and some additional python code [4] to expose a more 'pythonic' API. It's all still a WIP, but it has already allowed me to write a Blender plugin [5], so now I can play around with my renderer directly in Blender, and test with more complex scenes others have made.
Fun project, and it's really cool to see my little renderer in the interactive viewport in Blender, but I did learn that I don't particularly enjoy working with non-trivial amounts of Python code.
[1] https://github.com/vkoskiv/c-ray
-
I use Linux
Sort of hypothetical, of course. I just happen to collect old computer hardware and I like to see how old of a system I can compile one of my C projects for. But I bet it’s a requirement for many large software projects as well.
-
FOVO: A new 3D rendering technique based on human vision
> which I implemented for RenderMan
Cool, you work at Pixar? I've been working on a small hobby renderer [1] for a few years, and RenderMan has been a big inspiration!
[1] https://github.com/vkoskiv/c-ray
-
I feel like flying
Not sure if my long-time renderer project conforms to the suckless ethos. It’s 5 years old, ~8kloc, written in C99 and tries to go about things the simplest way possible. I do kind of pride myself on how much stuff I manage to remove from it as I slowly build it out to be more versatile.
What are some alternatives?
MinecraftC - A Raytraced Minecraft Classic 0.0.30a port to C
xash3d-fwgs - Vulkan Ray Tracing fork of Xash3D FWGS engine. Intended to be merged into master at some point in the future.
C-Raytracer - A CPU raytracer from scratch in C
C-Path-Tracer - Path Tracer written in C. Made mostly for fun.
minimal_window - A very small C library for putting pixels on the screen, perfect for software raytracing projects.
MiniRT - Ray tracing project for 42 school, Codam.