Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 2 additions & 2 deletions .github/actions/setup-windows/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@ runs:
shell: pwsh
if: steps.cache-vulkan.outputs.cache-hit != 'true'
run: |
curl -LS -o vulkansdk.exe https://sdk.lunarg.com/sdk/download/${{ inputs.vulkan-sdk-version }}/windows/VulkanSDK-${{ inputs.vulkan-sdk-version }}-Installer.exe
curl -LS -o vulkansdk.exe https://sdk.lunarg.com/sdk/download/${{ inputs.vulkan-sdk-version }}/windows/vulkansdk-windows-X64-${{ inputs.vulkan-sdk-version }}.exe
if ((Get-FileHash vulkansdk.exe -Algorithm SHA256).Hash.ToLower() -ne "${{ inputs.vulkan-sdk-checksum }}") { Write-Error "Checksum mismatch!"; exit 1 }
7z x -y vulkansdk.exe -o"${{ github.workspace }}/vulkan_sdk"
./vulkansdk.exe install --root "${{ github.workspace }}/vulkan_sdk" --accept-licenses --default-answer --confirm-command
Remove-Item vulkansdk.exe

- name: Set ENV and PATH for Vulkan SDK
Expand Down
18 changes: 9 additions & 9 deletions .github/workflows/gha.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,22 +14,22 @@ jobs:
name: Linux
uses: ./.github/workflows/linux_builds.yml
with:
vulkan-sdk-version: "1.3.283.0"
vulkan-sdk-checksum: "8005e2cf3e89c80cbe1c0d0a259c88248de3257b4fc6fdefb47409edb3e43ecb"
vulkan-sdk-version: "1.4.357.0"
vulkan-sdk-checksum: "0f09bf6a0625e346bf004be70b92907e934a4c76606b323441b2baf3a5a0e66d"

windows-build:
name: Windows
uses: ./.github/workflows/windows_builds.yml
with:
vulkan-sdk-version: "1.3.283.0"
vulkan-sdk-checksum: "811fcb9b43d09248520b2f38ae9a3763fc81df950fdab874f23bd762b07a9b12"
vulkan-sdk-version: "1.4.357.0"
vulkan-sdk-checksum: "81f474711e9042f4cd22b31b2f7a8870db2e428b21586fb43dd80150be97310d"

documentation:
name: Documentation
uses: ./.github/workflows/documentation.yml
with:
vulkan-sdk-version: "1.3.283.0"
vulkan-sdk-checksum: "8005e2cf3e89c80cbe1c0d0a259c88248de3257b4fc6fdefb47409edb3e43ecb"
vulkan-sdk-version: "1.4.357.0"
vulkan-sdk-checksum: "0f09bf6a0625e346bf004be70b92907e934a4c76606b323441b2baf3a5a0e66d"

static-analysis:
name: Static Analysis
Expand All @@ -38,9 +38,9 @@ jobs:
- windows-build
uses: ./.github/workflows/static_analysis.yml
with:
vulkan-sdk-version: "1.3.283.0"
vulkan-sdk-checksum-linux: "8005e2cf3e89c80cbe1c0d0a259c88248de3257b4fc6fdefb47409edb3e43ecb"
vulkan-sdk-checksum-windows: "811fcb9b43d09248520b2f38ae9a3763fc81df950fdab874f23bd762b07a9b12"
vulkan-sdk-version: "1.4.357.0"
vulkan-sdk-checksum-linux: "0f09bf6a0625e346bf004be70b92907e934a4c76606b323441b2baf3a5a0e66d"
vulkan-sdk-checksum-windows: "81f474711e9042f4cd22b31b2f7a8870db2e428b21586fb43dd80150be97310d"

release:
name: Release
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.24)
cmake_minimum_required(VERSION 3.25)
project(inexor-vulkan-renderer-core-lib CXX)

