Added CLI arg and added a model

This commit is contained in:
Alexandre 2026-08-25 23:40:47 +02:00
parent 77ff2d7c0e
commit 87e7db0c87
13 changed files with 1948 additions and 23 deletions

View File

@ -0,0 +1,633 @@
{
"date": "2026-08-25T23:21:08.955192774+02:00",
"data": {
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/book/CMakeLists.txt": [
{
"label": "book_sources",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/book/CMakeLists.txt"
}
],
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/fuzz/CMakeLists.txt": [
{
"label": "CLI11_FUZZ_ARTIFACT_PATH",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/fuzz/CMakeLists.txt"
},
{
"label": "CLI11_FUZZ_TIME_APP",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/fuzz/CMakeLists.txt"
},
{
"label": "CLI11_FUZZ_TIME_FILE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/fuzz/CMakeLists.txt"
}
],
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/single-include/CMakeLists.txt": [
{
"label": "Python::Interpreter",
"kind": 6,
"detail": "Variable",
"documentation": "package from: Python"
},
{
"label": "Python_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: Python"
},
{
"label": "Python_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: Python"
}
],
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt": [
{
"label": "VERSION_REGEX",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "Doxygen_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: Doxygen"
},
{
"label": "Doxygen_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: Doxygen"
},
{
"label": "BUILD_TESTING",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "docs_EXIST",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "docs_EXIST",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "examples_EXIST",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "examples_EXIST",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CLI11_WARNINGS_AS_ERRORS",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CLI11_SINGLE_FILE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CLI11_PRECOMPILED",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CLI11_MODULES",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CMAKE_CXX_STANDARD",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CMAKE_CXX_EXTENSIONS",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CMAKE_CXX_STANDARD_REQUIRED",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CMAKE_CXX_STANDARD_LIBRARIES_INIT",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CMAKE_CXX_STANDARD_LIBRARIES",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CLI11_headerLoc",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CLI11_headers",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CLI11_impl_headers",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CLI11_library_headers",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CMAKE_CUDA_FLAGS",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt\n\nPrint out warning and error numbers"
},
{
"label": "CPACK_PACKAGE_VENDOR",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CPACK_PACKAGE_CONTACT",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CPACK_PACKAGE_VERSION_MAJOR",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CPACK_PACKAGE_VERSION_MINOR",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt\n\nAutomatic in CMake 3.12+"
},
{
"label": "CPACK_PACKAGE_VERSION_PATCH",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt\n\nAutomatic in CMake 3.12+"
},
{
"label": "CPACK_PACKAGE_DESCRIPTION_SUMMARY",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt\n\nAutomatic in CMake 3.12+"
},
{
"label": "CPACK_RESOURCE_FILE_LICENSE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CPACK_RESOURCE_FILE_README",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CPACK_PACKAGE_DESCRIPTION_FILE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CPACK_SOURCE_GENERATOR",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CPACK_SOURCE_IGNORE_FILES",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt\n\nCPack collects *everything* except what's listed here."
},
{
"label": "CPACK_DEBIAN_PACKAGE_ARCHITECTURE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CPACK_DEBIAN_COMPRESSION_TYPE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
},
{
"label": "CPACK_DEBIAN_PACKAGE_NAME",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
}
],
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt": [
{
"label": "add_dependent_application_definitions",
"kind": 3,
"detail": "Function",
"documentation": "defined function\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "add_sanitizers",
"kind": 3,
"detail": "Function",
"documentation": "defined macro\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "add_catch_test",
"kind": 3,
"detail": "Function",
"documentation": "defined macro\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt\n\nTarget must already exist"
},
{
"label": "Sanitizers_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: Sanitizers"
},
{
"label": "Sanitizers_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: Sanitizers"
},
{
"label": "CLI11_BOOST",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt\n\nAdd boost to test boost::optional (currently explicitly requested)\""
},
{
"label": "Boost_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: Boost"
},
{
"label": "Boost_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: Boost"
},
{
"label": "Boost_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: Boost"
},
{
"label": "Boost_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: Boost"
},
{
"label": "boost-optional-def",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "CLI11_TESTS",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "CLI11_MULTIONLY_TESTS",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "Catch2_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: Catch2"
},
{
"label": "Catch2_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: Catch2"
},
{
"label": "catch2_url",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "catch2_header",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "catch2_hash",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "CLI11_DEPENDENT_APPLICATIONS",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt\n\nBuild dependent applications which are launched from test code"
},
{
"label": "TEST_FILE_FOLDER",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "Threads_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: Threads"
},
{
"label": "Threads_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: Threads"
},
{
"label": "no-deprecated-declarations",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt\n\nAdd -Wno-deprecated-declarations to DeprecatedTest"
},
{
"label": "cli11_boost_target",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "cli11_boost_target",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "CLI11_PACKAGE_SEARCH_LOC",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "package_test_command",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "package_test_command",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt\n\nsome other setup that isn't that important to run on all OS"
},
{
"label": "CLI11_PACKAGE_TEST_BUILD_TYPE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
},
{
"label": "CLI11_PACKAGE_TEST_BUILD_TYPE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt"
}
],
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/src/CMakeLists.txt": [
{
"label": "PUBLIC_OR_INTERFACE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/src/CMakeLists.txt"
},
{
"label": "PUBLIC_OR_INTERFACE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/src/CMakeLists.txt"
},
{
"label": "SYSTEM_INCL",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/src/CMakeLists.txt"
},
{
"label": "SYSTEM_INCL",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/src/CMakeLists.txt\n\nthe compiler emitting any warnings about them"
}
],
"/home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt": [
{
"label": "addGlslShader",
"kind": 3,
"detail": "Function",
"documentation": "defined function\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt\n\nHelper functions to build shaders"
},
{
"label": "addSlangShader",
"kind": 3,
"detail": "Function",
"documentation": "defined function\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "addBinary",
"kind": 3,
"detail": "Function",
"documentation": "defined function\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt\n\nA function to automate executables aditions"
},
{
"label": "CMAKE_EXPORT_COMPILE_COMMANDS",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "CMAKE_AR",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "CMAKE_RANLIB",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "glfw3_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: glfw3"
},
{
"label": "glfw3_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: glfw3"
},
{
"label": "glm_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: glm"
},
{
"label": "glm_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: glm"
},
{
"label": "VulkanMemoryAllocator_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: VulkanMemoryAllocator"
},
{
"label": "VulkanMemoryAllocator_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: VulkanMemoryAllocator"
},
{
"label": "fmt_LIBRARIES",
"kind": 6,
"detail": "Variable",
"documentation": "package: fmt"
},
{
"label": "fmt_INCLUDE_DIRS",
"kind": 6,
"detail": "Variable",
"documentation": "package: fmt"
},
{
"label": "SPV_FILE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "SPV_FILE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "SPV_FILE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "SPV_FILE",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "SHADER_OUTPUT_DIR",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "ALL_SPV_FILES",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "EXPANDED_SHADERS",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "SHADER_SRC",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt"
},
{
"label": "RESOLVED_MODELS",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt\n\nAdds the 3D models in the binary folder"
},
{
"label": "RESOLVED_TEXTURES",
"kind": 12,
"detail": "Value",
"documentation": "defined variable\nfrom: /home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt\n\nAdds the textures in the binary folder"
}
],
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/examples/CMakeLists.txt": [
{
"label": "add_cli_exe",
"kind": 3,
"detail": "Function",
"documentation": "defined function\nfrom: /home/alex/Developer/Code/Vulkan-Git/include/CLI11/examples/CMakeLists.txt"
}
]
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
{
"date": "2026-08-25T23:21:08.955141949+02:00",
"data": {
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/cmake/CLI11GeneratePkgConfig.cmake": [
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt"
]
}
}

