From 135b7e40b70081c8154696edb8308926de496c72 Mon Sep 17 00:00:00 2001 From: oltir06 Date: Fri, 20 Feb 2026 22:29:14 +0100 Subject: [PATCH 1/5] #7: Add VS Code IntelliSense build and debug setup --- .gitignore | 8 +++-- .vscode/c_cpp_properties.json | 67 +++++++++++++++++++++++++++++++++++ .vscode/extensions.json | 6 ++++ .vscode/launch.json | 32 +++++++++++++++++ .vscode/tasks.json | 32 +++++++++++++++++ scripts/build.bat | 27 ++++++++++++++ scripts/build.sh | 24 +++++++++++++ 7 files changed, 194 insertions(+), 2 deletions(-) create mode 100644 .vscode/c_cpp_properties.json create mode 100644 .vscode/extensions.json create mode 100644 .vscode/launch.json create mode 100644 .vscode/tasks.json create mode 100644 scripts/build.bat create mode 100644 scripts/build.sh diff --git a/.gitignore b/.gitignore index f4ec456..e2ae3dd 100644 --- a/.gitignore +++ b/.gitignore @@ -30,7 +30,11 @@ resource_debug_output.txt *.dylib # IDE-specific files -.vscode/ +.vscode/* +!.vscode/c_cpp_properties.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json .idea/ *.sdf *.suo @@ -47,4 +51,4 @@ resource_debug_output.txt # OS files .DS_Store -Thumbs.db \ No newline at end of file +Thumbs.db diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json new file mode 100644 index 0000000..88dbfdf --- /dev/null +++ b/.vscode/c_cpp_properties.json @@ -0,0 +1,67 @@ +{ + "version": 4, + "configurations": [ + { + "name": "Win32", + "intelliSenseMode": "windows-msvc-x64", + "compilerPath": "cl.exe", + "cStandard": "c17", + "cppStandard": "c++17", + "compileCommands": "${workspaceFolder}/build/compile_commands.json", + "includePath": [ + "${workspaceFolder}/src/**", + "${workspaceFolder}/Engine/**", + "${workspaceFolder}/Editor/**", + "${workspaceFolder}/Math/**", + "${workspaceFolder}/Utils/**", + "${workspaceFolder}/Vendor/**", + "${workspaceFolder}/build/_deps/**/include", + "${workspaceFolder}/build/_deps/imgui-src", + "${workspaceFolder}/build/_deps/imgui-src/backends" + ], + "browse": { + "path": [ + "${workspaceFolder}/src", + "${workspaceFolder}/Engine", + "${workspaceFolder}/Editor", + "${workspaceFolder}/Math", + "${workspaceFolder}/Utils", + "${workspaceFolder}/Vendor" + ], + "limitSymbolsToIncludedHeaders": true + }, + "configurationProvider": "ms-vscode.cmake-tools" + }, + { + "name": "Linux", + "intelliSenseMode": "linux-gcc-x64", + "compilerPath": "/usr/bin/clang++", + "cStandard": "c17", + "cppStandard": "c++17", + "compileCommands": "${workspaceFolder}/build/compile_commands.json", + "includePath": [ + "${workspaceFolder}/src/**", + "${workspaceFolder}/Engine/**", + "${workspaceFolder}/Editor/**", + "${workspaceFolder}/Math/**", + "${workspaceFolder}/Utils/**", + "${workspaceFolder}/Vendor/**", + "${workspaceFolder}/build/_deps/**/include", + "${workspaceFolder}/build/_deps/imgui-src", + "${workspaceFolder}/build/_deps/imgui-src/backends" + ], + "browse": { + "path": [ + "${workspaceFolder}/src", + "${workspaceFolder}/Engine", + "${workspaceFolder}/Editor", + "${workspaceFolder}/Math", + "${workspaceFolder}/Utils", + "${workspaceFolder}/Vendor" + ], + "limitSymbolsToIncludedHeaders": true + }, + "configurationProvider": "ms-vscode.cmake-tools" + } + ] +} diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..9710b19 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,6 @@ +{ + "recommendations": [ + "ms-vscode.cpptools", + "ms-vscode.cmake-tools" + ] +} diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..10d370c --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,32 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "name": "Voltray (Windows Debug)", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/build/Debug/Voltray.exe", + "cwd": "${workspaceFolder}/build/Debug", + "preLaunchTask": "Build Voltray (Debug)", + "stopAtEntry": false, + "console": "integratedTerminal" + }, + { + "name": "Voltray (Linux/macOS Debug)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/Voltray", + "cwd": "${workspaceFolder}/build", + "preLaunchTask": "Build Voltray (Debug)", + "stopAtEntry": false, + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "MIMode": "gdb" + }, + "osx": { + "MIMode": "lldb" + } + } + ] +} diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..a7fc381 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,32 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "Build Voltray (Debug)", + "type": "shell", + "command": "bash", + "args": [ + "${workspaceFolder}/scripts/build.sh", + "Debug" + ], + "windows": { + "command": "cmd", + "args": [ + "/c", + "${workspaceFolder}\\scripts\\build.bat", + "Debug" + ] + }, + "problemMatcher": [], + "group": { + "kind": "build", + "isDefault": true + }, + "presentation": { + "reveal": "always", + "panel": "shared", + "clear": true + } + } + ] +} diff --git a/scripts/build.bat b/scripts/build.bat new file mode 100644 index 0000000..4ebd267 --- /dev/null +++ b/scripts/build.bat @@ -0,0 +1,27 @@ +@echo off +setlocal + +set BUILD_TYPE=%~1 +if "%BUILD_TYPE%"=="" set BUILD_TYPE=Debug + +set SCRIPT_DIR=%~dp0 +for %%I in ("%SCRIPT_DIR%..") do set REPO_ROOT=%%~fI +set BUILD_DIR=%REPO_ROOT%\build +set GENERATOR=Visual Studio 17 2022 + +echo Configuring Voltray %BUILD_TYPE%... +cmake -S "%REPO_ROOT%" -B "%BUILD_DIR%" -G "%GENERATOR%" -A x64 -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DFETCHCONTENT_UPDATES_DISCONNECTED=ON +if errorlevel 1 ( + echo Failed to configure the project. + exit /b 1 +) + +echo Building Voltray %BUILD_TYPE%... +cmake --build "%BUILD_DIR%" --config %BUILD_TYPE% +if errorlevel 1 ( + echo Build failed. + exit /b 1 +) + +echo Build successful. +endlocal diff --git a/scripts/build.sh b/scripts/build.sh new file mode 100644 index 0000000..a2535e0 --- /dev/null +++ b/scripts/build.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +REPO_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)" +BUILD_TYPE="${1:-Debug}" +BUILD_DIR="${REPO_ROOT}/build" + +if command -v ninja >/dev/null 2>&1; then + GENERATOR="Ninja" +elif command -v make >/dev/null 2>&1; then + GENERATOR="Unix Makefiles" +else + echo "Neither Ninja nor Make was found. Install one of them first." + exit 1 +fi + +echo "Configuring Voltray (${BUILD_TYPE})..." +cmake -S "${REPO_ROOT}" -B "${BUILD_DIR}" -G "${GENERATOR}" -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DFETCHCONTENT_UPDATES_DISCONNECTED=ON + +echo "Building Voltray (${BUILD_TYPE})..." +cmake --build "${BUILD_DIR}" --config "${BUILD_TYPE}" --parallel + +echo "Build successful." From a5ae385cc599396ef39ceb6fe1bdb9cbe403a309 Mon Sep 17 00:00:00 2001 From: oltir06 Date: Fri, 20 Feb 2026 22:36:57 +0100 Subject: [PATCH 2/5] #7: Stabilize script builds with cached FetchContent deps --- scripts/build.bat | 11 ++++++++++- scripts/build.sh | 7 ++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/scripts/build.bat b/scripts/build.bat index 4ebd267..0c1be0f 100644 --- a/scripts/build.bat +++ b/scripts/build.bat @@ -8,9 +8,18 @@ set SCRIPT_DIR=%~dp0 for %%I in ("%SCRIPT_DIR%..") do set REPO_ROOT=%%~fI set BUILD_DIR=%REPO_ROOT%\build set GENERATOR=Visual Studio 17 2022 +set FETCHCONTENT_FLAG=-DFETCHCONTENT_UPDATES_DISCONNECTED=ON + +if exist "%BUILD_DIR%\_deps\glfw-src" ( + if exist "%BUILD_DIR%\_deps\assimp-src" ( + if exist "%BUILD_DIR%\_deps\imgui-src" ( + set FETCHCONTENT_FLAG=-DFETCHCONTENT_FULLY_DISCONNECTED=ON + ) + ) +) echo Configuring Voltray %BUILD_TYPE%... -cmake -S "%REPO_ROOT%" -B "%BUILD_DIR%" -G "%GENERATOR%" -A x64 -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DFETCHCONTENT_UPDATES_DISCONNECTED=ON +cmake -S "%REPO_ROOT%" -B "%BUILD_DIR%" -G "%GENERATOR%" -A x64 -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DCMAKE_EXPORT_COMPILE_COMMANDS=ON %FETCHCONTENT_FLAG% if errorlevel 1 ( echo Failed to configure the project. exit /b 1 diff --git a/scripts/build.sh b/scripts/build.sh index a2535e0..aeee670 100644 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -5,6 +5,11 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" REPO_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)" BUILD_TYPE="${1:-Debug}" BUILD_DIR="${REPO_ROOT}/build" +FETCHCONTENT_FLAG="-DFETCHCONTENT_UPDATES_DISCONNECTED=ON" + +if [ -d "${BUILD_DIR}/_deps/glfw-src" ] && [ -d "${BUILD_DIR}/_deps/assimp-src" ] && [ -d "${BUILD_DIR}/_deps/imgui-src" ]; then + FETCHCONTENT_FLAG="-DFETCHCONTENT_FULLY_DISCONNECTED=ON" +fi if command -v ninja >/dev/null 2>&1; then GENERATOR="Ninja" @@ -16,7 +21,7 @@ else fi echo "Configuring Voltray (${BUILD_TYPE})..." -cmake -S "${REPO_ROOT}" -B "${BUILD_DIR}" -G "${GENERATOR}" -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DFETCHCONTENT_UPDATES_DISCONNECTED=ON +cmake -S "${REPO_ROOT}" -B "${BUILD_DIR}" -G "${GENERATOR}" -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" -DCMAKE_EXPORT_COMPILE_COMMANDS=ON "${FETCHCONTENT_FLAG}" echo "Building Voltray (${BUILD_TYPE})..." cmake --build "${BUILD_DIR}" --config "${BUILD_TYPE}" --parallel From ad4d3f3a186baade224aca3e1ac58ec35d97a682 Mon Sep 17 00:00:00 2001 From: oltir06 Date: Thu, 26 Feb 2026 21:09:40 +0100 Subject: [PATCH 3/5] #7: Fix VS Code intellisense paths and add CodeLLDB debug support --- .vscode/c_cpp_properties.json | 42 +++++++++++++++++------------------ .vscode/extensions.json | 6 +++-- .vscode/launch.json | 14 +++++++++--- README.md | 16 ++++++++++++- 4 files changed, 51 insertions(+), 27 deletions(-) diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json index 88dbfdf..b682d97 100644 --- a/.vscode/c_cpp_properties.json +++ b/.vscode/c_cpp_properties.json @@ -10,11 +10,11 @@ "compileCommands": "${workspaceFolder}/build/compile_commands.json", "includePath": [ "${workspaceFolder}/src/**", - "${workspaceFolder}/Engine/**", - "${workspaceFolder}/Editor/**", - "${workspaceFolder}/Math/**", - "${workspaceFolder}/Utils/**", - "${workspaceFolder}/Vendor/**", + "${workspaceFolder}/src/engine/**", + "${workspaceFolder}/src/editor/**", + "${workspaceFolder}/src/math/**", + "${workspaceFolder}/src/utils/**", + "${workspaceFolder}/vendor/**", "${workspaceFolder}/build/_deps/**/include", "${workspaceFolder}/build/_deps/imgui-src", "${workspaceFolder}/build/_deps/imgui-src/backends" @@ -22,11 +22,11 @@ "browse": { "path": [ "${workspaceFolder}/src", - "${workspaceFolder}/Engine", - "${workspaceFolder}/Editor", - "${workspaceFolder}/Math", - "${workspaceFolder}/Utils", - "${workspaceFolder}/Vendor" + "${workspaceFolder}/src/engine", + "${workspaceFolder}/src/editor", + "${workspaceFolder}/src/math", + "${workspaceFolder}/src/utils", + "${workspaceFolder}/vendor" ], "limitSymbolsToIncludedHeaders": true }, @@ -41,11 +41,11 @@ "compileCommands": "${workspaceFolder}/build/compile_commands.json", "includePath": [ "${workspaceFolder}/src/**", - "${workspaceFolder}/Engine/**", - "${workspaceFolder}/Editor/**", - "${workspaceFolder}/Math/**", - "${workspaceFolder}/Utils/**", - "${workspaceFolder}/Vendor/**", + "${workspaceFolder}/src/engine/**", + "${workspaceFolder}/src/editor/**", + "${workspaceFolder}/src/math/**", + "${workspaceFolder}/src/utils/**", + "${workspaceFolder}/vendor/**", "${workspaceFolder}/build/_deps/**/include", "${workspaceFolder}/build/_deps/imgui-src", "${workspaceFolder}/build/_deps/imgui-src/backends" @@ -53,15 +53,15 @@ "browse": { "path": [ "${workspaceFolder}/src", - "${workspaceFolder}/Engine", - "${workspaceFolder}/Editor", - "${workspaceFolder}/Math", - "${workspaceFolder}/Utils", - "${workspaceFolder}/Vendor" + "${workspaceFolder}/src/engine", + "${workspaceFolder}/src/editor", + "${workspaceFolder}/src/math", + "${workspaceFolder}/src/utils", + "${workspaceFolder}/vendor" ], "limitSymbolsToIncludedHeaders": true }, "configurationProvider": "ms-vscode.cmake-tools" } ] -} +} \ No newline at end of file diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 9710b19..bcf9b69 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,6 +1,8 @@ { "recommendations": [ + "ms-vscode.cmake-tools", "ms-vscode.cpptools", - "ms-vscode.cmake-tools" + "vadimcn.vscode-lldb", + "esbenp.prettier-vscode" ] -} +} \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json index 10d370c..118bfa6 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,8 +1,16 @@ { - "version": "0.2.0", + "version": "0.0.1", "configurations": [ { - "name": "Voltray (Windows Debug)", + "name": "Voltray (Windows CodeLLDB)", + "type": "lldb", + "request": "launch", + "program": "${workspaceFolder}/build/Debug/Voltray.exe", + "cwd": "${workspaceFolder}/build/Debug", + "preLaunchTask": "Build Voltray (Debug)" + }, + { + "name": "Voltray (Windows Debug MSVC)", "type": "cppvsdbg", "request": "launch", "program": "${workspaceFolder}/build/Debug/Voltray.exe", @@ -29,4 +37,4 @@ } } ] -} +} \ No newline at end of file diff --git a/README.md b/README.md index 771f34f..bda259e 100644 --- a/README.md +++ b/README.md @@ -26,10 +26,24 @@ Voltray is a comprehensive 3D graphics engine designed for learning, experimenta ## Getting Started ### Prerequisites -* **C++17 Compiler** (MSVC, GCC, Clang) +* **C++17 Compiler** + * **Windows**: MSVC (Install "Desktop development with C++" workload via Visual Studio Installer to get `cl.exe`) + * **Linux**: GCC or Clang (`sudo apt install build-essential clang`) + * **macOS**: Clang (via Xcode Command Line Tools) * **CMake 3.17+** * **Git** +### IDE Setup (VS Code and forks like Cursor) +To get full C++ IntelliSense and debugging working: +1. Install the recommended extensions: **C/C++** (`ms-vscode.cpptools`), **CMake Tools** (`ms-vscode.cmake-tools`), and **CodeLLDB** (`vadimcn.vscode-lldb`). +2. Open the project folder in your IDE. +3. When prompted by CMake Tools, select the appropriate compiler kit (e.g., `Visual Studio Community 2022 Release - amd64` on Windows, or `Clang` / `GCC` on Linux). +4. CMake Tools will automatically configure the project and generate the `compile_commands.json` needed for IntelliSense. + +**Debugging on Windows**: +* For **VS Code**, use the `"Voltray (Windows Debug MSVC)"` launch configuration. +* For **Cursor or Antigravity** (where Microsoft's `cppvsdbg` is unsupported), use the `"Voltray (Windows CodeLLDB)"` launch configuration instead. + ### Build Instructions **Windows**: From 9ac5bc691e02ca92ba7dd671cf3d90d2398e0bb8 Mon Sep 17 00:00:00 2001 From: oltir06 Date: Fri, 27 Feb 2026 20:44:15 +0100 Subject: [PATCH 4/5] #7 Rename folder & Update README --- README.md | 48 +++++++++++------- {Resources => resources}/Fonts/Inter.ttf | Bin {Resources => resources}/Fonts/Lato.ttf | Bin {Resources => resources}/Fonts/Sora.ttf | Bin {Resources => resources}/Models/Suzanne.obj | 0 {Resources => resources}/Models/pyramid.obj | 0 {Resources => resources}/Shaders/default.frag | 0 {Resources => resources}/Shaders/default.vert | 0 {Resources => resources}/Shaders/outline.frag | 0 {Resources => resources}/Shaders/outline.vert | 0 {Resources => resources}/Shaders/skybox.frag | 0 {Resources => resources}/Shaders/skybox.vert | 0 {Screenshots => screenshots}/Screenshot-1.png | Bin .../Voltray-Banner.png | Bin .../glad/include/KHR/khrplatform.h | 0 {Vendor => vendor}/glad/include/glad/gl.h | 0 {Vendor => vendor}/glad/src/gl.c | 0 17 files changed, 30 insertions(+), 18 deletions(-) rename {Resources => resources}/Fonts/Inter.ttf (100%) rename {Resources => resources}/Fonts/Lato.ttf (100%) rename {Resources => resources}/Fonts/Sora.ttf (100%) rename {Resources => resources}/Models/Suzanne.obj (100%) rename {Resources => resources}/Models/pyramid.obj (100%) rename {Resources => resources}/Shaders/default.frag (100%) rename {Resources => resources}/Shaders/default.vert (100%) rename {Resources => resources}/Shaders/outline.frag (100%) rename {Resources => resources}/Shaders/outline.vert (100%) rename {Resources => resources}/Shaders/skybox.frag (100%) rename {Resources => resources}/Shaders/skybox.vert (100%) rename {Screenshots => screenshots}/Screenshot-1.png (100%) rename {Screenshots => screenshots}/Voltray-Banner.png (100%) rename {Vendor => vendor}/glad/include/KHR/khrplatform.h (100%) rename {Vendor => vendor}/glad/include/glad/gl.h (100%) rename {Vendor => vendor}/glad/src/gl.c (100%) diff --git a/README.md b/README.md index bda259e..1ed9849 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # Voltray + A modern, cross-platform C++ real-time rendering engine with an integrated editor. ![Voltray Editor](screenshots/Screenshot-1.png) @@ -16,37 +17,44 @@ A modern, cross-platform C++ real-time rendering engine with an integrated edito --- ## About + Voltray is a comprehensive 3D graphics engine designed for learning, experimentation, and educational purposes. It features a clean architecture, extensible design, and professional-grade development practices. ## Features -* **Real-Time 3D Rendering**: OpenGL 4.6 pipeline -* **Integrated Editor**: ImGui-based workspace -* **Cross-Platform**: Windows, Linux, macOS Support + +- **Real-Time 3D Rendering**: OpenGL 4.6 pipeline +- **Integrated Editor**: ImGui-based workspace +- **Cross-Platform**: Windows, Linux, macOS Support ## Getting Started ### Prerequisites -* **C++17 Compiler** - * **Windows**: MSVC (Install "Desktop development with C++" workload via Visual Studio Installer to get `cl.exe`) - * **Linux**: GCC or Clang (`sudo apt install build-essential clang`) - * **macOS**: Clang (via Xcode Command Line Tools) -* **CMake 3.17+** -* **Git** + +- **C++17 Compiler** + - **Windows**: MSVC (Install "Desktop development with C++" workload via Visual Studio Installer to get `cl.exe`) + - **Linux**: GCC or Clang (`sudo apt install build-essential clang`) + - **macOS**: Clang (via Xcode Command Line Tools) +- **CMake 3.17+** +- **Git** ### IDE Setup (VS Code and forks like Cursor) + To get full C++ IntelliSense and debugging working: + 1. Install the recommended extensions: **C/C++** (`ms-vscode.cpptools`), **CMake Tools** (`ms-vscode.cmake-tools`), and **CodeLLDB** (`vadimcn.vscode-lldb`). 2. Open the project folder in your IDE. -3. When prompted by CMake Tools, select the appropriate compiler kit (e.g., `Visual Studio Community 2022 Release - amd64` on Windows, or `Clang` / `GCC` on Linux). -4. CMake Tools will automatically configure the project and generate the `compile_commands.json` needed for IntelliSense. +3. When prompted by CMake Tools, select the appropriate compiler kit (e.g., `Visual Studio Community 2022 Release - ...` on Windows, or `Clang` / `GCC` on Linux). +4. CMake Tools will automatically configure the project and generate the `compile_commands.json` needed for IntelliSense after build. **Debugging on Windows**: -* For **VS Code**, use the `"Voltray (Windows Debug MSVC)"` launch configuration. -* For **Cursor or Antigravity** (where Microsoft's `cppvsdbg` is unsupported), use the `"Voltray (Windows CodeLLDB)"` launch configuration instead. + +- For **VS Code**, use the `"Voltray (Windows Debug MSVC)"` launch configuration. +- For **Cursor or Antigravity** (where Microsoft's `cppvsdbg` is unsupported), use the `"Voltray (Windows CodeLLDB)"` launch configuration instead. ### Build Instructions **Windows**: + ```cmd git clone https://github.com/MomdAli/Voltray.git cd Voltray @@ -54,6 +62,7 @@ build.bat ``` **Linux/macOS**: + ```bash git clone https://github.com/MomdAli/Voltray.git cd Voltray @@ -64,16 +73,19 @@ chmod +x build.sh ## Usage ### Running the Editor + After building the project, navigate to the `build` directory (or `build\Release` on Windows) and run the `Voltray` executable. ### Basic Controls -* **Orbit Camera**: Middle Mouse Button + Drag -* **Pan Camera**: Shift + Middle Mouse Button + Drag -* **Zoom**: Mouse Wheel -* **Select Object**: Left Click on object in Viewport -* **Transform Object**: Use the **Inspector** panel to modify position, rotation, and scale. + +- **Orbit Camera**: Middle Mouse Button + Drag +- **Pan Camera**: Shift + Middle Mouse Button + Drag +- **Zoom**: Mouse Wheel +- **Select Object**: Left Click on object in Viewport +- **Transform Object**: Use the **Inspector** panel to modify position, rotation, and scale. ## License + This project is licensed under the **Apache License 2.0**. See the [LICENSE](LICENSE) file for details. --- diff --git a/Resources/Fonts/Inter.ttf b/resources/Fonts/Inter.ttf similarity index 100% rename from Resources/Fonts/Inter.ttf rename to resources/Fonts/Inter.ttf diff --git a/Resources/Fonts/Lato.ttf b/resources/Fonts/Lato.ttf similarity index 100% rename from Resources/Fonts/Lato.ttf rename to resources/Fonts/Lato.ttf diff --git a/Resources/Fonts/Sora.ttf b/resources/Fonts/Sora.ttf similarity index 100% rename from Resources/Fonts/Sora.ttf rename to resources/Fonts/Sora.ttf diff --git a/Resources/Models/Suzanne.obj b/resources/Models/Suzanne.obj similarity index 100% rename from Resources/Models/Suzanne.obj rename to resources/Models/Suzanne.obj diff --git a/Resources/Models/pyramid.obj b/resources/Models/pyramid.obj similarity index 100% rename from Resources/Models/pyramid.obj rename to resources/Models/pyramid.obj diff --git a/Resources/Shaders/default.frag b/resources/Shaders/default.frag similarity index 100% rename from Resources/Shaders/default.frag rename to resources/Shaders/default.frag diff --git a/Resources/Shaders/default.vert b/resources/Shaders/default.vert similarity index 100% rename from Resources/Shaders/default.vert rename to resources/Shaders/default.vert diff --git a/Resources/Shaders/outline.frag b/resources/Shaders/outline.frag similarity index 100% rename from Resources/Shaders/outline.frag rename to resources/Shaders/outline.frag diff --git a/Resources/Shaders/outline.vert b/resources/Shaders/outline.vert similarity index 100% rename from Resources/Shaders/outline.vert rename to resources/Shaders/outline.vert diff --git a/Resources/Shaders/skybox.frag b/resources/Shaders/skybox.frag similarity index 100% rename from Resources/Shaders/skybox.frag rename to resources/Shaders/skybox.frag diff --git a/Resources/Shaders/skybox.vert b/resources/Shaders/skybox.vert similarity index 100% rename from Resources/Shaders/skybox.vert rename to resources/Shaders/skybox.vert diff --git a/Screenshots/Screenshot-1.png b/screenshots/Screenshot-1.png similarity index 100% rename from Screenshots/Screenshot-1.png rename to screenshots/Screenshot-1.png diff --git a/Screenshots/Voltray-Banner.png b/screenshots/Voltray-Banner.png similarity index 100% rename from Screenshots/Voltray-Banner.png rename to screenshots/Voltray-Banner.png diff --git a/Vendor/glad/include/KHR/khrplatform.h b/vendor/glad/include/KHR/khrplatform.h similarity index 100% rename from Vendor/glad/include/KHR/khrplatform.h rename to vendor/glad/include/KHR/khrplatform.h diff --git a/Vendor/glad/include/glad/gl.h b/vendor/glad/include/glad/gl.h similarity index 100% rename from Vendor/glad/include/glad/gl.h rename to vendor/glad/include/glad/gl.h diff --git a/Vendor/glad/src/gl.c b/vendor/glad/src/gl.c similarity index 100% rename from Vendor/glad/src/gl.c rename to vendor/glad/src/gl.c From e65f160da040c4a2f26abe64c332e00d62bed41e Mon Sep 17 00:00:00 2001 From: oltir06 Date: Fri, 27 Feb 2026 20:45:48 +0100 Subject: [PATCH 5/5] #7 Rename sub directories from ressources, shaders, fonts to lowercase --- resources/{Fonts => fonts}/Inter.ttf | Bin resources/{Fonts => fonts}/Lato.ttf | Bin resources/{Fonts => fonts}/Sora.ttf | Bin resources/{Models => models}/Suzanne.obj | 0 resources/{Models => models}/pyramid.obj | 0 resources/{Shaders => shaders}/default.frag | 0 resources/{Shaders => shaders}/default.vert | 0 resources/{Shaders => shaders}/outline.frag | 0 resources/{Shaders => shaders}/outline.vert | 0 resources/{Shaders => shaders}/skybox.frag | 0 resources/{Shaders => shaders}/skybox.vert | 0 11 files changed, 0 insertions(+), 0 deletions(-) rename resources/{Fonts => fonts}/Inter.ttf (100%) rename resources/{Fonts => fonts}/Lato.ttf (100%) rename resources/{Fonts => fonts}/Sora.ttf (100%) rename resources/{Models => models}/Suzanne.obj (100%) rename resources/{Models => models}/pyramid.obj (100%) rename resources/{Shaders => shaders}/default.frag (100%) rename resources/{Shaders => shaders}/default.vert (100%) rename resources/{Shaders => shaders}/outline.frag (100%) rename resources/{Shaders => shaders}/outline.vert (100%) rename resources/{Shaders => shaders}/skybox.frag (100%) rename resources/{Shaders => shaders}/skybox.vert (100%) diff --git a/resources/Fonts/Inter.ttf b/resources/fonts/Inter.ttf similarity index 100% rename from resources/Fonts/Inter.ttf rename to resources/fonts/Inter.ttf diff --git a/resources/Fonts/Lato.ttf b/resources/fonts/Lato.ttf similarity index 100% rename from resources/Fonts/Lato.ttf rename to resources/fonts/Lato.ttf diff --git a/resources/Fonts/Sora.ttf b/resources/fonts/Sora.ttf similarity index 100% rename from resources/Fonts/Sora.ttf rename to resources/fonts/Sora.ttf diff --git a/resources/Models/Suzanne.obj b/resources/models/Suzanne.obj similarity index 100% rename from resources/Models/Suzanne.obj rename to resources/models/Suzanne.obj diff --git a/resources/Models/pyramid.obj b/resources/models/pyramid.obj similarity index 100% rename from resources/Models/pyramid.obj rename to resources/models/pyramid.obj diff --git a/resources/Shaders/default.frag b/resources/shaders/default.frag similarity index 100% rename from resources/Shaders/default.frag rename to resources/shaders/default.frag diff --git a/resources/Shaders/default.vert b/resources/shaders/default.vert similarity index 100% rename from resources/Shaders/default.vert rename to resources/shaders/default.vert diff --git a/resources/Shaders/outline.frag b/resources/shaders/outline.frag similarity index 100% rename from resources/Shaders/outline.frag rename to resources/shaders/outline.frag diff --git a/resources/Shaders/outline.vert b/resources/shaders/outline.vert similarity index 100% rename from resources/Shaders/outline.vert rename to resources/shaders/outline.vert diff --git a/resources/Shaders/skybox.frag b/resources/shaders/skybox.frag similarity index 100% rename from resources/Shaders/skybox.frag rename to resources/shaders/skybox.frag diff --git a/resources/Shaders/skybox.vert b/resources/shaders/skybox.vert similarity index 100% rename from resources/Shaders/skybox.vert rename to resources/shaders/skybox.vert