refactor: restructure the project

This commit is contained in:
2026-04-11 18:33:11 +02:00
parent 53649df179
commit d871db2b2f
52 changed files with 25 additions and 41 deletions

2
languages/c/Makefile Normal file
View File

@@ -0,0 +1,2 @@
raylib_c: main.c
gcc main.c -Wall -Wextra -Werror -pedantic -o raylib_c -I../raylib-5.5_linux_amd64/include -L../raylib-5.5_linux_amd64/lib -l:libraylib.a -lm

8
languages/c/README.md Normal file
View File

@@ -0,0 +1,8 @@
# Raylib in C
## Quick start
```sh
$ make
$ ./raylib_c
```

BIN
languages/c/c_logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

57
languages/c/main.c Normal file
View File

@@ -0,0 +1,57 @@
#include <stdio.h>
#include <time.h>
#include <raylib.h>
#define WINDOW_WIDTH 800
#define WINDOW_HEIGHT 600
#define LOGO_HEIGHT 64
#define LOGO_SPEED 300
int main()
{
InitWindow(WINDOW_WIDTH, WINDOW_HEIGHT, "Raylib in C");
SetTargetFPS(60);
SetRandomSeed(time(NULL));
Image logo_image = LoadImage("./c_logo.png");
ImageResize(&logo_image, logo_image.width * LOGO_HEIGHT / logo_image.height, LOGO_HEIGHT);
Texture2D logo_texture = LoadTextureFromImage(logo_image);
UnloadImage(logo_image);
float x = GetRandomValue(0, WINDOW_WIDTH - logo_texture.width);
float y = GetRandomValue(0, WINDOW_HEIGHT - logo_texture.height);
float dx = LOGO_SPEED * (GetRandomValue(0, 1) ? -1 : 1);
float dy = LOGO_SPEED * (GetRandomValue(0, 1) ? -1 : 1);
while (!WindowShouldClose())
{
float delta_time = GetFrameTime();
x += dx * delta_time;
y += dy * delta_time;
if (x < 0 || (x + logo_texture.width) >= WINDOW_WIDTH - 1)
{
dx *= -1;
x += dx * delta_time;
}
if (y < 0 || (y + logo_texture.height) >= WINDOW_HEIGHT - 1)
{
dy *= -1;
y += dy * delta_time;
}
BeginDrawing();
ClearBackground(BLACK);
DrawTextureV(logo_texture, (Vector2){x, y}, WHITE);
EndDrawing();
}
UnloadTexture(logo_texture);
CloseWindow();
return 0;
}