From 623fee395425ab33f14fb9cd8ffa790e362f59d7 Mon Sep 17 00:00:00 2001 From: Julian T Date: Fri, 21 Feb 2020 06:55:27 +0100 Subject: Added pgm drawing and got light ray tracing working Still needs correct light simulation and reflections --- pgm.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 pgm.c (limited to 'pgm.c') diff --git a/pgm.c b/pgm.c new file mode 100644 index 0000000..058b445 --- /dev/null +++ b/pgm.c @@ -0,0 +1,27 @@ +#include "pgm.h" + +#include +#include + +int pgm_write_header(FILE *fp, unsigned int w, unsigned int h) +{ + return fprintf(fp, "P3\n%d %d\n255\n", w, h); +} + +int pgm_write_pixel(FILE *fp, color_t *c) +{ + return fprintf(fp, "%d %d %d\n", c->r, c->g, c->b); +} + +color_t *color_set(color_t *c, uint8_t r, uint8_t g, uint8_t b) +{ + if (!c) { + c = (color_t *) malloc(sizeof(c)); + } + + c->r = r; + c->g = g; + c->b = b; + + return c; +} -- cgit v1.2.3