Compare commits

1 Commits
Author SHA1 Message Date
str1k3r d87a345274 feat: SDL3 base 2026-07-21 21:11:35 -04:00
10 changed files with 61 additions and 7 deletions
+12 -1
View File
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR) cmake_minimum_required(VERSION 3.24 FATAL_ERROR)
project(4JLibs LANGUAGES CXX) project(4JLibs LANGUAGES CXX)
@@ -8,6 +8,8 @@ target_include_directories(4JLibs.Globals INTERFACE
${CMAKE_CURRENT_SOURCE_DIR}/inc ${CMAKE_CURRENT_SOURCE_DIR}/inc
) )
target_link_libraries(4JLibs.Globals INTERFACE SDL3::SDL3)
set(CMAKE_DEBUG_POSTFIX "_d") set(CMAKE_DEBUG_POSTFIX "_d")
# msvc specific flags # msvc specific flags
@@ -15,6 +17,15 @@ if(MSVC)
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>") set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
endif() endif()
include(FetchContent)
FetchContent_Declare(
SDL3
GIT_REPOSITORY https://github.com/libsdl-org/SDL.git
GIT_TAG release-3.2.4
)
FetchContent_MakeAvailable(SDL3)
if(WIN32) if(WIN32)
add_subdirectory(impls/Windows_Libs) add_subdirectory(impls/Windows_Libs)
else() else()
+1 -1
View File
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR) cmake_minimum_required(VERSION 3.24 FATAL_ERROR)
project(4JLibs.Windows64 LANGUAGES CXX) project(4JLibs.Windows64 LANGUAGES CXX)
+2 -1
View File
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR) cmake_minimum_required(VERSION 3.24 FATAL_ERROR)
project(4JLibs.Windows64.Input LANGUAGES CXX) project(4JLibs.Windows64.Input LANGUAGES CXX)
@@ -8,6 +8,7 @@ add_library(${PROJECT_NAME} STATIC
src/INP_Keyboard.cpp src/INP_Keyboard.cpp
src/INP_Main.cpp src/INP_Main.cpp
src/INP_StringCheck.cpp src/INP_StringCheck.cpp
src/INP_SDLBridge.cpp
src/LinkedList.cpp src/LinkedList.cpp
src/stdafx.cpp src/stdafx.cpp
) )
@@ -0,0 +1,7 @@
#pragma once
#include "stdafx.h"
namespace SDLBridge
{
}
@@ -25,6 +25,7 @@ SOFTWARE.
#include "4J_Input.h" #include "4J_Input.h"
#include "INP_Keyboard.h" #include "INP_Keyboard.h"
#include "INP_Main.h" #include "INP_Main.h"
#include "INP_SDLBridge.h"
C_4JInput InputManager; C_4JInput InputManager;
CKeyboard InternalKeyboard; CKeyboard InternalKeyboard;
+1 -1
View File
@@ -32,7 +32,7 @@ CInput::CInput()
m_Keyboard = CKeyboard(); m_Keyboard = CKeyboard();
m_uiSigninJoypadMask = 0; m_uiSigninJoypadMask = 0;
for (int i = 0; i < 4; ++i) for (int i = 0; i < MAX_JOYPADS; ++i)
m_bIsMenuDisplayed[i] = 0; m_bIsMenuDisplayed[i] = 0;
InitTime(); InitTime();
@@ -0,0 +1,34 @@
#include "INP_SdlBridge.h"
#include "INP_Main.h"
#include <SDL3/SDL.h>
#include <cstdarg>
#include <cstdio>
namespace
{
SDL_Gamepad* g_pads[MAX_JOYPADS] = {};
bool g_initialised = false;
WORD g_lastButtons[MAX_JOYPADS] = {};
const char* gamepadTypeName(SDL_GamepadType Type)
{
switch (Type)
{
case SDL_GAMEPAD_TYPE_UNKNOWN: return "UNKNOWN";
case SDL_GAMEPAD_TYPE_STANDARD: return "STANDARD";
case SDL_GAMEPAD_TYPE_XBOX360: return "XBOX360";
case SDL_GAMEPAD_TYPE_XBOXONE: return "XBOXONE";
case SDL_GAMEPAD_TYPE_PS3: return "PS3";
case SDL_GAMEPAD_TYPE_PS4: return "PS4";
case SDL_GAMEPAD_TYPE_PS5: return "PS5";
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_PRO: return "SWITCH_PRO";
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_PAIR: return "JOYCON_PAIR";
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_LEFT: return "JOYCON_L";
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_RIGHT: return "JOYCON_R";
default: return "UNKNOWN";
}
}
}
+1 -1
View File
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR) cmake_minimum_required(VERSION 3.24 FATAL_ERROR)
project(4JLibs.Windows64.Profile LANGUAGES CXX) project(4JLibs.Windows64.Profile LANGUAGES CXX)
+1 -1
View File
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR) cmake_minimum_required(VERSION 3.24 FATAL_ERROR)
project(4JLibs.Windows64.Render LANGUAGES C CXX) project(4JLibs.Windows64.Render LANGUAGES C CXX)
+1 -1
View File
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR) cmake_minimum_required(VERSION 3.24 FATAL_ERROR)
project(4JLibs.Windows64.Storage LANGUAGES C CXX) project(4JLibs.Windows64.Storage LANGUAGES C CXX)