From 4c27acc5695b7377a3d5025864c1c51daef3bc42 Mon Sep 17 00:00:00 2001 From: Top1055 <123alexfeetham@gmail.com> Date: Tue, 23 Dec 2025 19:47:08 +0000 Subject: [PATCH] initial commit --- .gitignore | 1 + Makefile | 7 +++++++ main.cpp | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 54 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 main.cpp diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ae04b3c --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +./out diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..f3c0a6b --- /dev/null +++ b/Makefile @@ -0,0 +1,7 @@ +burger-game: main.cpp + mkdir -p ./out + g++ main.cpp -o ./out/burger-game -lraylib -lm + ./out/burger-game + +clean: + rm -rf ./out diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..34ab53e --- /dev/null +++ b/main.cpp @@ -0,0 +1,46 @@ +#include "raylib.h" +#include + +int main() { + InitWindow(1920, 1080, "My First 3D Cube"); + + Camera3D camera = {0}; + camera.position = (Vector3){10.0f, 10.0f, 10.0f}; + camera.target = (Vector3){0.0f, 0.0f, 0.0f}; + camera.up = (Vector3){0.0f, 2.0f, 0.0f}; + camera.fovy = 45.0f; + //camera.projection = CAMERA_ORTHOGRAPHIC; + camera.projection = CAMERA_PERSPECTIVE; + + float cam_angle = 0.0f; + float cube_angle = 0.0f; + float cam_distance = 10.0f; + float cube_distance = 10.0f; + + while (!WindowShouldClose()) { + + cam_angle += 0.000f; + cube_angle -= 0.00001f; + Vector3 cube_rotation{cube_distance * sinf(cube_angle), 0.0f, cube_distance * cosf( cube_angle)}; + + camera.position.x = cube_rotation.x + (cam_distance * sinf(cam_angle)); + camera.position.z = cube_rotation.z + (cam_distance * cosf(cam_angle)); + + camera.target.x = cube_rotation.x; + camera.target.z = cube_rotation.z; + + + BeginDrawing(); + ClearBackground(BLACK); + + BeginMode3D(camera); + DrawCube(cube_rotation, 2.0f, 2.0f, 2.0f, RED); + DrawGrid(10, 1.0f); + EndMode3D(); + + EndDrawing(); + } + + CloseWindow(); + return 0; +}