Wie kann ich eine Windows-App in einer isolierten Umgebung ausführen und Filmmaterial daraus aufnehmen?

320
Soren

Ich habe ein Spiel, bei dem Demo exportiert wird. Ich möchte in der Lage sein, besagte Demos zu rendern, ohne meinen vollen Desktop zu nehmen. Ich möchte auch nicht, dass meine Spieldaten die Wiedergabe der Demo beeinträchtigen.

Gibt es einen Windows-Befehl oder eine Art Java-Bibliothek, mit der ich dies tun kann?

VSync ist für alle Layer erforderlich, da ich keine gebrochenen oder halb gerenderten Bilder verwenden möchte.

0
Dies erfordert eine Drittanbieteranwendung, die eine Sandbox-Umgebung erstellt. Es gibt viele Möglichkeiten. Darüber hinaus, wenn Sie über UWP-Anwendungen sprechen, sind sie bereits in einem Sandkasten. Ramhound vor 6 Jahren 0

1 Antwort auf die Frage

0
alpha_989

VirtualBox ist eine sehr leistungsfähige Lösung, die Ihre Anforderungen erfüllt.

Mit dem folgenden Befehl können Sie Screenshots / Videos aufnehmen. (Sie müssen den Befehl basierend auf dem Namen Ihrer VM und dem Dateinamen anpassen, in dem Sie die Ausgabe speichern möchten.): Https://www.virtualbox.org/manual/ch08.html#vboxmanage-controlvm :

VBoxManage modifyvm vm_name screenshotpng 

Um ein Video aufzunehmen, verwenden Sie https://www.virtualbox.org/manual/ch08.html#vboxmanage-modifyvm-videocap :

VBoxManage controlvm vm_name videocapscreens 

Sie können dies auch mit dem GUI-Tool von VirtualBox tun: http://geekthis.net/post/virtualbox-video-capture/

Kann ich alles VSync machen? Ich möchte keine teilweise gerenderten Frames. Soren vor 6 Jahren 0
Dies ist ein zusätzliches Detail, das Sie Ihrer obigen Frage wahrscheinlich hinzufügen sollten. Es wird höchstwahrscheinlich funktionieren, da VirtualBox in der Entwicklung für alle Arten von Virtualisierung verwendet wird, aber ich habe nicht geprüft, ob vsync funktioniert oder nicht. Sie können eine der VMs von hier https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/ herunterladen und schnell überprüfen, ob es funktioniert oder nicht. alpha_989 vor 6 Jahren 0