Scaffold CoopAllTheThings: Remote Play Together for any XInput game via a mirror app under a donor appid (real game keeps its own appid, so DRM, achievements, and playtime stay intact). - Build: CMake skeleton, ImGui + SafetyHook submodules (no vcpkg) - common/: host<->hook IPC contract (seqlock pad state, shared-memory RAII) - host/: borderless D3D11 window + ImGui overlay listing visible XInput pads, behind an InputSource interface (Steam Input slots in later) - README documents the Phase 0 donor-launch validation procedure, anti-cheat limitation, and XInput/bitness constraints Phase 0 validates the riskiest assumption (Steam RPT streams an arbitrary window under a donor appid and routes guest input to it) before capture and injection are built. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
21 lines
537 B
CMake
21 lines
537 B
CMake
# Dear ImGui built as a static lib with the Win32 + DX11 backends the host uses.
|
|
add_library(imgui STATIC
|
|
imgui/imgui.cpp
|
|
imgui/imgui_draw.cpp
|
|
imgui/imgui_tables.cpp
|
|
imgui/imgui_widgets.cpp
|
|
imgui/imgui_demo.cpp
|
|
imgui/backends/imgui_impl_win32.cpp
|
|
imgui/backends/imgui_impl_dx11.cpp)
|
|
|
|
target_include_directories(imgui PUBLIC
|
|
imgui
|
|
imgui/backends)
|
|
|
|
# ImGui's own sources are third-party; don't subject them to /W4.
|
|
if(MSVC)
|
|
target_compile_options(imgui PRIVATE /W0)
|
|
endif()
|
|
|
|
target_link_libraries(imgui PUBLIC d3d11 dxgi dwmapi)
|