Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
9883690
WIP migrating to cpp modules
SpinnerX Jan 10, 2026
4e54a9a
WIP modules migration and re-adding logger
SpinnerX Jan 10, 2026
50ec735
WIP continuing modules relationships
SpinnerX Jan 11, 2026
e71eff1
WIP in re-implementing the editor with modules
SpinnerX Jan 11, 2026
6fd98ec
WIP in re-adding vulkan instance initialization
SpinnerX Jan 12, 2026
98a7865
WIP windowing and GLFW initialization!
SpinnerX Jan 12, 2026
5a50687
WIP ensuring the vulkan instances and windowing system are cleaned up…
SpinnerX Jan 12, 2026
b087b34
WIP re-added event.cppm to target_sources in project cmake
SpinnerX Jan 12, 2026
a428389
WIP in re-adding vulkan device handles and fixed includes for specify…
SpinnerX Jan 12, 2026
9d4160e
WIP in re-adding registration callbacks + more work to do in getting …
SpinnerX Jan 12, 2026
3c82d5f
WIP in re-adding in the game state API's and fixed the logical device…
SpinnerX Jan 12, 2026
6496c47
WIP -- re-adding handling event inputs
SpinnerX Jan 12, 2026
ffef98f
WIP -- re-adding more events implementations
SpinnerX Jan 12, 2026
8439e4e
WIP -- re-added swapchain implementation
SpinnerX Jan 12, 2026
786a0b3
WIP -- finishing up swapchain and window_context implementation
SpinnerX Jan 12, 2026
8c915d9
WIP -- re-added math functions, and the scene system
SpinnerX Jan 12, 2026
005be81
WIP -- re-added the vulkan implementation-specific renderer back with…
SpinnerX Jan 13, 2026
a3dbd00
WIP -- getting level scene to work like normal and getting the render…
SpinnerX Jan 13, 2026
eaa1730
WIP -- level scene working again
SpinnerX Jan 13, 2026
06cb85a
WIP -- re-
SpinnerX Jan 13, 2026
78b762e
WIP -- re-added the UI API's and fixed aspect ratio for window resiz…
SpinnerX Jan 13, 2026
4b89fb9
WIP -- re-added serialization system for loading/saving scenes
SpinnerX Jan 13, 2026
1ed7121
WIP -- re-added physics simulation to work again
SpinnerX Jan 13, 2026
222baa8
WIP -- added another game object to level_scene
SpinnerX Jan 13, 2026
1e705d7
WIP -- made the entry point automated to be internal
SpinnerX Jan 13, 2026
a959a6c
WIP -- cleaned up editor/application.cpp
SpinnerX Jan 13, 2026
5fba872
Removed old atlas headers project structure
SpinnerX Jan 13, 2026
f2ebaf3
Removed old editor code that uses headers
SpinnerX Jan 13, 2026
617ebe5
Renamed atlas-modules to atlas to finalize changes migrating to modules
SpinnerX Jan 13, 2026
6491b14
Renamed from editor_modules to editor to finalize changes migrating e…
SpinnerX Jan 13, 2026
104eb76
Cleaned up debugging comments
SpinnerX Jan 13, 2026
7f57500
Marked instance_context destructer with overridfe keyword instead of …
SpinnerX Jan 13, 2026
466231d
Added shorthand to importing utilities to using atlas.core.utilities …
SpinnerX Jan 14, 2026
0413f4a
Added module unit atlas.core.event as a module partition to the event…
SpinnerX Jan 14, 2026
78b8662
Prepared build system for making TheAtlasEngine consumable
SpinnerX Jan 14, 2026
d5d1e02
Using the utilities import instead for importing utilities
SpinnerX Jan 14, 2026
b782d6e
Added missing <unordered_map> include to mesh.cppm
SpinnerX Jan 14, 2026
17f053c
Removed importing atlas.window from imgui_context as a dependency imp…
SpinnerX Jan 15, 2026
39bc640
WIP in adding in the import for atlas.renderer.loader
SpinnerX Jan 15, 2026
1a6acc1
WIP in cleaning up the imports
SpinnerX Jan 15, 2026
07e5245
WIP updating the project cmake
SpinnerX Jan 15, 2026
3118097
WIP in passing around the graphics context to application
SpinnerX Jan 15, 2026
452057a
Application class cleanup by removing API's that utilize static
SpinnerX Jan 15, 2026
ada78c6
Updated on_update registration callback to take a single parameter th…
SpinnerX Jan 15, 2026
18d1736
Applied frames in flight to get the current frame index
SpinnerX Jan 15, 2026
a24a856
More code cleanup to the vulkan::render_system and replaced std::arra…
SpinnerX Jan 16, 2026
5517a2d
Updated project cmake
SpinnerX Jan 16, 2026
854d0ce
Cleanup to graphics context and cleaned up the physics system configu…
SpinnerX Jan 17, 2026
f0bf3f5
Added logging messages for finding clang-format, clang-tidy, and the …
SpinnerX Jan 19, 2026
61d007b
Removed logging messagess from application.cppm
SpinnerX Jan 19, 2026
e8b6c76
Renamed to builtin.shaders
SpinnerX Jan 19, 2026
abbd2b6
Added *.spv files -- TODO: should remove this and do it differently
SpinnerX Jan 19, 2026
cde8f5c
Updated windows.yml
SpinnerX Jan 19, 2026
74fbd7f
Updated project cmake to enable specific flags on Windows
SpinnerX Jan 19, 2026
58f99bb
Updated the correct code path for specifying compiler flags
SpinnerX Jan 20, 2026
668045d
Updated workflows for linux and mac
SpinnerX Jan 20, 2026
df31b98
Updated nfd/2.0 to 3.0 in conanfile.py
SpinnerX Jan 20, 2026
1b1452f
Finalized changes to conanfile.py
SpinnerX Jan 20, 2026
dafcbe2
Commented out adding editor in the cmake file
SpinnerX Jan 20, 2026
eae34ea
Updated project cmake to make sure they are enabled on other platform…
SpinnerX Jan 20, 2026
1ad52a6
Changed to TheAtlasEngine
SpinnerX Jan 20, 2026
36c6751
Minor bug fixes
SpinnerX Jan 20, 2026
8634add
Removed redundant tests and conform tests to using imports
SpinnerX Jan 20, 2026
d460c04
Updated CMake to include tests
SpinnerX Jan 20, 2026
f199ecc
Conform code to clang-format
SpinnerX Jan 20, 2026
6e282e2
Minimal change to project cmake adding object.test.cpp
SpinnerX Jan 21, 2026
3299b8e
Cleaned up project cmake and updated cmake utils to 5.0
SpinnerX Jan 22, 2026
97bf068
Updated the README
SpinnerX Jan 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 23 additions & 17 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Linux Build Tests
name: Linux Platform Build

