Videos in Visual Basic aufzeichnen ?

Clocker 2800+

Lt. Commander
Registriert
Apr. 2007
Beiträge
1.409
Hallo,

gibt es eine Möglichkeit, aus Spielen (DirectX) den Spielverlauf als Video zu grabben und es dann abzuspeichern?
ocx, code, ... !

Also im Prinzip so wie das Tool "FRAPS".
 
Ich weiß nicht, wie FRAPS heute funktioniert, aber früher war es immer so, dass die D3D-DLL gehookt wurde, also eine eigene D3D-DLL vorhanden war, die alle Aufrufe an die eigentliche Microsoft D3D-DLL weitergeleitet hat und bei der Anzeige eines neuen Frames diesen kopiert hat. Mit VB wirst du da nicht weit kommen, zumal man mit der Standard-Methode (Druck-Taste) nicht einmal ein D3D-Fenster capturen kann und die Performance mit dieser Methode (und vor allem VB) auch unbrauchbar wäre.
 
Ich mache Screenshots von Spielen in D3D9 und D3D10 mit Visual Basic. Wo ist da das Problem? Das mit Videos wäre zusätzlich interessant, aber ich fange gerade erst mit DirectX in VB an, da ist da noch nicht dran zu denken. Die Performance ist übrigens gut, da die Bilder nicht sofort in einem Stück auf Platte geschrieben werden sondern nach und nach, gerade um Lags zu vermeiden.
 
MrDesperados schrieb:
Das mit Videos wäre zusätzlich interessant, aber ich fange gerade erst mit DirectX in VB an
Heißt das so viel, wie du machst die Screenshots von deinen eigenen Kreationen? Wenn ja, das ist natürlich kein Problem, einfach den Framebuffer kopieren und fertig. Problematischer wird es, Screenshots von Fremdanwendungen unter D3D zu machen.
 
Aha,

ich habe mittlerweile auch schon im Internet gesucht, aber auch nix gefunden.

ich bräuchte das aber wirklich.

P.S. heißt die "D3D-DLL" datei von Fraps etwa: "d3d9.dll" = für directX 9 spiele, "d3d8.dll" = für directX 8 spiele, ... ?
 
Clocker 2800+ schrieb:
P.S. heißt die "D3D-DLL" datei von Fraps etwa: "d3d9.dll" = für directX 9 spiele, "d3d8.dll" = für directX 8 spiele, ... ?
Was solls denn sonst sein - der Name ist doch wirklich sprechend ;)
 
Ich hab jetzt noch einmal genauer nachgeschaut. Im Grunde funktioniert FRAPS wirklich immer noch so, wie in meinem ersten Post geschrieben, allerdings gibt es keine DLL-Dateien. Hier ist ein guter Beitrag, wie wohl heute DLL-Dateien gehookt werden. Der Beitrag ist allerdings für einen Programmieranfänger wohl noch sehr schwere Kost.
 
Eins kann ich dir garantieren, mit einer verwalteten Programmiersprache wie den .Net Programmiersprachen C# und VB oder auch Java wirst du es nicht schaffen, da es ganz einfach nicht möglich ist. Man müsste zumindest den Teil, der die DLL hookt in C oder sogar Assembler schreiben.
 
Das habe ich mir schon gedacht, dass man die Dll nicht in VB schreiben kann (darf).

Vielleicht gibt es ja irgendwo diese dll-Dateien zum downloaden ?
Oder selbst machen ?
 
Zuletzt bearbeitet:
Zurück
Oben