Simple SDL game loop
This commit is contained in:
Binary file not shown.
@@ -5,9 +5,10 @@ project(HansTheGatherer)
|
||||
# Option to switch real platform vs. SDL implementation...
|
||||
|
||||
find_package(SDL3 REQUIRED)
|
||||
find_package(spdlog REQUIRED)
|
||||
|
||||
add_executable(HansTheGatherer main.cpp)
|
||||
|
||||
target_link_libraries(HansTheGatherer SDL3::SDL3)
|
||||
target_link_libraries(HansTheGatherer SDL3::SDL3 spdlog::spdlog)
|
||||
|
||||
set_property(TARGET HansTheGatherer PROPERTY CXX_STANDARD 23)
|
||||
set_property(TARGET HansTheGatherer PROPERTY CXX_STANDARD 20)
|
||||
|
||||
Binary file not shown.
@@ -1,7 +1,17 @@
|
||||
# ninja log v6
|
||||
646 681 1748084217539431713 HansTheGatherer 56fe39e94f05f046
|
||||
0 646 1748084216892589223 CMakeFiles/HansTheGatherer.dir/main.cpp.o f05113a49bef90a
|
||||
1 31 1748084271977788386 build.ninja 8e402d244b09da2
|
||||
1 40 1748084271980526268 HansTheGatherer 46a21811be68aff1
|
||||
0 636 1748084284144344059 CMakeFiles/HansTheGatherer.dir/main.cpp.o f05113a49bef90a
|
||||
636 673 1748084284780341193 HansTheGatherer 46a21811be68aff1
|
||||
0 24 1748085895988350615 build.ninja 8e402d244b09da2
|
||||
1 735 1748085886398945346 CMakeFiles/HansTheGatherer.dir/main.cpp.o fd03b4ecddc186cb
|
||||
735 769 1748085887132948329 HansTheGatherer ed94f679f8ca40ee
|
||||
1 25 1748085895988350615 build.ninja 8e402d244b09da2
|
||||
1 697 1748085895991984332 CMakeFiles/HansTheGatherer.dir/main.cpp.o b4cb899b0b4e24eb
|
||||
697 732 1748085896687987161 HansTheGatherer ed94f679f8ca40ee
|
||||
1 693 1748085993855391696 CMakeFiles/HansTheGatherer.dir/main.cpp.o b4cb899b0b4e24eb
|
||||
693 727 1748085994547394578 HansTheGatherer ed94f679f8ca40ee
|
||||
1 696 1748086162957103608 CMakeFiles/HansTheGatherer.dir/main.cpp.o b4cb899b0b4e24eb
|
||||
696 729 1748086163652106596 HansTheGatherer ed94f679f8ca40ee
|
||||
1 704 1748086300260693724 CMakeFiles/HansTheGatherer.dir/main.cpp.o b4cb899b0b4e24eb
|
||||
704 738 1748086300963696745 HansTheGatherer ed94f679f8ca40ee
|
||||
1 679 1748086359530948456 CMakeFiles/HansTheGatherer.dir/main.cpp.o b4cb899b0b4e24eb
|
||||
679 710 1748086360208951371 HansTheGatherer ed94f679f8ca40ee
|
||||
1 657 1748086490791509825 CMakeFiles/HansTheGatherer.dir/main.cpp.o b4cb899b0b4e24eb
|
||||
657 688 1748086491447512619 HansTheGatherer ed94f679f8ca40ee
|
||||
|
||||
@@ -227,6 +227,12 @@ HansTheGatherer_SOURCE_DIR:STATIC=/home/derek/Git/HansTheGatherer
|
||||
//The directory containing a CMake configuration file for SDL3.
|
||||
SDL3_DIR:PATH=/usr/lib64/cmake/SDL3
|
||||
|
||||
//The directory containing a CMake configuration file for fmt.
|
||||
fmt_DIR:PATH=/usr/lib64/cmake/fmt
|
||||
|
||||
//The directory containing a CMake configuration file for spdlog.
|
||||
spdlog_DIR:PATH=/usr/lib64/cmake/spdlog
|
||||
|
||||
|
||||
########################
|
||||
# INTERNAL cache entries
|
||||
@@ -310,6 +316,8 @@ CMAKE_GENERATOR_INSTANCE:INTERNAL=
|
||||
CMAKE_GENERATOR_PLATFORM:INTERNAL=
|
||||
//Name of generator toolset.
|
||||
CMAKE_GENERATOR_TOOLSET:INTERNAL=
|
||||
//Test CMAKE_HAVE_LIBC_PTHREAD
|
||||
CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=1
|
||||
//Source directory with the top level CMakeLists.txt file for this
|
||||
// project
|
||||
CMAKE_HOME_DIRECTORY:INTERNAL=/home/derek/Git/HansTheGatherer
|
||||
@@ -377,6 +385,8 @@ CMAKE_TAPI-ADVANCED:INTERNAL=1
|
||||
CMAKE_UNAME:INTERNAL=/usr/bin/uname
|
||||
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
|
||||
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
|
||||
//Details about finding Threads
|
||||
FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()]
|
||||
//linker supports push/pop state
|
||||
_CMAKE_CXX_LINKER_PUSHPOP_STATE_SUPPORTED:INTERNAL=TRUE
|
||||
//linker supports push/pop state
|
||||
|
||||
@@ -516,3 +516,36 @@ events:
|
||||
Running the CXX compiler's linker: "/usr/bin/ld" "-v"
|
||||
GNU ld version 2.44-3.fc42
|
||||
...
|
||||
|
||||
---
|
||||
events:
|
||||
-
|
||||
kind: "try_compile-v1"
|
||||
backtrace:
|
||||
- "/usr/share/cmake/Modules/Internal/CheckSourceCompiles.cmake:108 (try_compile)"
|
||||
- "/usr/share/cmake/Modules/CheckCSourceCompiles.cmake:58 (cmake_check_source_compiles)"
|
||||
- "/usr/share/cmake/Modules/FindThreads.cmake:97 (CHECK_C_SOURCE_COMPILES)"
|
||||
- "/usr/share/cmake/Modules/FindThreads.cmake:163 (_threads_check_libc)"
|
||||
- "/usr/lib64/cmake/spdlog/spdlogConfig.cmake:40 (find_package)"
|
||||
- "CMakeLists.txt:8 (find_package)"
|
||||
checks:
|
||||
- "Performing Test CMAKE_HAVE_LIBC_PTHREAD"
|
||||
directories:
|
||||
source: "/home/derek/Git/HansTheGatherer/build/CMakeFiles/CMakeScratch/TryCompile-DM2u3W"
|
||||
binary: "/home/derek/Git/HansTheGatherer/build/CMakeFiles/CMakeScratch/TryCompile-DM2u3W"
|
||||
cmakeVariables:
|
||||
CMAKE_C_FLAGS: ""
|
||||
CMAKE_C_FLAGS_DEBUG: "-g"
|
||||
CMAKE_EXE_LINKER_FLAGS: ""
|
||||
buildResult:
|
||||
variable: "CMAKE_HAVE_LIBC_PTHREAD"
|
||||
cached: true
|
||||
stdout: |
|
||||
Change Dir: '/home/derek/Git/HansTheGatherer/build/CMakeFiles/CMakeScratch/TryCompile-DM2u3W'
|
||||
|
||||
Run Build Command(s): /usr/bin/ninja-build -v cmTC_f87ad
|
||||
[1/2] /usr/bin/cc -DCMAKE_HAVE_LIBC_PTHREAD -o CMakeFiles/cmTC_f87ad.dir/src.c.o -c /home/derek/Git/HansTheGatherer/build/CMakeFiles/CMakeScratch/TryCompile-DM2u3W/src.c
|
||||
[2/2] : && /usr/bin/cc CMakeFiles/cmTC_f87ad.dir/src.c.o -o cmTC_f87ad && :
|
||||
|
||||
exitCode: 0
|
||||
...
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -45,8 +45,9 @@ cmake_ninja_workdir = /home/derek/Git/HansTheGatherer/build/
|
||||
build cmake_object_order_depends_target_HansTheGatherer: phony || .
|
||||
|
||||
build CMakeFiles/HansTheGatherer.dir/main.cpp.o: CXX_COMPILER__HansTheGatherer_unscanned_ /home/derek/Git/HansTheGatherer/main.cpp || cmake_object_order_depends_target_HansTheGatherer
|
||||
DEFINES = -DFMT_SHARED -DSPDLOG_COMPILED_LIB -DSPDLOG_FMT_EXTERNAL -DSPDLOG_SHARED_LIB
|
||||
DEP_FILE = CMakeFiles/HansTheGatherer.dir/main.cpp.o.d
|
||||
FLAGS = -std=gnu++23
|
||||
FLAGS = -std=gnu++20
|
||||
OBJECT_DIR = CMakeFiles/HansTheGatherer.dir
|
||||
OBJECT_FILE_DIR = CMakeFiles/HansTheGatherer.dir
|
||||
|
||||
@@ -58,10 +59,10 @@ build CMakeFiles/HansTheGatherer.dir/main.cpp.o: CXX_COMPILER__HansTheGatherer_u
|
||||
#############################################
|
||||
# Link the executable HansTheGatherer
|
||||
|
||||
build HansTheGatherer: CXX_EXECUTABLE_LINKER__HansTheGatherer_ CMakeFiles/HansTheGatherer.dir/main.cpp.o | /usr/lib64/libSDL3.so.0.2.12
|
||||
build HansTheGatherer: CXX_EXECUTABLE_LINKER__HansTheGatherer_ CMakeFiles/HansTheGatherer.dir/main.cpp.o | /usr/lib64/libSDL3.so.0.2.12 /usr/lib64/libspdlog.so.1.15.3 /usr/lib64/libfmt.so.11.1.4
|
||||
DEP_FILE = CMakeFiles/HansTheGatherer.dir/link.d
|
||||
LINK_FLAGS = -Wl,--dependency-file=CMakeFiles/HansTheGatherer.dir/link.d
|
||||
LINK_LIBRARIES = /usr/lib64/libSDL3.so.0.2.12
|
||||
LINK_LIBRARIES = /usr/lib64/libSDL3.so.0.2.12 /usr/lib64/libspdlog.so.1.15.3 /usr/lib64/libfmt.so.11.1.4
|
||||
OBJECT_DIR = CMakeFiles/HansTheGatherer.dir
|
||||
POST_BUILD = :
|
||||
PRE_LINK = :
|
||||
@@ -112,14 +113,14 @@ build all: phony HansTheGatherer
|
||||
#############################################
|
||||
# Re-run CMake if any of its inputs changed.
|
||||
|
||||
build build.ninja: RERUN_CMAKE | /home/derek/Git/HansTheGatherer/CMakeLists.txt /usr/lib64/cmake/SDL3/SDL3Config.cmake /usr/lib64/cmake/SDL3/SDL3ConfigVersion.cmake /usr/lib64/cmake/SDL3/SDL3headersTargets.cmake /usr/lib64/cmake/SDL3/SDL3sharedTargets-relwithdebinfo.cmake /usr/lib64/cmake/SDL3/SDL3sharedTargets.cmake /usr/share/cmake/Modules/CMakeCInformation.cmake /usr/share/cmake/Modules/CMakeCXXInformation.cmake /usr/share/cmake/Modules/CMakeCommonLanguageInclude.cmake /usr/share/cmake/Modules/CMakeGenericSystem.cmake /usr/share/cmake/Modules/CMakeInitializeConfigs.cmake /usr/share/cmake/Modules/CMakeLanguageInformation.cmake /usr/share/cmake/Modules/CMakeSystemSpecificInformation.cmake /usr/share/cmake/Modules/CMakeSystemSpecificInitialize.cmake /usr/share/cmake/Modules/Compiler/CMakeCommonCompilerMacros.cmake /usr/share/cmake/Modules/Compiler/GNU-C.cmake /usr/share/cmake/Modules/Compiler/GNU-CXX.cmake /usr/share/cmake/Modules/Compiler/GNU.cmake /usr/share/cmake/Modules/FeatureSummary.cmake /usr/share/cmake/Modules/Internal/CMakeCLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CMakeCXXLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CMakeCommonLinkerInformation.cmake /usr/share/cmake/Modules/Linker/GNU-C.cmake /usr/share/cmake/Modules/Linker/GNU-CXX.cmake /usr/share/cmake/Modules/Linker/GNU.cmake /usr/share/cmake/Modules/Platform/Linker/GNU.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU-C.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU-CXX.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU.cmake /usr/share/cmake/Modules/Platform/Linux-GNU-C.cmake /usr/share/cmake/Modules/Platform/Linux-GNU-CXX.cmake /usr/share/cmake/Modules/Platform/Linux-GNU.cmake /usr/share/cmake/Modules/Platform/Linux-Initialize.cmake /usr/share/cmake/Modules/Platform/Linux.cmake /usr/share/cmake/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/3.31.6/CMakeCCompiler.cmake CMakeFiles/3.31.6/CMakeCXXCompiler.cmake CMakeFiles/3.31.6/CMakeSystem.cmake
|
||||
build build.ninja: RERUN_CMAKE | /home/derek/Git/HansTheGatherer/CMakeLists.txt /usr/lib64/cmake/SDL3/SDL3Config.cmake /usr/lib64/cmake/SDL3/SDL3ConfigVersion.cmake /usr/lib64/cmake/SDL3/SDL3headersTargets.cmake /usr/lib64/cmake/SDL3/SDL3sharedTargets-relwithdebinfo.cmake /usr/lib64/cmake/SDL3/SDL3sharedTargets.cmake /usr/lib64/cmake/fmt/fmt-config-version.cmake /usr/lib64/cmake/fmt/fmt-config.cmake /usr/lib64/cmake/fmt/fmt-targets-relwithdebinfo.cmake /usr/lib64/cmake/fmt/fmt-targets.cmake /usr/lib64/cmake/spdlog/spdlogConfig.cmake /usr/lib64/cmake/spdlog/spdlogConfigTargets-release.cmake /usr/lib64/cmake/spdlog/spdlogConfigTargets.cmake /usr/lib64/cmake/spdlog/spdlogConfigVersion.cmake /usr/share/cmake/Modules/CMakeCInformation.cmake /usr/share/cmake/Modules/CMakeCXXInformation.cmake /usr/share/cmake/Modules/CMakeCommonLanguageInclude.cmake /usr/share/cmake/Modules/CMakeFindDependencyMacro.cmake /usr/share/cmake/Modules/CMakeGenericSystem.cmake /usr/share/cmake/Modules/CMakeInitializeConfigs.cmake /usr/share/cmake/Modules/CMakeLanguageInformation.cmake /usr/share/cmake/Modules/CMakeSystemSpecificInformation.cmake /usr/share/cmake/Modules/CMakeSystemSpecificInitialize.cmake /usr/share/cmake/Modules/CheckCSourceCompiles.cmake /usr/share/cmake/Modules/CheckIncludeFile.cmake /usr/share/cmake/Modules/CheckLibraryExists.cmake /usr/share/cmake/Modules/Compiler/CMakeCommonCompilerMacros.cmake /usr/share/cmake/Modules/Compiler/GNU-C.cmake /usr/share/cmake/Modules/Compiler/GNU-CXX.cmake /usr/share/cmake/Modules/Compiler/GNU.cmake /usr/share/cmake/Modules/FeatureSummary.cmake /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake /usr/share/cmake/Modules/FindPackageMessage.cmake /usr/share/cmake/Modules/FindThreads.cmake /usr/share/cmake/Modules/Internal/CMakeCLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CMakeCXXLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CMakeCommonLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CheckSourceCompiles.cmake /usr/share/cmake/Modules/Linker/GNU-C.cmake /usr/share/cmake/Modules/Linker/GNU-CXX.cmake /usr/share/cmake/Modules/Linker/GNU.cmake /usr/share/cmake/Modules/Platform/Linker/GNU.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU-C.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU-CXX.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU.cmake /usr/share/cmake/Modules/Platform/Linux-GNU-C.cmake /usr/share/cmake/Modules/Platform/Linux-GNU-CXX.cmake /usr/share/cmake/Modules/Platform/Linux-GNU.cmake /usr/share/cmake/Modules/Platform/Linux-Initialize.cmake /usr/share/cmake/Modules/Platform/Linux.cmake /usr/share/cmake/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/3.31.6/CMakeCCompiler.cmake CMakeFiles/3.31.6/CMakeCXXCompiler.cmake CMakeFiles/3.31.6/CMakeSystem.cmake
|
||||
pool = console
|
||||
|
||||
|
||||
#############################################
|
||||
# A missing CMake input file is not an error.
|
||||
|
||||
build /home/derek/Git/HansTheGatherer/CMakeLists.txt /usr/lib64/cmake/SDL3/SDL3Config.cmake /usr/lib64/cmake/SDL3/SDL3ConfigVersion.cmake /usr/lib64/cmake/SDL3/SDL3headersTargets.cmake /usr/lib64/cmake/SDL3/SDL3sharedTargets-relwithdebinfo.cmake /usr/lib64/cmake/SDL3/SDL3sharedTargets.cmake /usr/share/cmake/Modules/CMakeCInformation.cmake /usr/share/cmake/Modules/CMakeCXXInformation.cmake /usr/share/cmake/Modules/CMakeCommonLanguageInclude.cmake /usr/share/cmake/Modules/CMakeGenericSystem.cmake /usr/share/cmake/Modules/CMakeInitializeConfigs.cmake /usr/share/cmake/Modules/CMakeLanguageInformation.cmake /usr/share/cmake/Modules/CMakeSystemSpecificInformation.cmake /usr/share/cmake/Modules/CMakeSystemSpecificInitialize.cmake /usr/share/cmake/Modules/Compiler/CMakeCommonCompilerMacros.cmake /usr/share/cmake/Modules/Compiler/GNU-C.cmake /usr/share/cmake/Modules/Compiler/GNU-CXX.cmake /usr/share/cmake/Modules/Compiler/GNU.cmake /usr/share/cmake/Modules/FeatureSummary.cmake /usr/share/cmake/Modules/Internal/CMakeCLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CMakeCXXLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CMakeCommonLinkerInformation.cmake /usr/share/cmake/Modules/Linker/GNU-C.cmake /usr/share/cmake/Modules/Linker/GNU-CXX.cmake /usr/share/cmake/Modules/Linker/GNU.cmake /usr/share/cmake/Modules/Platform/Linker/GNU.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU-C.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU-CXX.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU.cmake /usr/share/cmake/Modules/Platform/Linux-GNU-C.cmake /usr/share/cmake/Modules/Platform/Linux-GNU-CXX.cmake /usr/share/cmake/Modules/Platform/Linux-GNU.cmake /usr/share/cmake/Modules/Platform/Linux-Initialize.cmake /usr/share/cmake/Modules/Platform/Linux.cmake /usr/share/cmake/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/3.31.6/CMakeCCompiler.cmake CMakeFiles/3.31.6/CMakeCXXCompiler.cmake CMakeFiles/3.31.6/CMakeSystem.cmake: phony
|
||||
build /home/derek/Git/HansTheGatherer/CMakeLists.txt /usr/lib64/cmake/SDL3/SDL3Config.cmake /usr/lib64/cmake/SDL3/SDL3ConfigVersion.cmake /usr/lib64/cmake/SDL3/SDL3headersTargets.cmake /usr/lib64/cmake/SDL3/SDL3sharedTargets-relwithdebinfo.cmake /usr/lib64/cmake/SDL3/SDL3sharedTargets.cmake /usr/lib64/cmake/fmt/fmt-config-version.cmake /usr/lib64/cmake/fmt/fmt-config.cmake /usr/lib64/cmake/fmt/fmt-targets-relwithdebinfo.cmake /usr/lib64/cmake/fmt/fmt-targets.cmake /usr/lib64/cmake/spdlog/spdlogConfig.cmake /usr/lib64/cmake/spdlog/spdlogConfigTargets-release.cmake /usr/lib64/cmake/spdlog/spdlogConfigTargets.cmake /usr/lib64/cmake/spdlog/spdlogConfigVersion.cmake /usr/share/cmake/Modules/CMakeCInformation.cmake /usr/share/cmake/Modules/CMakeCXXInformation.cmake /usr/share/cmake/Modules/CMakeCommonLanguageInclude.cmake /usr/share/cmake/Modules/CMakeFindDependencyMacro.cmake /usr/share/cmake/Modules/CMakeGenericSystem.cmake /usr/share/cmake/Modules/CMakeInitializeConfigs.cmake /usr/share/cmake/Modules/CMakeLanguageInformation.cmake /usr/share/cmake/Modules/CMakeSystemSpecificInformation.cmake /usr/share/cmake/Modules/CMakeSystemSpecificInitialize.cmake /usr/share/cmake/Modules/CheckCSourceCompiles.cmake /usr/share/cmake/Modules/CheckIncludeFile.cmake /usr/share/cmake/Modules/CheckLibraryExists.cmake /usr/share/cmake/Modules/Compiler/CMakeCommonCompilerMacros.cmake /usr/share/cmake/Modules/Compiler/GNU-C.cmake /usr/share/cmake/Modules/Compiler/GNU-CXX.cmake /usr/share/cmake/Modules/Compiler/GNU.cmake /usr/share/cmake/Modules/FeatureSummary.cmake /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake /usr/share/cmake/Modules/FindPackageMessage.cmake /usr/share/cmake/Modules/FindThreads.cmake /usr/share/cmake/Modules/Internal/CMakeCLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CMakeCXXLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CMakeCommonLinkerInformation.cmake /usr/share/cmake/Modules/Internal/CheckSourceCompiles.cmake /usr/share/cmake/Modules/Linker/GNU-C.cmake /usr/share/cmake/Modules/Linker/GNU-CXX.cmake /usr/share/cmake/Modules/Linker/GNU.cmake /usr/share/cmake/Modules/Platform/Linker/GNU.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU-C.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU-CXX.cmake /usr/share/cmake/Modules/Platform/Linker/Linux-GNU.cmake /usr/share/cmake/Modules/Platform/Linux-GNU-C.cmake /usr/share/cmake/Modules/Platform/Linux-GNU-CXX.cmake /usr/share/cmake/Modules/Platform/Linux-GNU.cmake /usr/share/cmake/Modules/Platform/Linux-Initialize.cmake /usr/share/cmake/Modules/Platform/Linux.cmake /usr/share/cmake/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/3.31.6/CMakeCCompiler.cmake CMakeFiles/3.31.6/CMakeCXXCompiler.cmake CMakeFiles/3.31.6/CMakeSystem.cmake: phony
|
||||
|
||||
|
||||
#############################################
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
[
|
||||
{
|
||||
"directory": "/home/derek/Git/HansTheGatherer/build",
|
||||
"command": "/usr/bin/c++ -std=gnu++23 -o CMakeFiles/HansTheGatherer.dir/main.cpp.o -c /home/derek/Git/HansTheGatherer/main.cpp",
|
||||
"command": "/usr/bin/c++ -DFMT_SHARED -DSPDLOG_COMPILED_LIB -DSPDLOG_FMT_EXTERNAL -DSPDLOG_SHARED_LIB -std=gnu++20 -o CMakeFiles/HansTheGatherer.dir/main.cpp.o -c /home/derek/Git/HansTheGatherer/main.cpp",
|
||||
"file": "/home/derek/Git/HansTheGatherer/main.cpp",
|
||||
"output": "CMakeFiles/HansTheGatherer.dir/main.cpp.o"
|
||||
}
|
||||
|
||||
49
main.cpp
49
main.cpp
@@ -1,7 +1,52 @@
|
||||
#include <print>
|
||||
#include <SDL3/SDL.h>
|
||||
#include <SDL3/SDL_error.h>
|
||||
#include <SDL3/SDL_render.h>
|
||||
#include <spdlog/spdlog.h>
|
||||
|
||||
const uint8_t image_data[] =
|
||||
{
|
||||
#embed "main.cpp"
|
||||
};
|
||||
|
||||
auto main() -> int {
|
||||
std::println("Hello World!");
|
||||
spdlog::info("Initialize SDL...");
|
||||
bool sdl_success = SDL_Init(SDL_INIT_VIDEO);
|
||||
if (!sdl_success) {
|
||||
spdlog::critical("Failed to initialize SDL!\nCause: {}", SDL_GetError());
|
||||
std::terminate();
|
||||
}
|
||||
|
||||
auto *sdl_window = SDL_CreateWindow("HansTheGatherer", 400, 280, 0);
|
||||
if (sdl_window == nullptr) {
|
||||
spdlog::critical("Failed to create SDL window!\nCause: {}", SDL_GetError());
|
||||
}
|
||||
|
||||
auto *sdl_renderer = SDL_CreateRenderer(sdl_window, nullptr);
|
||||
if (sdl_renderer == nullptr) {
|
||||
spdlog::critical("Failed to create SDL renderer!\nCause: {}",
|
||||
SDL_GetError());
|
||||
}
|
||||
|
||||
bool exit_gameloop = false;
|
||||
while (!exit_gameloop) {
|
||||
SDL_Event event;
|
||||
while (SDL_PollEvent(&event)) {
|
||||
switch (event.type) {
|
||||
case SDL_EVENT_QUIT:
|
||||
exit_gameloop = true;
|
||||
break;
|
||||
case SDL_EVENT_KEY_DOWN:
|
||||
if (event.key.key == SDLK_ESCAPE) {
|
||||
exit_gameloop = true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
SDL_DestroyRenderer(sdl_renderer);
|
||||
SDL_DestroyWindow(sdl_window);
|
||||
SDL_Quit();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user