Come virtualizzare / sandbox windows games per simulare gli input per ognuno individualmente?

1

Stiamo lavorando a un prodotto di streaming di giochi in una startup che funziona davvero bene al suo stato attuale. I giochi possono essere riprodotti su Internet con una latenza molto bassa sull'applicazione client.

Ora esistono diversi modi per far funzionare il sistema per un numero elevato di utenti. In primo luogo, le macchine virtuali, vale a dire una VM di Windows per ciascun client connesso che esegue un singolo gioco a schermo intero e quindi ottimizzano le risorse utilizzate come macchine virtuali. La simulazione di input è più semplice ( SendInput per la maggior parte dei giochi) .

In secondo luogo, il modo corrente è di eseguire più giochi (ciascuno giocato da un utente diverso) in modalità finestra fornendo a ogni gioco una sandbox. La simulazione dell'input in questo caso è il problema reale . I giochi possono utilizzare tutti i messaggi Window, Direct Input, Raw Input o qualsiasi altro modo per ottenere input dai dispositivi. Funziona solo per alcuni giochi ma non sempre possibile per simulare input su ogni processo di gioco . È disordinato.

Terzo, sessioni di Windows Server, che siamo non in grado di configurare per più utenti. Più utenti riceveranno il flusso di gioco dalle loro sessioni individuali. Poiché ogni gioco è in esecuzione in un proprio ambiente Windows autonomo, la simulazione di input è più semplice.

Nvidia fornisce API per l'acquisizione a schermo intero e DirectX, l'acquisizione OpenGL di singole applicazioni. Hanno suggerito di eseguire giochi / app in sandbox in modo che non interferiscano. La simulazione di input è stato il più grande ostacolo qui, quindi abbiamo provato le sessioni su Windows Server. Ma per mantenere viva ogni sessione, RDP deve restare connesso.

Questa domanda è stata chiusa su SF e SO è stato troppo arrabbiato quindi l'ho cancellato. Quindi la mia domanda è quale sarebbe il modo migliore per virtualizzare l'applicazione di gioco in modo che tutti i giochi su SO ricevano input singolarmente senza interferire con un altro?

    
posta LifeH2O 11.04.2016 - 12:06
fonte

0 risposte

Leggi altre domande sui tag