Very simple ray tracing engine in (almost) pure Python. Depends on NumPy and Matplotlib. Diffuse and specular lighting, simple shadows, reflections, refraction. Purely sequential algorithm, slow execution. Forked from rossant.
Refraction is added in new branch - "refraction".
The source code from gist represented in master.