set(CMAKE_DISABLE_IN_SOURCE_BUILD ON)
Expand Down
8 changes: 4 additions & 4 deletions cmake/dependencies.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,10 @@ FetchContent_Declare(CLI11 SYSTEM
# Formatting library
FetchContent_Declare(fmt SYSTEM
GIT_REPOSITORY https://github.com/fmtlib/fmt.git
GIT_TAG 11.0.1
GIT_TAG 11.2.0
GIT_SHALLOW ON
GIT_PROGRESS ON
FIND_PACKAGE_ARGS 11.0.1
FIND_PACKAGE_ARGS 11.2.0
)

# Window management for Linux and Microsoft Windows
Expand Down Expand Up @@ -129,8 +129,8 @@ FetchContent_Declare(volk SYSTEM
# The Vulkan API headers
FetchContent_Declare(Vulkan SYSTEM
GIT_REPOSITORY https://github.com/KhronosGroup/Vulkan-Headers
GIT_TAG v1.3.283
GIT_TAG v1.4.357
GIT_SHALLOW ON
GIT_PROGRESS ON
FIND_PACKAGE_ARGS 1.3.283
FIND_PACKAGE_ARGS 1.4.357
)
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,3 @@ C++ Design Patterns
- Check out `Refactoring Guru <https://refactoring.guru/design-patterns>`__ to learn more about `software design patterns <https://en.wikipedia.org/wiki/Software_design_pattern>`__.
- `Don't use the singleton pattern <https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Ri-singleton>`__ as it makes thread safety and refactoring difficult.
- Use the `builder pattern <https://refactoring.guru/design-patterns/builder>`__ for composition of complicated data structures.
- An example of a builder pattern would be the `descriptor builder <https://github.com/inexorgame/vulkan-renderer/blob/main/src/vulkan-renderer/wrapper/descriptor_builder.cpp>`__.
4 changes: 4 additions & 0 deletions documentation/source/engine-overview/debugging/cla.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@ You can start vulkan-renderer with the following command line arguments:

Enables `vertical synchronization <https://en.wikipedia.org/wiki/Analog_television#Vertical_synchronization>`__ (limits FPS to monitor refresh rate).

.. option:: --no-cmd-buf-cache

Disables the secondary command buffer cache and records graphics passes directly into the primary command buffer.

.. option:: --maxfps <fps>

Limits the max frames per seconds to a specified value. The command line argument will be `clamped <https://en.cppreference.com/w/cpp/algorithm/clamp.html>`__ in between the values ``1 fps`` and ``2000 fps`` as lower and higher bounds.
6 changes: 3 additions & 3 deletions documentation/source/getting-started.rst
Original file line number Diff line number Diff line change
Expand Up @@ -109,14 +109,14 @@ CMake Build Options
- Default Value
* - ``INEXOR_BUILD_EXAMPLE``
- Build ``inexor-renderer-example``
- ``OFF``
- ``ON``
* - ``INEXOR_BUILD_TESTS``
- Build ``inexor-renderer-tests``
- ``OFF``
* - ``INEXOR_BUILD_BENCHMARKS``
- Build ``inexor-renderer-benchmarks``
- ``OFF``
* - ``INEXOR_BUILD_DOCUMENTATION``
* - ``INEXOR_BUILD_DOC``
- Build the documentation with `Sphinx <https://www.sphinx-doc.org/en/master/>`__
- ``OFF``
* - ``INEXOR_BUILD_DOCUMENTATION_USE_VENV``
Expand Down Expand Up @@ -176,7 +176,7 @@ Alternatively, download the source code from the `GitHub repository <https://git
.. image:: images/cmake-win/cmake-win-7.png
:width: 700px

**STEP 10:** In this example, let's enable building benchmarks, tests, and the documentation as well. To do so, set the checkboxes for ``INEXOR_BUILD_BENCHMARKS``, ``INEXOR_BUILD_TESTS``, and ``INEXOR_BUILD_DOCUMENTATION``:
**STEP 10:** In this example, let's enable building benchmarks, tests, and the documentation as well. To do so, set the checkboxes for ``INEXOR_BUILD_BENCHMARKS``, ``INEXOR_BUILD_TESTS``, and ``INEXOR_BUILD_DOC``:

.. image:: images/cmake-win/cmake-win-8.png
:width: 700px
Expand Down
21 changes: 0 additions & 21 deletions example-app/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -45,24 +45,3 @@ foreach(cfg Debug Release RelWithDebInfo MinSizeRel)
RUNTIME_OUTPUT_DIRECTORY_${cfg} ${CMAKE_BINARY_DIR}/example
)
endforeach()

# install

include(GNUInstallDirs)

install(
TARGETS inexor-vulkan-renderer-example
COMPONENT example
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
install(
DIRECTORY ${PROJECT_SOURCE_DIR}/assets/
COMPONENT example
DESTINATION ${CMAKE_INSTALL_BINDIR}/assets
)
install(
DIRECTORY ${PROJECT_SOURCE_DIR}/shaders/
COMPONENT example
DESTINATION ${CMAKE_INSTALL_BINDIR}/shaders
FILES_MATCHING PATTERN "*.spv"
)
Loading
Loading