X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=examples%2Fboard_reprap%2Fsrc%2Fc3%2Fc3geometry.h;h=2364fb3e2db4c45eed3aad5524187b42b4b82f38;hb=ba4ada34f2dabe341191bf7468aa6e84b4437c4b;hp=5a7beb10a0f6caa8b504ae12d64893e70132a191;hpb=e51bd6752e5c6a95298a16457b2e97150247735f;p=simavr diff --git a/examples/board_reprap/src/c3/c3geometry.h b/examples/board_reprap/src/c3/c3geometry.h index 5a7beb1..2364fb3 100644 --- a/examples/board_reprap/src/c3/c3geometry.h +++ b/examples/board_reprap/src/c3/c3geometry.h @@ -46,6 +46,7 @@ DECLARE_C_ARRAY(c3colorf, c3colorf_array, 16); typedef struct c3material_t { c3colorf color; uint32_t texture; + uint32_t mode; } c3material_t; //! Bounding box. TODO: Move to a separate file? @@ -56,6 +57,7 @@ typedef struct c3bbox_t { //! Generic geometry type enum { C3_RAW_TYPE = 0, + C3_LINES_TYPE, C3_TRIANGLE_TYPE, C3_TEXTURE_TYPE, }; @@ -117,14 +119,15 @@ c3geometry_dispose( //! Prepares a geometry. /*! - * The prepare phase is called only when the container object is 'dirty' + * The project phase is called only when the container object is 'dirty' * for example if it's projection has changed. - * The prepare call is responsible for reprojecting the geometry and that + * The project call is responsible for reprojecting the geometry and that * sort of things */ void -c3geometry_prepare( - c3geometry_p g ); +c3geometry_project( + c3geometry_p g, + c3mat4p m); //! Draw the geometry /* @@ -143,7 +146,7 @@ c3geometry_draw( * global to save memory for each of the 'generic' object. * This call will duplicate that stack and allocate (if not there) a read/write * empty driver that the application can use to put their own, per object, - * callback. For example you can add your own prepare() or draw() function + * callback. For example you can add your own project() or draw() function * and have it called first */ struct c3driver_geometry_t *