on: [pull_request]

Expand All @@ -9,36 +9,42 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Install LLVM
run: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh

- name: Install LLVM's C++ Standard Library
run: sudo apt install libc++-17-dev libc++abi-17-dev
run: sudo apt-get install libc++-20-dev libc++abi-20-dev

- name: Installing pipx
run: sudo apt install pipx

- name: Installing Prerequisites for Linux
run: |
sudo apt-get update
sudo apt install lsb-release wget software-properties-common gnupg libgtk2.0-dev libgl1-mesa-dev -y
# sudo apt install libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxt-dev libxtst-dev libxrender-dev libxrandr-dev libxi-dev -y
sudo apt-get install -y libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxt-dev libxtst-dev libxrender-dev libxrandr-dev libxi-dev
sudo apt install software-properties-common -y
sudo add-apt-repository ppa:deadsnakes/ppa

- name: Install Vulkan SDK
uses: humbletim/setup-vulkan-sdk@v1.2.1
with:
vulkan-query-version: 1.4.304.1
vulkan-components: Vulkan-Headers, Vulkan-Loader
vulkan-use-cache: true

- name: Installing Conan
run: pipx install "conan>=2.10.1"
run: pipx install "conan>=2.18.1"

- name: Setting up Conan Profiles
run: conan config install -sf profiles/x86_64/linux/ -tf profiles https://github.com/engine3d-dev/conan-config.git

- name: Installing project dependencies
run: conan remote add engine3d-conan https://libhal.jfrog.io/artifactory/api/conan/engine3d-conan

- name: Cloning Atlas repository
run: git clone https://github.com/engine3d-dev/TheAtlasEngine

- name: Building Atlas
run: conan build . -b missing -c tools.system.package_manager:sudo=True -c tools.system.package_manager:mode=install
- name: Setting up Conan
run: |
conan config install https://github.com/engine3d-dev/conan-config.git
conan atlas setup

