X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Frasterize;a=blobdiff_plain;f=raster.h;h=53f7627a65a5b43d1c94b47725bf046643a7f5a8;hp=ef358e71855b96d05eaef150f6a526e0d12dac12;hb=09dd89d10e65029f0be313dd463ba1f43cac2fbb;hpb=c875478cdd823c7df8fdc859941bd9e5948c9315 diff --git a/raster.h b/raster.h index ef358e7..53f7627 100644 --- a/raster.h +++ b/raster.h @@ -11,6 +11,7 @@ #include "color.h" #include "common.h" #include "light.h" +#include "model.h" #include "tri.h" @@ -69,11 +70,21 @@ void raster_projection(raster_t* p, const mat_t* transform); */ void raster_eye(raster_t* p, vec_t eye); +/* + * Set the ambient light for the scene. + */ +void raster_ambient(raster_t* p, color_t ambient); + /* * Add a light to the scene. */ void raster_light(raster_t* p, light_t light); +/* + * Set the material properties for the scene. + */ +void raster_material(raster_t* p, color_t specular, scal_t shininess); + /* * Save the raster to a PPM file. @@ -92,7 +103,12 @@ int raster_export_bmp(const raster_t* p, const char* filename); void raster_clear(raster_t* p, color_t fill); /* - * Draw a smooth gradient triangle to the raster. + * Draw a model to the raster. + */ +void raster_draw_model(raster_t* p, const model_t* model); + +/* + * Draw a triangle to the raster. */ void raster_draw_tri(raster_t* p, const tri_t* triangle);