Skip to content

Conversation

@MathewBensonCode
Copy link
Contributor

FetchContent Package Management

  • Here is an idea for migrating from the git module based dependency management to use FetchContent.
  • The packages are still built by the build system in order to preserve the versions.
  • This is done by avoiding the use of the Find_Package method that would use what is installed on the system.
  • This makes it virtually the same.

CMake Install

  • This replaces the same functionality that was in the PostBuild.ps1 script
  • Used the cmake install features to ensure consistent installation location, which is canonical i.e. binaries in the bin directory and libraries in the lib directory
  • As I was debugging I found that there was some inconsistency with the paths to the shaders in Panzerfaust vs Obelisk. e.g. if you ran obelisk directly without going through Panzerfaust the built in shader location wasn't the same.

SwapChain Image Sizes

  • Was getting a vulkan error that the system was running out of memory.
  • Traced this to the size being passed to the SwapChainCreateFunction.
  • Initialize SwapchainImages with the size parameter added as the creation of the swap chains was happening successfully but the size was not getting updated giving an index error.

Wayland on Linux

  • Fix error on linux where Wayland was not being initialized properly. Wayland is the default for glfw in version 3.4 and in many desktop environments. GLFW_EXPOSE_NATIVE_* macro was defined for windows but not for the other Operating Systems

- CI Error when no files found

- make libraries static

- install tests and vulkan lib

- Introduce CPack

- Fix Clang-format issue moving to LLVM 21, which is now default on
  several platforms

- simplify testing due to install workflow

- Initialize SwapchainImages with the size parameter added as the
  creation of the swap chains was happening successfully but the size
  was not getting updated giving an index error.

- Fix error on linux where Wayland was not being initialized properly.
  Wayland is the default for glfw in version 3.4 and in many desktop
  environments. GLFW_EXPOSE_NATIVE_* macro was defined for windows but
  not for the other Operating Systems
@MathewBensonCode MathewBensonCode marked this pull request as draft November 12, 2025 20:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants