Tôi muốn "nối" vào một trò chơi đang chạy, giả sử Mario Bros và chụp từng khung hình được hiển thị ... lưu khung hình đó vào một tệp hình ảnh. Một ví dụ điển hình của một cái gì đó tương tự là FRAPS. --Lưu ý: Tôi không muốn chụp toàn bộ màn hình / máy tính để bàn. Tôi muốn chụp một cửa sổ được nhắm mục tiêu.
Tôi đã xem qua OBS (Phần mềm phát sóng mở) nhưng nó không đặc biệt nhanh. Đừng hiểu sai ý tôi, đó là phần mềm tuyệt vời, nhưng tiếc là không có / tài liệu kém, tạo ra một dự án lớn được viết bằng c và c ++ gần như không thể truy cập được đối với một lập trình viên mới đến c ++.
Tôi cũng đã xem qua GamingAnywhere , nhưng thật không may, tôi không thể làm cho nó hoạt động được, có rất ít / không có tài liệu, chỉ chạy trong VS2010 và rất lộn xộn (với cách đặt tên biến kém). Tuy nhiên, nó là một dự án nghiên cứu và do đó nó là không có giấy tờ và lộn xộn.
Tôi biết rằng điều này có thể được thực hiện với OpenGL, GDI và với Direct3D, nhưng tôi không thể tìm thấy một số ví dụ hay trên mạng.
Tôi đọc rằng glReadlPixels (sử dụng OpenGL) có thể được sử dụng và tôi đã đọc tài liệu này , nhưng bài viết không đề cập gì đến việc móc vào đồ họa ứng dụng / trò chơi đang chạy.
Câu hỏi:
Tôi có thể kết nối với đồ họa của một trò chơi được phát triển bằng OpenGL không, bằng cách sử dụng Direct3D? Có phải thư viện được sử dụng để kết nối phải giống với thư viện được sử dụng trong trò chơi không?
Làm cách nào để tôi nối vào các khung được hiển thị của trò chơi để tôi có thể xuất các khung đó thành tệp hình ảnh hoặc tệp video? (Chỉ cần một số liên kết hoặc giải thích ngắn gọn về những gì tôi cần làm sẽ rất tuyệt)
BackBuffer - Tôi đọc được rằng việc truy cập BackBuffer rất nhanh để lấy các khung. Có ai có một ví dụ cho tôi về cách làm điều này với các thư viện mới nhất không? Tôi đã thấy rằng hầu hết các ví dụ đã lỗi thời.
Đối với mục đích của tôi, có rõ ràng "điều này nhanh hơn thế không"? Ý tôi là, liệu OpenGL có thể nhanh hơn cho mục đích của tôi không?
Nếu ai đó biết về một dự án nguồn mở (về cơ bản là những gì tôi cần) được phát triển tích cực và được ghi chép tốt, tôi rất muốn biết về nó.