Je voudrais "accrocher" à un jeu en cours, par exemple Mario Bros, et capturer chaque image rendue ... en enregistrant cette image dans un fichier image. FRAPS est un bon exemple de quelque chose de similaire. --Remarque: je ne veux pas capturer l'ensemble de l'écran / du bureau. Je veux capturer une fenêtre ciblée.
J'ai jeté un œil à OBS (Open Broadcasting Software) mais ce n'est pas particulièrement rapide. Ne vous méprenez pas, c'est un excellent logiciel, mais malheureusement il n'y a pas / peu de documentation, ce qui rend un projet massif écrit en c et c ++ presque inaccessible pour un programmeur débutant en c ++.
J'ai également jeté un œil à GamingAnywhere , mais malheureusement, je ne peux pas le faire fonctionner, il y a très peu / pas de documentation, ne fonctionne que dans VS2010 et est désordonné (avec un mauvais nom de variable). Cependant, il s'agit d'un projet de recherche et il est donc compréhensible que ce soit sans papiers et en désordre.
Je sais que cela peut être fait avec OpenGL, GDI et Direct3D, mais je ne trouve pas de bons exemples sur le net.
J'ai lu que glReadlPixels (en utilisant OpenGL) peut être utilisé et j'ai lu la documentation , mais le post ne mentionnait rien sur la connexion à un jeu / une application graphique en cours d'exécution.
Des questions:
Puis-je me connecter aux graphismes d'un jeu développé avec OpenGL, en utilisant, par exemple, Direct3D? La bibliothèque utilisée pour le hook doit-elle être la même que celle utilisée par le jeu?
Comment puis-je me connecter aux images rendues du jeu afin de pouvoir exporter ces images vers des fichiers image ou vers un fichier vidéo? (Juste quelques liens ou une brève explication de ce que je dois faire serait génial)
BackBuffer - J'ai lu qu'il est très rapide d'accéder au BackBuffer pour récupérer les images. Quelqu'un a-t-il un exemple pour moi sur la façon de procéder avec les dernières bibliothèques? J'ai constaté que la plupart des exemples sont obsolètes.
Pour mes besoins, y a-t-il clairement «c'est plus rapide que ça»? Ce que je veux dire, par exemple, serait OpenGL, serait plus rapide pour mes besoins?
Si quelqu'un connaît un projet open source (qui fait essentiellement ce dont j'ai besoin) qui est activement développé et bien documenté, j'aimerais le savoir.