DEV Community
Follow
Development of Real-Time Remote Desktop App
The project aims to create a low-latency remote desktop solution for gaming, allowing users to play PC games remotely. The core idea involves using a home gaming PC as a server and accessing it from a lightweight client. Key design principles prioritize GPU utilization for speed, targeting under 50 ms latency. The system uses Windows, CUDA, DirectX, and NVENC to capture, process, and encode game screens, leveraging the GPU for efficiency. A CUDA-DirectX interop allows data to move directly between them. Avoiding CPU round trips and using GPU memory exclusively is fundamental to minimize latency. The client will support iGPUs to broaden compatibility with laptops. Development included overcoming challenges of interop and NVENC's undocumented behaviors. This solution supports multi-monitor, which enhances gameplay. Further development includes iGPU support, latency reduction, and network resilience. The described implementation delivers a latency of about 40–60ms. The project's success hinges on minimizing CPU involvement to optimize GPU efficiency.