foo
[cyberay] / src / rt.c
1 #include "rt.h"
2
3 struct framebuffer fb;
4
5 int fbsize(int width, int height)
6 {
7         void *tmp;
8
9         if(!(tmp = malloc(width * height * sizeof *fb.pixels))) {
10                 return -1;
11         }
12
13         free(fb.pixels);
14         fb.pixels = tmp;
15         fb.width = width;
16         fb.height = height;
17         return 0;
18 }
19
20 void render(void)
21 {
22         int i, j;
23         cgm_vec3 *fbptr = fb.pixels;
24
25         for(i=0; i<fb.height; i++) {
26                 for(j=0; j<fb.width; j++) {
27                         if(i < 3 || i >= fb.height - 3 || j < 3 || j >= fb.width - 3) {
28                                 fbptr->x = 1.0f;
29                                 fbptr->y = fbptr->z = 0.0f;
30                         } else {
31                                 fbptr->x = fbptr->z = 0.0f;
32                                 fbptr->y = 1.0f;
33                         }
34                         fbptr++;
35                 }
36         }
37 }