diff options
-rw-r--r-- | ray.c | 7 | ||||
-rw-r--r-- | scene.h | 6 |
2 files changed, 13 insertions, 0 deletions
@@ -187,6 +187,13 @@ static void ray_calc_light(space_t *s, color_t *dest, object_t *o, vector_t *N, } } +// Calculates the environmental light. Pretty slow +// https://www.scratchapixel.com/lessons/3d-basic-rendering/global-illumination-path-tracing +static void light_environment(space_t *s, color_t *dest, object_t *o, vector_t *N, vector_t *eye, vector_t *point) +{ + +} + int ray_trace_recur(space_t *s, color_t *dest, ray_t *ray, unsigned hop, COORD_T scale) { COORD_T dist; @@ -62,6 +62,12 @@ typedef struct { color_t ambient; color_t back; + + // Environment light + // TODO make more general + // Slows things down alot + bool env_enabled; + color_t env_color; } space_t; object_t *add_sphere(space_t *s, vector_t *c, COORD_T r, material_t *m); |