From 6204e6011a0d65c149948331881ab275e433af6a Mon Sep 17 00:00:00 2001 From: Alexandre Date: Tue, 31 Dec 2024 23:23:32 +0100 Subject: [PATCH] completed triangle display function --- bin/back | Bin 136480 -> 142320 bytes obj/display.o | Bin 86512 -> 98768 bytes obj/generation.o | Bin 43040 -> 43040 bytes src/display.c | 110 ++++++++++++++++++++++++++++++++++++++++++++++- src/generation.c | 4 +- 5 files changed, 111 insertions(+), 3 deletions(-) diff --git a/bin/back b/bin/back index ee18efeeaee391e4b8326f2761958bff8cd87f7d..888a04dfe4a8c9a7177cbad4b0dcfe0f3569335c 100755 GIT binary patch delta 32929 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 G(f<#z(Xnp; delta 25398 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 diff --git a/obj/display.o b/obj/display.o index 76cd7fa5a772d237c7f295cd57b4eaa27ddfcde2..19b7c36d349e2de89755fa06b2ca81e1d7bd4b35 100644 GIT binary patch literal 98768 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\KfUpukEIZuzIuY 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 delta 22323 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 0.4) + (pz1 >= 0.4) + (pz2 >= 0.4) == 2) { + double fpx0; double fpy0; double fpz0; + double fpx1; double fpy1; double fpz1; + double mpx0; double mpy0; double mpz0; + double mpx1; double mpy1; double mpz1; + if(pz0 < 0.4) { + // pz1 >= 0.4 and pz2 >+ 0.4 + fpx0 = px1 ; fpy0 = py1 ; fpz0 = pz1 ; + fpx1 = px2 ; fpy1 = py2 ; fpz1 = pz2 ; + // 1-0 segment + project_to_camera( + convex_pt(x1, x0, (pz1 - 0.4)/(pz1 - pz0)), + convex_pt(y1, y0, (pz1 - 0.4)/(pz1 - pz0)), + convex_pt(z1, z0, (pz1 - 0.4)/(pz1 - pz0)), + &mpx0, &mpy0, &mpz0) ; + + // 0-2 segment + project_to_camera( + convex_pt(x2, x0, (pz2 - 0.4)/(pz2 - pz0)), + convex_pt(y2, y0, (pz2 - 0.4)/(pz2 - pz0)), + convex_pt(z2, z0, (pz2 - 0.4)/(pz2 - pz0)), + &mpx1, &mpy1, &mpz1) ; + } else if(pz1 < 0.4) { + // pz0 >= 0.4 and pz2 >+ 0.4 + fpx0 = px0 ; fpy0 = py0 ; fpz0 = pz0 ; + fpx1 = px2 ; fpy1 = py2 ; fpz1 = pz2 ; + // 0-1 segment + project_to_camera( + convex_pt(x0, x1, (pz0 - 0.4)/(pz0 - pz1)), + convex_pt(y0, y1, (pz0 - 0.4)/(pz0 - pz1)), + convex_pt(z0, z1, (pz0 - 0.4)/(pz0 - pz1)), + &mpx0, &mpy0, &mpz0) ; + + // 1-2 segment + project_to_camera( + convex_pt(x2, x1, (pz2 - 0.4)/(pz2 - pz1)), + convex_pt(y2, y1, (pz2 - 0.4)/(pz2 - pz1)), + convex_pt(z2, z1, (pz2 - 0.4)/(pz2 - pz1)), + &mpx1, &mpy1, &mpz1) ; + } else if(pz2 < 0.4) { + // pz1 >= 0.4 and pz0 >+ 0.4 + fpx0 = px0 ; fpy0 = py0 ; fpz0 = pz0 ; + fpx1 = px1 ; fpy1 = py1 ; fpz1 = pz1 ; + // 0-2 segment + project_to_camera( + convex_pt(x0, x2, (pz0 - 0.4)/(pz0 - pz2)), + convex_pt(y0, y2, (pz0 - 0.4)/(pz0 - pz2)), + convex_pt(z0, z2, (pz0 - 0.4)/(pz0 - pz2)), + &mpx0, &mpy0, &mpz0) ; + + // 1-2 segment + project_to_camera( + convex_pt(x1, x2, (pz1 - 0.4)/(pz1 - pz2)), + convex_pt(y1, y2, (pz1 - 0.4)/(pz1 - pz2)), + convex_pt(z1, z2, (pz1 - 0.4)/(pz1 - pz2)), + &mpx1, &mpy1, &mpz1) ; + } + + const SDL_Vertex vtxs[6] = { + construct_vertex(1500.0 * (1.0 + (fpx0 / (1.5 * fpz0 * tan_fov))) / 2.0, 1000.0 * (1.0 + (fpy0 / (fpz0 * tan_fov))) / 2.0, red, green, blue), + construct_vertex(1500.0 * (1.0 + (mpx0 / (1.5 * mpz0 * tan_fov))) / 2.0, 1000.0 * (1.0 + (mpy0 / (mpz0 * tan_fov))) / 2.0, red, green, blue), + construct_vertex(1500.0 * (1.0 + (fpx1 / (1.5 * fpz1 * tan_fov))) / 2.0, 1000.0 * (1.0 + (fpy1 / (fpz1 * tan_fov))) / 2.0, red, green, blue), + construct_vertex(1500.0 * (1.0 + (mpx0 / (1.5 * mpz0 * tan_fov))) / 2.0, 1000.0 * (1.0 + (mpy0 / (mpz0 * tan_fov))) / 2.0, red, green, blue), + construct_vertex(1500.0 * (1.0 + (mpx1 / (1.5 * mpz1 * tan_fov))) / 2.0, 1000.0 * (1.0 + (mpy1 / (mpz1 * tan_fov))) / 2.0, red, green, blue), + construct_vertex(1500.0 * (1.0 + (fpx1 / (1.5 * fpz1 * tan_fov))) / 2.0, 1000.0 * (1.0 + (fpy1 / (fpz1 * tan_fov))) / 2.0, red, green, blue), + }; + SDL_RenderGeometry(renderer, NULL, vtxs, 6, NULL, 0); + } else if((pz0 >= 0.4) + (pz1 >= 0.4) + (pz2 >= 0.4) == 1) { + if(pz0 >= 0.4) { + project_to_camera( + convex_pt(x0, x1, (pz0 - 0.4)/(pz0 - pz1)), + convex_pt(y0, y1, (pz0 - 0.4)/(pz0 - pz1)), + convex_pt(z0, z1, (pz0 - 0.4)/(pz0 - pz1)), + &px1, &py1, &pz1); + project_to_camera( + convex_pt(x0, x2, (pz0 - 0.4)/(pz0 - pz2)), + convex_pt(y0, y2, (pz0 - 0.4)/(pz0 - pz2)), + convex_pt(z0, z2, (pz0 - 0.4)/(pz0 - pz2)), + &px2, &py2, &pz2); + } else if(pz1 >= 0.4) { + project_to_camera( + convex_pt(x1, x0, (pz1 - 0.4)/(pz1 - pz0)), + convex_pt(y1, y0, (pz1 - 0.4)/(pz1 - pz0)), + convex_pt(z1, z0, (pz1 - 0.4)/(pz1 - pz0)), + &px0, &py0, &pz0); + project_to_camera( + convex_pt(x1, x2, (pz1 - 0.4)/(pz1 - pz2)), + convex_pt(y1, y2, (pz1 - 0.4)/(pz1 - pz2)), + convex_pt(z1, z2, (pz1 - 0.4)/(pz1 - pz2)), + &px2, &py2, &pz2); + } else if(pz2 >= 0.4) { + project_to_camera( + convex_pt(x2, x0, (pz2 - 0.4)/(pz2 - pz0)), + convex_pt(y2, y0, (pz2 - 0.4)/(pz2 - pz0)), + convex_pt(z2, z0, (pz2 - 0.4)/(pz2 - pz0)), + &px0, &py0, &pz0); + project_to_camera( + convex_pt(x2, x1, (pz2 - 0.4)/(pz2 - pz1)), + convex_pt(y2, y1, (pz2 - 0.4)/(pz2 - pz1)), + convex_pt(z2, z1, (pz2 - 0.4)/(pz2 - pz1)), + &px1, &py1, &pz1); + } + const SDL_Vertex vtxs[3] = { + construct_vertex(1500.0 * (1.0 + (px0 / (1.5 * pz0 * tan_fov))) / 2.0, 1000.0 * (1.0 + (py0 / (pz0 * tan_fov))) / 2.0, red, green, blue), + construct_vertex(1500.0 * (1.0 + (px1 / (1.5 * pz1 * tan_fov))) / 2.0, 1000.0 * (1.0 + (py1 / (pz1 * tan_fov))) / 2.0, red, green, blue), + construct_vertex(1500.0 * (1.0 + (px2 / (1.5 * pz2 * tan_fov))) / 2.0, 1000.0 * (1.0 + (py2 / (pz2 * tan_fov))) / 2.0, red, green, blue), + }; + SDL_RenderGeometry(renderer, NULL, vtxs, 3, NULL, 0); + } } void renderTriangleRotated( diff --git a/src/generation.c b/src/generation.c index df21cb3..3821e93 100644 --- a/src/generation.c +++ b/src/generation.c @@ -39,9 +39,9 @@ void build_chunk_1(int chx, int chy) { new->map[5] = create_cube_0(4.0, 1.0, 4.0, 1.0, 5.0, 1.0, 0.0, 0.0, 255, 255, 128); new->tps[0] = create_teleporter(-1.0, 1.0, 2.0, 1.0, 2.0 + (double)(rand()%2), 1.0, 3.14159/4.0, 0.0, 255, 0, 0 , chx-1, chy , 2.5, 2.5, 2.5); - new->tps[1] = create_teleporter(2.0, 1.0, -1.0, 1.0, 2.0 + (double)(rand()%2), 1.0, 3.14159/4.0, 0.0, 255, 255, 0, chx , chy+1, 2.5, 2.5, 2.5); + new->tps[1] = create_teleporter(2.0, 1.0, -1.0, 1.0, 2.0 + (double)(rand()%2), 1.0, 3.14159/4.0, 0.0, 255, 255, 0, chx , chy-1, 2.5, 2.5, 2.5); new->tps[2] = create_teleporter(5.0, 1.0, 2.0, 1.0, 2.0 + (double)(rand()%2), 1.0, 3.14159/4.0, 0.0, 0, 255, 0 , chx+1, chy , 2.5, 2.5, 2.5); - new->tps[3] = create_teleporter(2.0, 1.0, 5.0, 1.0, 2.0 + (double)(rand()%2), 1.0, 3.14159/4.0, 0.0, 0, 0, 255 , chx , chy-1, 2.5, 2.5, 2.5); + new->tps[3] = create_teleporter(2.0, 1.0, 5.0, 1.0, 2.0 + (double)(rand()%2), 1.0, 3.14159/4.0, 0.0, 0, 0, 255 , chx , chy+1, 2.5, 2.5, 2.5); //printf("linked (%d, %d) to :\n", chx, chy); //printf(" {%d, %d}; {%d, %d}; {%d, %d}; {%d, %d}\n", chx-1, chy, chx, chy+1, chx+1, chy, chx, chy-1);