From f6e89e616881d3b7725aeffa544fa6d6634f566a Mon Sep 17 00:00:00 2001 From: Ben Visness Date: Sat, 1 Jul 2023 12:02:41 -0500 Subject: [PATCH] Implement basic breakout --- samples/pong/data/underwater.jpg | Bin 0 -> 153040 bytes samples/pong/src/main.c | 444 +++++++++++++++++++++---------- 2 files changed, 299 insertions(+), 145 deletions(-) create mode 100644 samples/pong/data/underwater.jpg diff --git a/samples/pong/data/underwater.jpg b/samples/pong/data/underwater.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8a036305234f51acd7923942b039705c2aea316c GIT binary patch literal 153040 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
    TC;J>D7Th*t26uO}Dxv8$i#kET>B{_~_E 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%0A*R-N>`G|F$DAYL>IA8nKsqL+ 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 #include #include -#define M_PI 3.14159265358979323846 +#define NUM_BLOCKS_PER_ROW 7 +#define NUM_BLOCKS 42 // 7 * 6 + +#define BLOCKS_WIDTH 810.0f +#define BLOCK_HEIGHT 30.0f +#define BLOCKS_PADDING 15.0f +#define BLOCKS_BOTTOM 300.0f +const f32 BLOCK_WIDTH = (BLOCKS_WIDTH - ((NUM_BLOCKS_PER_ROW + 1) * BLOCKS_PADDING)) / NUM_BLOCKS_PER_ROW; const mg_color paddleColor = {1, 0, 0, 1}; -mp_rect paddle = {200, 40, 200, 40}; +mp_rect paddle = {BLOCKS_WIDTH/2 - 100, 40, 200, 40}; const mg_color ballColor = {1, 1, 0, 1}; -mp_rect ball = {200, 200, 60, 60}; +mp_rect ball = {200, 200, 20, 20}; -vec2 velocity = {10, 10}; +vec2 velocity = {5, 5}; + +int blockHealth[NUM_BLOCKS]; vec2 frameSize = {100, 100}; bool leftDown = false; bool rightDown = false; -mg_canvas canvas; mg_surface surface; +mg_canvas canvas; +mg_image waterImage; mg_image ballImage; mg_image paddleImage; mg_font pongFont; +// TODO(ben): Why is this here? Why isn't it forward-declared by some header? mg_surface mg_surface_main(void); +mp_rect blockRect(int i); +int checkCollision(mp_rect block); + +str8 loadFile(mem_arena* arena, str8 filename) { + file_handle file = file_open(filename, FILE_ACCESS_READ, 0); + if(file_last_error(file) != IO_OK) + { + log_error("Couldn't open file %s\n", str8_to_cstring(mem_scratch(), filename)); + } + u64 size = file_size(file); + char* buffer = mem_arena_alloc(arena, size); + file_read(file, size, buffer); + file_close(file); + return str8_from_buffer(size, buffer); +} + ORCA_EXPORT void OnInit(void) { - //TODO create surface for main window - surface = mg_surface_main(); - canvas = mg_canvas_create(); + surface = mg_surface_main(); + canvas = mg_canvas_create(); - log_info("try allocating\n"); + waterImage = mg_image_create_from_data(surface, loadFile(mem_scratch(), STR8("/underwater.jpg")), false); + ballImage = mg_image_create_from_data(surface, loadFile(mem_scratch(), STR8("/ball.png")), false); + paddleImage = mg_image_create_from_data(surface, loadFile(mem_scratch(), STR8("/wall.png")), false); - char* foo = malloc(1024); - free(foo); + str8 fontStr = loadFile(mem_scratch(), STR8("/Literata-SemiBoldItalic.ttf")); + unicode_range ranges[5] = {UNICODE_RANGE_BASIC_LATIN, + UNICODE_RANGE_C1_CONTROLS_AND_LATIN_1_SUPPLEMENT, + UNICODE_RANGE_LATIN_EXTENDED_A, + UNICODE_RANGE_LATIN_EXTENDED_B, + UNICODE_RANGE_SPECIALS}; + // NOTE(ben): Weird that images are "create from data" but fonts are "create from memory" + // TODO: Decide whether we're using strings or explicit pointer + length + pongFont = mg_font_create_from_memory(fontStr.len, (byte*)fontStr.ptr, 5, ranges); - log_info("allocated and freed 1024 bytes\n"); + for (int i = 0; i < NUM_BLOCKS; i++) { + blockHealth[i] = 2; + } - //NOTE: load ball texture - { - file_handle file = file_open(STR8("/ball.png"), FILE_ACCESS_READ, 0); - if(file_last_error(file) != IO_OK) - { - log_error("Couldn't open file ball.png\n"); - } - u64 size = file_size(file); - char* buffer = mem_arena_alloc(mem_scratch(), size); - file_read(file, size, buffer); - file_close(file); - ballImage = mg_image_create_from_data(surface, str8_from_buffer(size, buffer), false); - } - - //NOTE: load paddle texture - { - file_handle file = file_open(STR8("/wall.png"), FILE_ACCESS_READ, 0); - if(file_last_error(file) != IO_OK) - { - log_error("Couldn't open file wall.png\n"); - } - u64 size = file_size(file); - char* buffer = mem_arena_alloc(mem_scratch(), size); - file_read(file, size, buffer); - file_close(file); - paddleImage = mg_image_create_from_data(surface, str8_from_buffer(size, buffer), false); - } - - //NOTE: load paddle texture - { - file_handle file = file_open(STR8("/Literata-SemiBoldItalic.ttf"), FILE_ACCESS_READ, 0); - if(file_last_error(file) != IO_OK) - { - log_error("Couldn't open file Literata-SemiBoldItalic.ttf\n"); - } - u64 size = file_size(file); - char* buffer = mem_arena_alloc(mem_scratch(), size); - file_read(file, size, buffer); - file_close(file); - unicode_range ranges[5] = {UNICODE_RANGE_BASIC_LATIN, - UNICODE_RANGE_C1_CONTROLS_AND_LATIN_1_SUPPLEMENT, - UNICODE_RANGE_LATIN_EXTENDED_A, - UNICODE_RANGE_LATIN_EXTENDED_B, - UNICODE_RANGE_SPECIALS}; - // NOTE(ben): Weird that images are "create from data" but fonts are "create from memory" - // TODO: Decide whether we're using strings or explicit pointer + length - pongFont = mg_font_create_from_memory(size, (byte*)buffer, 5, ranges); - } - - mem_arena_clear(mem_scratch()); + mem_arena_clear(mem_scratch()); } ORCA_EXPORT void OnFrameResize(u32 width, u32 height) { - log_info("frame resize %u, %u", width, height); - frameSize.x = width; - frameSize.y = height; + log_info("frame resize %u, %u", width, height); + frameSize.x = width; + frameSize.y = height; } ORCA_EXPORT void OnMouseDown(int button) { - log_info("mouse down!"); + log_info("mouse down!"); } ORCA_EXPORT void OnKeyDown(int key) { - if(key == KEY_SPACE) - { - log_error("(this is just for testing errors)"); - return; - } - if(key == KEY_ENTER) - { - log_warning("(this is just for testing warning)"); - return; - } + if(key == KEY_SPACE) + { + log_error("(this is just for testing errors)"); + return; + } + if(key == KEY_ENTER) + { + log_warning("(this is just for testing warning)"); + return; + } - log_info("key down: %i", key); - if(key == KEY_LEFT) - { - leftDown = true; - } - if(key == KEY_RIGHT) - { - rightDown = true; - } + log_info("key down: %i", key); + if(key == KEY_LEFT) + { + leftDown = true; + } + if(key == KEY_RIGHT) + { + rightDown = true; + } } ORCA_EXPORT void OnKeyUp(int key) { - if(key == KEY_ENTER || key == KEY_SPACE) - { - return; - } + if(key == KEY_ENTER || key == KEY_SPACE) + { + return; + } - log_info("key up: %i", key); - if(key == KEY_LEFT) - { - leftDown = false; - } - if(key == KEY_RIGHT) - { - rightDown = false; - } + log_info("key up: %i", key); + if(key == KEY_LEFT) + { + leftDown = false; + } + if(key == KEY_RIGHT) + { + rightDown = false; + } } ORCA_EXPORT void OnFrameRefresh(void) { - f32 aspect = frameSize.x/frameSize.y; + f32 aspect = frameSize.x/frameSize.y; if(leftDown) { - paddle.x -= 10; + paddle.x -= 10; } else if(rightDown) { - paddle.x += 10; + paddle.x += 10; } paddle.x = Clamp(paddle.x, 0, frameSize.x - paddle.w); @@ -175,15 +154,15 @@ ORCA_EXPORT void OnFrameRefresh(void) if(ball.x + ball.w >= frameSize.x) { - velocity.x = -10; + velocity.x = -velocity.x; } if(ball.x <= 0) { - velocity.x = +10; + velocity.x = -velocity.x; } if(ball.y + ball.h >= frameSize.y) { - velocity.y = -10; + velocity.y = -velocity.y; } if(ball.y <= paddle.y + paddle.h @@ -191,55 +170,230 @@ ORCA_EXPORT void OnFrameRefresh(void) && ball.x <= paddle.x + paddle.w && velocity.y < 0) { - velocity.y *= -1; - ball.y = paddle.y + paddle.h; + velocity.y *= -1; + ball.y = paddle.y + paddle.h; - log_info("PONG!"); + log_info("PONG!"); } if(ball.y <= 0) { - ball.x = frameSize.x/2. - ball.w; - ball.y = frameSize.y/2. - ball.h; - } + ball.x = frameSize.x/2. - ball.w; + ball.y = frameSize.y/2. - ball.h; + } - mg_canvas_set_current(canvas); + for (int i = 0; i < NUM_BLOCKS; i++) { + if (blockHealth[i] <= 0) { + continue; + } - mg_set_color_rgba(0, 1, 1, 1); - mg_clear(); + mp_rect r = blockRect(i); + int result = checkCollision(r); + if (result) { + log_info("Collision! direction=%d", result); + blockHealth[i] -= 1; - mg_mat2x3 transform = {1, 0, 0, - 0, -1, frameSize.y}; + f32 vx = velocity.x; + f32 vy = velocity.y; - mg_matrix_push(transform); + switch (result) { + case 1: + case 5: + velocity.y = -vy; + break; + case 3: + case 7: + velocity.x = -vx; + break; + case 2: + case 6: + velocity.x = -vy; + velocity.y = -vx; + break; + case 4: + case 8: + velocity.x = vy; + velocity.y = vx; + break; + } + } - mg_image_draw(paddleImage, paddle); - /* - mg_set_color(paddleColor); - mg_rectangle_fill(paddle.x, paddle.y, paddle.w, paddle.h); - */ + } - mg_image_draw(ballImage, ball); - /* - mg_set_color(ballColor); - mg_circle_fill(ball.x+ball.w/2, ball.y + ball.w/2, ball.w/2.); - */ + mg_canvas_set_current(canvas); + mg_set_color_rgba(10.0f/255.0f, 31.0f/255.0f, 72.0f/255.0f, 1); + mg_clear(); + + mg_mat2x3 transform = {1, 0, 0, + 0, -1, frameSize.y}; + + mg_matrix_push(transform); + { + mg_set_color_rgba(0.9, 0.9, 0.9, 1); + for (int i = 0; i < NUM_BLOCKS; i++) { + if (blockHealth[i] <= 0) { + continue; + } + + mp_rect r = blockRect(i); + mg_rectangle_fill(r.x, r.y, r.w, r.h); + } + + mg_image_draw(paddleImage, paddle); + mg_image_draw(ballImage, ball); + } mg_matrix_pop(); - mg_set_color_rgba(0, 0, 0, 1); - mg_set_font(pongFont); - mg_set_font_size(14); - mg_move_to(10, 20); + mg_set_color_rgba(0, 0, 0, 1); + mg_set_font(pongFont); + mg_set_font_size(14); + mg_move_to(10, 20); - str8 text = str8_pushf(mem_scratch(), - "wahoo I'm did a text. ball is at x = %f, y = %f", - ball.x, ball.y - ); - mg_text_outlines(text); - mg_fill(); + str8 text = str8_pushf(mem_scratch(), + "wahoo I'm did a text. ball is at x = %f, y = %f", + ball.x, ball.y + ); + mg_text_outlines(text); + mg_fill(); mg_surface_prepare(surface); mg_render(surface, canvas); mg_surface_present(surface); } + +mp_rect blockRect(int i) { + int row = i / NUM_BLOCKS_PER_ROW; + int col = i % NUM_BLOCKS_PER_ROW; + return (mp_rect){ + BLOCKS_PADDING + (BLOCKS_PADDING + BLOCK_WIDTH) * col, + BLOCKS_BOTTOM + (BLOCKS_PADDING + BLOCK_HEIGHT) * row, + BLOCK_WIDTH, + BLOCK_HEIGHT + }; +} + +// Returns a cardinal direction 1-8 for the collision with the block, or zero +// if no collision. 1 is straight up and directions proceed clockwise. +int checkCollision(mp_rect block) { + // Note that all the logic for this game has the origin in the bottom left. + + f32 ballx2 = ball.x + ball.w; + f32 bally2 = ball.y + ball.h; + f32 blockx2 = block.x + block.w; + f32 blocky2 = block.y + block.h; + + if ( + ballx2 < block.x + || blockx2 < ball.x + || bally2 < block.y + || blocky2 < ball.y + ) { + // Ball is fully outside block + return 0; + } + + // if ( + // (block.x <= ball.x && ballx2 <= blockx2) + // && (block.y <= ball.y && bally2 <= blocky2) + // ) { + // // Ball is fully inside block; do not consider as a collision + // return 0; + // } + + // If moving right, the ball can bounce off its top right corner, right + // side, or bottom right corner. Corner bounces occur if the block's bottom + // left corner is in the ball's top right quadrant, or if the block's top + // left corner is in the ball's bottom left quadrant. Otherwise, an edge + // bounce occurs if the block's left edge falls in either of the ball's + // right quadrants. + // + // This logic generalizes to other directions. + // + // We assume significant tunneling can't happen. + + vec2 ballCenter = (vec2){ball.x + ball.w/2, ball.y + ball.h/2}; + vec2 blockCenter = (vec2){block.x + block.w/2, block.y + block.h/2}; + + // Moving right + if (velocity.x > 0) { + // Ball's top right corner + if ( + ballCenter.x <= block.x && block.x <= ballx2 + && ballCenter.y <= block.y && block.y <= bally2 + ) { return 2; } + + // Ball's bottom right corner + if ( + ballCenter.x <= block.x && block.x <= ballx2 + && ball.y <= blocky2 && blocky2 <= ballCenter.y + ) { return 4; } + + // Ball's right edge + if ( + ballCenter.x <= block.x && block.x <= ballx2 + ) { return 3; } + } + + // Moving up + if (velocity.y > 0) { + // Ball's top left corner + if ( + ball.x <= blockx2 && blockx2 <= ballCenter.x + && ballCenter.y <= block.y && block.y <= bally2 + ) { return 8; } + + // Ball's top right corner + if ( + ballCenter.x <= block.x && block.x <= ballx2 + && ballCenter.y <= block.y && block.y <= bally2 + ) { return 2; } + + // Ball's top edge + if ( + ballCenter.y <= block.y && block.y <= bally2 + ) { return 1; } + } + + // Moving left + if (velocity.x < 0) { + // Ball's bottom left corner + if ( + ball.x <= blockx2 && blockx2 <= ballCenter.x + && ball.y <= blocky2 && blocky2 <= ballCenter.y + ) { return 6; } + + // Ball's top left corner + if ( + ball.x <= blockx2 && blockx2 <= ballCenter.x + && ballCenter.y <= block.y && block.y <= bally2 + ) { return 8; } + + // Ball's left edge + if ( + ball.x <= blockx2 && blockx2 <= ballCenter.x + ) { return 7; } + } + + // Moving down + if (velocity.y < 0) { + // Ball's bottom right corner + if ( + ballCenter.x <= block.x && block.x <= ballx2 + && ball.y <= blocky2 && blocky2 <= ballCenter.y + ) { return 4; } + + // Ball's bottom left corner + if ( + ball.x <= blockx2 && blockx2 <= ballCenter.x + && ball.y <= blocky2 && blocky2 <= ballCenter.y + ) { return 6; } + + // Ball's bottom edge + if ( + ball.y <= blocky2 && blocky2 <= ballCenter.y + ) { return 5; } + } + + return 0; +}