Ich hab natürlich keine Ahnung von sowas, aber ich schätze sowas zu programmieren ist schon relativ aufwändig. Ich vermute unter anderem musst du folgendes tun:
1) Eine Möglichkeit finden das Spiel zweimal auf deinem System zu starten. Nicht alle Spiele machen das mit. Eine VM wäre eine Möglichkeit, wenn diese eine beschleunigte Grafikkarte bereitstellt.
2) Eine der beiden Spielinstanzen sollte für dich normal sichtbar sein, und die andere unsichtbar. Denn ich nehme mal an, das Spiel zweimal im Fenstermodus zu starten würde dich sicherlich stören. Wieder ist eine VM eine Möglichkeit. Aber eine andere Möglichkeit wäre Windows zu überreden einen zweiten (virtuellen) Bildschirm zu erstellen. Ob und wie das praktisch geht, weiß ich allerdings nicht.
3) Das Bild der anderen Spielinstanz muss irgendwie an das Notebook deines Freundes geschickt werden. Das geht zum Beispiel nicht, wenn diese Instanz minimiert ist. Aber in einer VM oder wenn sie auf einem zweiten Monitor wäre, dann würde das gehen.
4) Die Eingaben vom Notebook deines Freundes müssen an die zweite Spielinstanz geschickt werden. Das ist auch einfach, wenn du das Spiel in einer VM laufen lässt.
Zur Lösung mit einer VM:
zu 1+2) VMware bietet laut Eigenbeschreibung gute 3D-Grafikbeschleunigung. Das wäre also eine Möglichkeit, wenn du das mit einer VM lösen willst. Wenn das Spiel nur eine Instanz gleichzeitig zulässt, hätte ich auch gar keine andere Idee, wie das so einfach gehen sollte.
zu 3) Das kannst du das eventuell mit jeder beliebigen VNC-Software, vielleicht auch mit Windows Remote Desktop, oder vielleicht auch mit VLC machen. Die Qualität (Framerate) wird vermutlich nicht gerade berauschend sein. Die Alternative wäre vernünftige Streaming-Software für Spiele wie XSplit oder Open Broadcaster. Die installierst du dann in der VM und richtest so ein, dass der Stream im Netzwerk bereitgestellt wird. Dein Freund kann sich dann da mit dem Notebook über VLC oder so verbinden. (VLC müsste man allerdings evtl. dazu bringen Hotkeys zu ignorieren.)
zu 4) Mit Remote Desktop ist das einfach, aber wenn du die Streaming-Lösung nimmst, ist das sicherlich aufwändiger. Möglicherweise geht das mit KVM-Software wie Synergy. Ich weiß nicht, ob man die so einrichten kann, dass der Fokus nur auf dem anderen System und nicht mehr auf dem lokalen liegt. Aber wenn ja, dann wäre das eine einfache Möglichkeit. Wenn nicht, dann müsstest du Synergy nachprogrammieren.
Wenn du alles selbst machen willst:
Im Prinzip musst du nur das oben beschriebene nachprogrammieren. Also
- eine VM oder einen magischen Windows-Treiber, der einen zweiten Bildschirm erstellt
- eine Streaming-Software, die das Bild aufzeichnet, komprimiert und im Netzwerk übermittelt
- ein Streaming-Client, der das Bild wieder ausgibt
- in diesen Streaming-Client integriert ein Modul, das Tastendrücke und Mausbewegungen übers Netzwerk übermittelt
- in den Streaming-Server integriert ein Modul, das aus dem Netzwerk empfangene Tastendrücke und Mausbewegungen wieder auf dem System umsetzt
Also ganz einfach. Vielleicht nen Abend mal ein paar Stunden hinsetzen und schon läuft die Sache. Und als Bonus hast du nebenbei 3-4 kommerziell verwertbare Produkte erstellt.