- name: Creating Release build for TheAtlasEngine
run: conan atlas create . -s build_type=Release

- name: Creating Debug build for TheAtlasEngine
run: conan atlas create . -s build_type=Debug

- name: Creating MinSizeRel build for TheAtlasEngine
run: conan atlas create . -s build_type=MinSizeRel

36 changes: 24 additions & 12 deletions .github/workflows/mac.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Macos Build Tests
name: Macos Platform Build

on: [pull_request]

Expand All @@ -14,25 +14,37 @@ jobs:

- name: Install LLVM
run: |
brew install python pipx llvm@17
brew install python pipx

- name: Install Vulkan SDK
uses: humbletim/setup-vulkan-sdk@v1.2.1
with:
vulkan-query-version: 1.4.304.1
vulkan-components: Vulkan-Headers, Vulkan-Loader
vulkan-use-cache: true


- name: Installing conan
run: pipx install "conan>=2.10.2"
run: |
pipx install "conan>=2.18.2"
pipx upgrade conan

- name: Installing clang-tidy
run: sudo ln -s $(brew --prefix llvm)/bin/clang-tidy /usr/local/bin/

- name: Install Rosetta
run: /usr/sbin/softwareupdate --install-rosetta --agree-to-license

- name: Setting up Conan profile
run: conan config install -sf profiles/armv8/mac/ -tf profiles https://github.com/engine3d-dev/conan-config.git

- name: Installing Atlas repositories
run: conan remote add engine3d-conan https://libhal.jfrog.io/artifactory/api/conan/engine3d-conan
- name: Setting up Conan configuration
run: |
conan config install https://github.com/engine3d-dev/conan-config.git
conan atlas setup

- name: Cloning Atlas repository
run: git clone https://github.com/engine3d-dev/TheAtlasEngine
- name: Creating Release build for TheAtlasEngine
run: conan atlas create . -s build_type=Release

- name: Creating Debug build for TheAtlasEngine
run: conan atlas create . -s build_type=Debug

- name: Building the project
run: conan build . -b missing
- name: Creating MinSizeRel build for TheAtlasEngine
run: conan atlas create . -s build_type=MinSizeRel
48 changes: 22 additions & 26 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Windows Build Tests
name: Windows Platform Build

on: [pull_request, workflow_dispatch]

Expand All @@ -8,44 +8,40 @@ jobs:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4

# - name: Setting up C++ on Windows
# shell: pwsh
# run: winget install Microsoft.VisualStudio.2022.BuildTools --override "--add Microsoft.VisualStudio.Workload.VCTools --includeRecommended -p --installWhileDownloading"

- name: Installing Choco
shell: pwsh
run: Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

- name: Install tooling with Choco
- name: Installing Git
shell: pwsh
run: |
choco install cmake.install --version=3.31.6
cmake --version
choco install llvm --version=20.1.4
clang++ --version
choco install git make mingw

# - name: Installing python
# run: choco install python --version=3.12.2
run: choco install git

- name: Install Vulkan SDK
uses: humbletim/setup-vulkan-sdk@v1.2.1
with:
vulkan-query-version: 1.4.304.1
vulkan-components: Vulkan-Headers, Vulkan-Loader
vulkan-use-cache: true

- name: Pip installing conan
shell: pwsh
run: pip install conan

# - name: Installing vulkan
# shell: pwsh
# run: winget install --id=KhronosGroup.VulkanSDK -e

- name: Setting up conan profiles
- name: Setting up Conan configuration
shell: pwsh
run: conan config install -sf profiles/x86_64/Windows/ -tf profiles https://github.com/engine3d-dev/conan-config.git
run: |
conan config install https://github.com/engine3d-dev/conan-config.git
conan atlas setup

- name: Setting up packages
- name: Creating Release build for TheAtlasEngine
shell: pwsh
run: conan remote add engine3d-conan https://libhal.jfrog.io/artifactory/api/conan/engine3d-conan
run: conan atlas create . -s build_type=Release

- name: Running Test Cases
- name: Creating Debug build for TheAtlasEngine
shell: pwsh
run: conan build . -b missing

run: conan atlas create . -s build_type=Debug

- name: Creating MinSizeRel build for TheAtlasEngine
shell: pwsh
run: conan atlas create . -s build_type=MinSizeRel
Loading
Loading