diff --git a/libfxengine.a b/libfxengine.a index 9b041a0..07731eb 100644 Binary files a/libfxengine.a and b/libfxengine.a differ diff --git a/src/triangle.c b/src/triangle.c index d9f6645..fae81ef 100644 --- a/src/triangle.c +++ b/src/triangle.c @@ -1,5 +1,5 @@ #include -#include +#include #include #include @@ -15,10 +15,9 @@ static uint32_t frame_interval_max=1; #endif -void fe_update(const uint32_t libprof_channel) +void fe_render_update(const uint32_t libprof_channel) { //dupdate(); - #ifdef USE_LIBPROF // gestion du temps avec libprof if (prof_elapsed) @@ -213,7 +212,7 @@ void fe_display_triangle(const fe_triangle * face) vy /= (double) face->s3->z / ((1 - vy) / face->s1->z + vy / (double) face->s3->z); */ // Affichage du point - const uint8_t color = bitmap_get_pixel_r(face->texture, vx2, vy2); + const uint8_t color = fe_texture_get_pixel_r(face->texture, vx2, vy2); if (color >> 1) { diff --git a/src/zbuffer.c b/src/zbuffer.c index 217bda9..1b0657e 100644 --- a/src/zbuffer.c +++ b/src/zbuffer.c @@ -8,7 +8,7 @@ #include #include #include - +#include static const int size_uint32 = fe_width * fe_height; @@ -21,19 +21,22 @@ static int32_t *zbuffer = (void *)0x88080000 - (((size_char >> 5) << 5) + 1); // gint doesn't provide any prototype for that function which is implemented - +// AND THE DMA STILL DON'T WOOORK :( extern void dma_memset(void *dst, uint32_t l, size_t size); + void fe_zbuffer_clear() { uint32_t indice = 0; - +/* if (isSH3()) +*/ for (indice = 0; indice < size_uint32; indice ++) zbuffer[indice] = fe_max_dist; +/* else dma_memset(zbuffer, fe_max_dist, size_char); - +*/ } bool fe_zbuffer_set_px(const uint32_t x, const uint32_t y, const uint32_t dist)