Phase 0: donor-launch spike foundation
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>
This commit is contained in:
18
host/CMakeLists.txt
Normal file
18
host/CMakeLists.txt
Normal file
@@ -0,0 +1,18 @@
|
||||
add_executable(coop_host WIN32
|
||||
src/main.cpp
|
||||
src/d3d11_window.cpp
|
||||
src/imgui_layer.cpp
|
||||
src/debug_overlay.cpp
|
||||
src/input/xinput_source.cpp)
|
||||
|
||||
target_include_directories(coop_host PRIVATE src)
|
||||
|
||||
target_link_libraries(coop_host PRIVATE
|
||||
coop_common
|
||||
imgui
|
||||
d3d11
|
||||
dxgi
|
||||
dwmapi
|
||||
xinput)
|
||||
|
||||
set_target_properties(coop_host PROPERTIES OUTPUT_NAME "coop_host")
|
||||
Reference in New Issue
Block a user