View File

@ -0,0 +1,15 @@
{
"date": "2026-08-25T23:21:08.955046741+02:00",
"data": {
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/CMakeLists.txt",
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/src/modules/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/include/CLI11/src/CMakeLists.txt",
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/examples/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt",
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/fuzz/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt",
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/single-include/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt",
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/tests/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt",
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/src/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt",
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/docs/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt",
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/book/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/include/CLI11/CMakeLists.txt",
"/home/alex/Developer/Code/Vulkan-Git/include/CLI11/examples/subcom_in_files/CMakeLists.txt": "/home/alex/Developer/Code/Vulkan-Git/include/CLI11/examples/CMakeLists.txt"
}
}

View File

@ -11,3 +11,4 @@ CompileFlags:
- -DLOGGER_IMPL
- -DSERVER_INIT_IMPL
- -DSERVER_IMPL
- -DLOADER_IMPL

3
.gitignore vendored
View File

@ -37,6 +37,9 @@ Thumbs.db
# direnv
.direnv/
# cache
.cache/
# Nix flakes
result
result-*

View File

@ -27,8 +27,18 @@ find_package( VulkanMemoryAllocator CONFIG REQUIRED )
find_package( fmt REQUIRED )
# Shader compilers
add_executable (glslang::validator IMPORTED)
find_program (GLSLANG_VALIDATOR "glslangValidator" HINTS $ENV{VULKAN_SDK}/bin REQUIRED)
set_property (TARGET glslang::validator PROPERTY IMPORTED_LOCATION "${GLSLANG_VALIDATOR}")
find_program (
GLSLANG_VALIDATOR
"glslangValidator"
HINTS $ENV{VULKAN_SDK}/bin
REQUIRED
)
set_property (
TARGET glslang::validator
PROPERTY IMPORTED_LOCATION "${GLSLANG_VALIDATOR}"
)
find_program(SLANGC_EXECUTABLE slangc HINTS $ENV{VULKAN_SDK}/bin REQUIRED)
# CL11
@ -94,7 +104,7 @@ endfunction()
# A function to automate executables aditions
function ( addBinary BINARY_NAME )
cmake_parse_arguments ( BINARY "IMGUI;LICENSE;GLOB_INCLUDE" "SOURCE" "SHADERS;SLANG_SHADERS;LIBS;TEXTURES;MODELS" ${ARGN} )
cmake_parse_arguments ( BINARY "IMGUI;LICENSE" "SOURCE" "SHADERS;SLANG_SHADERS;LIBS;TEXTURES;MODELS" ${ARGN} )
if (DEFINED BINARY_SOURCE)
add_executable ( ${BINARY_NAME} src/${BINARY_SOURCE}.cpp )
endif()
@ -210,22 +220,18 @@ function ( addBinary BINARY_NAME )
endfunction()
# Scan the shader folder
file(GLOB SHADER_SOURCES CONFIGURE_DEPENDS "shaders/*")
# Scan the include folder
# Adds the main binary
addBinary (
engine
SOURCE Engine/main
SHADERS ${SHADER_SOURCES}
SHADERS
LIBS glfw fmt vk-bootstrap vulkan CLI11::CLI11
# Flags
IMGUI
LICENSE
SHADERS shaders/*
MODELS assets/models*
LIBS glfw fmt vk-bootstrap vulkan CLI11::CLI11
)
addBinary (

BIN
assets/models/basicmesh.glb Normal file

Binary file not shown.

1
include/imgui Submodule

@ -0,0 +1 @@
Subproject commit c94bb90ff5c4bab7c1632996589b675ed5e81005

View File

@ -79,13 +79,20 @@ class Logger {
); // Logs using all of the above, RAM then console and finally disk, maybe multithread (?)
template<typename... Args>
void logError(
void logImportant(
LogModule module,
LogLevel level,
std::string_view message,
Args&&... args
); // Logs to console and file, in cases of crashes or errors
template<typename... Args>
void logFatal(
LogModule module,
std::string_view message,
Args&&... args
); // Logs to console and file, then abort -> Core dump
// Utils functions
void merge(std::string_view source); // Merges a source dumped logs into this
@ -274,7 +281,7 @@ void Logger::logAll(
}
template<typename... Args>
void Logger::logError(
void Logger::logImportant(
LogModule module,
LogLevel level,
std::string_view message,
@ -296,6 +303,35 @@ void Logger::logError(
}
template<typename... Args>
void Logger::logFatal(
LogModule module,
std::string_view message,
Args&&... args
) {
// Separator
logDisk("=============================== CRASH LOGS ===============================");
logDisk(
module,
LogLevel::EFATAL,
message,
args...
);
logConsole(
module,
LogLevel::EFATAL,
message,
args...
);
logSeparator();
std::abort();
}
void Logger::merge(std::string_view source) {
/*
This merges a dumped logger into this one

View File

@ -45,7 +45,7 @@ class Engine {
public:
//========== Class Members ==========
// Config
int _gpuIndex {0}; // Unitialized
int _gpuIndex {-1}; // Unitialized
bool _isInitialized { false };
int _frameNumber { 0 };
VkExtent2D _windowExtent;
@ -129,9 +129,13 @@ class Engine {
VkPipeline _meshPipeline;
GPUMeshBuffers rectangle;
// Model
std::string _modelPath { "models/default.gltf" };
void parseConfig(
int gpuIndex = 0
int gpuIndex,
std::string modelPath
);
void init();
@ -275,9 +279,17 @@ constexpr bool bUseValidationLayers = false;
//======================
void Engine::parseConfig(
int gpuIndex
int gpuIndex,
std::string modelPath
) {
_gpuIndex = gpuIndex;
if(!modelPath.size() == 0) {
#ifdef DEBUG
_logger.logAll(ENGINE, EINFO, "Model overwrite, using {}", modelPath);
#endif
_modelPath = modelPath;
}
}
@ -544,7 +556,8 @@ void Engine::run() {
// Pipeline change monitor
int currentID = currentBackgroundEffect;
if (prevID != currentID) {
_logger.logRAM(ENGINE, EINFO, "Background shader changed");
//_logger.logRAM(ENGINE, EINFO, "Background shader changed");
_logger.logFatal(ENGINE, "Background shader changed !");
}
prevID = currentID;
@ -575,7 +588,7 @@ void Engine::run() {
}
#ifdef DEBUG
// Not an error but logs to required targets
_logger.logError(ENGINE, EINFO, "Engine has finished running after {} seconds!", timer.endTimer());
_logger.logImportant(ENGINE, EINFO, "Engine has finished running after {} seconds!", timer.endTimer());
#endif
}

View File

@ -0,0 +1,26 @@
#ifndef LOADER_H
#define LOADER_H
// Header
// Custom includes
#include "Common/Types.h"
// Other includes
#include <cstdint>
#include <unordered_map>
#include <filesystem>
// Stucts
struct GeoSurface {
uint32_t startIndex;
uint32_t count;
};
#endif
#ifdef LOADER_IMPL
#ifndef LOADER_IMPL_H
#define LOADER_IMPL_H
// Main code file
#endif
#endif

View File

@ -14,7 +14,8 @@ class ArgHandler {
CLI::App* _run;
// All options
bool _listGPU {false};
int _gpuIndex {0};
int _gpuIndex {-1};
std::string _modelPath;
void buildArgs() {
// Setup
@ -27,6 +28,7 @@ class ArgHandler {
// Subcommand options/flags
// Run
_run->add_option("--gpu, -g", _gpuIndex, "Manually select a GPU");
_run->add_option("--model, -m", _modelPath, "Overwrites the default model");
}
int dispatch(int argc, char* argv[]) {
@ -75,7 +77,10 @@ int main(int argc, char* argv[]) {
}
if(handler._run->parsed()){
engine.parseConfig(handler._gpuIndex);
engine.parseConfig(
handler._gpuIndex,
handler._modelPath
);
engine.init();