diff --git a/include/fxengine/triangle.h b/include/fxengine/triangle.h new file mode 100644 index 0000000..14b4ad5 --- /dev/null +++ b/include/fxengine/triangle.h @@ -0,0 +1,48 @@ +#ifndef FE_TRIANGLE +#define FE_TRIANGLE + +#include +#include +#include + +/** + * @brief Triangle struct used to render fonctions + * @param[out] part choose the used texture half + * @param[out] clockwised choose the visible side of the face + * @param[out] s1,s2,s3 three points + * @param[out] texture used texture + */ +struct fe_triangle +{ + fe_integer_position * s1; + fe_integer_position * s2; + fe_integer_position * s3; + + fe_texture_rich * texture; + + bool part; + bool clockwised; +}; +typedef struct fe_triangle fe_triangle; + + + +/** + * @brief Renders a triangle with perspective deformation + * + * @param[in] face pointer to the face to draw + */ +void fe_display_triangle(const fe_triangle * face); + +/** + * @brief Clears vram, zbuffer + * + * @param[in] libprof_channel The libprof channel to be used to count_fps + * if you don't use libprof channel, (default), you send what you want, + * it doesn't matters ;) + */ +void fe_render_update(const uint32_t libprof_channel); + + + +#endif