diff --git a/projects/VSCode_tcc_win/.vscode/c_cpp_properties.json b/projects/VSCode_tcc_win/.vscode/c_cpp_properties.json new file mode 100644 index 00000000..018e953a --- /dev/null +++ b/projects/VSCode_tcc_win/.vscode/c_cpp_properties.json @@ -0,0 +1,24 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "C:/raylib/raylib/src/**", + "C:/raylib/tcc/**", + "${workspaceFolder}/**" + ], + "defines": [ + "_DEBUG", + "UNICODE", + "_UNICODE", + "GRAPHICS_API_OPENGL_33", + "PLATFORM_DESKTOP" + ], + "compilerPath": "C:/raylib/tcc/tcc.exe", + "cStandard": "c99", + "cppStandard": "c++14", + "intelliSenseMode": "gcc-x64" + } + ], + "version": 4 +} diff --git a/projects/VSCode_tcc_win/.vscode/settings.json b/projects/VSCode_tcc_win/.vscode/settings.json new file mode 100644 index 00000000..ca02a5af --- /dev/null +++ b/projects/VSCode_tcc_win/.vscode/settings.json @@ -0,0 +1,10 @@ +{ + "files.exclude": { + "**/.git": true, + "**/.svn": true, + "**/.hg": true, + "**/CVS": true, + "**/.DS_Store": true, + "**/*.o": true + } +} \ No newline at end of file diff --git a/projects/VSCode_tcc_win/.vscode/tasks.json b/projects/VSCode_tcc_win/.vscode/tasks.json new file mode 100644 index 00000000..4c68dd4b --- /dev/null +++ b/projects/VSCode_tcc_win/.vscode/tasks.json @@ -0,0 +1,34 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=733558 + // for the documentation about the tasks.json format + "version": "2.0.0", + "windows": { + "options": { + "shell": { + "executable": "C:\\windows\\System32\\cmd.exe", + "args": [ + "/d", "/c" + ] + } + } + }, + "tasks": [ + { + "label": "build & run", + "type": "shell", + "command": "tcc.exe ${workspaceFolder}\\${fileBasename} -o ${workspaceFolder}\\${fileBasenameNoExtension}.exe -std=c99 -Wall -lmsvcrt -lraylib -lopengl32 -lgdi32 -lkernel32 -lshell32 -luser32 -lwinmm -Wl,-subsystem=gui && ${fileBasenameNoExtension}.exe", + "options": { + "env":{ + "PATH" : "C:\\raylib\\tcc\\;%PATH%" + } + }, + "group": { + "kind": "build", + "isDefault": true + }, + "problemMatcher": [ + "$gcc" + ] + } + ] +} \ No newline at end of file diff --git a/projects/VSCode_tcc_win/main.c b/projects/VSCode_tcc_win/main.c new file mode 100644 index 00000000..9c039217 --- /dev/null +++ b/projects/VSCode_tcc_win/main.c @@ -0,0 +1,84 @@ +/******************************************************************************************* +* +* raylib [core] example - Basic 3d example +* +* Welcome to raylib! +* +* To compile example, just press F5. +* Note that compiled executable is placed in the same folder as .c file +* +* You can find all basic examples on C:\raylib\raylib\examples folder or +* raylib official webpage: www.raylib.com +* +* Enjoy using raylib. :) +* +* This example has been created using raylib 1.0 (www.raylib.com) +* raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) +* +* Copyright (c) 2013-2020 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +int main() +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib"); + + Camera camera = { 0 }; + + camera.position = (Vector3){ 10.0f, 10.0f, 8.0f }; + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; + camera.fovy = 60.0f; + camera.type = CAMERA_PERSPECTIVE; + + SetCameraMode(camera, CAMERA_ORBITAL); + + Vector3 cubePosition = { 0.0f }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawCube(cubePosition, 2.0f, 2.0f, 2.0f, RED); + DrawCubeWires(cubePosition, 2.0f, 2.0f, 2.0f, MAROON); + DrawGrid(10, 1.0f); + + EndMode3D(); + + DrawText("This is a raylib example", 10, 40, 20, DARKGRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/projects/VSCode_tcc_win/main.code-workspace b/projects/VSCode_tcc_win/main.code-workspace new file mode 100644 index 00000000..267248e6 --- /dev/null +++ b/projects/VSCode_tcc_win/main.code-workspace @@ -0,0 +1,16 @@ +{ + "folders": [ + { + "path": "." + } + ], + "settings": { + "files.associations": { + "raylib.h": "c", + "math.h": "c", + "blocks.h": "c", + "stdio.h": "c", + "*.m": "c" + } + } +} \ No newline at end of file