Helper class to render 3D models. More...
Static Public Member Functions | |
static void | render_triangle (const triangle_shaded &tri, const shading_parameters &shading_param, const light_parameters &light, image_drawable_zbuffer *im) |
render a 3D triangle | |
static void | render_mesh (const mesh &m, const shading_parameters &shading_param, const light_parameters &light, image_drawable_zbuffer *im) |
render a 3D mesh | |
static v3 | project (const v3 &x) |
project vertex onto camera |
Helper class to render 3D models.
project vertex onto camera
Referenced by render_triangle().
void cpe::render_engine::render_mesh | ( | const mesh & | m, | |
const shading_parameters & | shading_param, | |||
const light_parameters & | light, | |||
image_drawable_zbuffer * | im | |||
) | [static] |
render a 3D mesh
mesh | m: the 3D mesh with normal & color information | |
shading_parameters | shading_param: the shading parameters | |
light_parameters | light: the light data (positions, ...) | |
image_drawable_zbuffer | *im: pointer to the image to draw on |
References cpe::mesh::get_color(), cpe::mesh::get_connectivity(), cpe::mesh::get_normal(), cpe::mesh::get_vertices(), and render_triangle().
void cpe::render_engine::render_triangle | ( | const triangle_shaded & | tri, | |
const shading_parameters & | shading_param, | |||
const light_parameters & | light, | |||
image_drawable_zbuffer * | im | |||
) | [static] |
render a 3D triangle
triangle_shaded | tri: the 3D triangle with normal & color information | |
shading_parameters | shading_param: the shading parameters | |
light_parameters | light: the light data (positions, ...) | |
image_drawable_zbuffer | *im: pointer to the image to draw on |
References cpe::triangle_shaded::c0, cpe::triangle_shaded::c1, cpe::triangle_shaded::c2, cpe::image::get_Nx(), cpe::triangle_shaded::n0, cpe::triangle_shaded::n1, cpe::triangle_shaded::n2, project(), cpe::v3_shaded::shading(), cpe::image_drawable_zbuffer::triangle(), cpe::v3::x(), cpe::triangle_shaded::x0, cpe::triangle_shaded::x1, cpe::triangle_shaded::x2, cpe::v3::y(), and cpe::v3::z().
Referenced by render_mesh().