summaryrefslogtreecommitdiffhomepage
path: root/projects
diff options
context:
space:
mode:
authorpah arif <[email protected]>2020-04-11 17:23:00 +0800
committerGitHub <[email protected]>2020-04-11 11:23:00 +0200
commit17ee57c458b9cf16ece2bf99c30be4c34a336642 (patch)
tree8ddc973788d7c39e4ed55ec31b577a982d7d81c8 /projects
parentcc816345bf24c8da911e080589b5653a52b8404e (diff)
downloadraylib-17ee57c458b9cf16ece2bf99c30be4c34a336642.tar.gz
raylib-17ee57c458b9cf16ece2bf99c30be4c34a336642.zip
tcc-based vscode project for windows (#1191)
Signed-off-by: misterpah <[email protected]>
Diffstat (limited to 'projects')
-rw-r--r--projects/VSCode_tcc_win/.vscode/c_cpp_properties.json24
-rw-r--r--projects/VSCode_tcc_win/.vscode/settings.json10
-rw-r--r--projects/VSCode_tcc_win/.vscode/tasks.json34
-rw-r--r--projects/VSCode_tcc_win/main.c84
-rw-r--r--projects/VSCode_tcc_win/main.code-workspace16
5 files changed, 168 insertions, 0 deletions
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