A cloud game data acquisition method and system
A data acquisition system and data acquisition technology, applied in the field of cloud games, can solve problems such as high data transmission delay requirements, affecting user experience, increasing game data transmission delay, etc., to achieve the goal of reducing delay and improving user experience Effect
- Summary
- Abstract
- Description
- Claims
- Application Information
AI Technical Summary
Problems solved by technology
Method used
Image
Examples
Embodiment 1
[0055] This embodiment provides a cloud game data collection method, the method includes the following steps:
[0056]Inject the custom DLL into the target game process, and insert the custom MyEndScence function for collecting data into the rendering pipeline of Direct3D;
[0057] Make the target game process jump to the MyEndScence function, copy the back-end cache BackBuffer of the target game from the video memory of the graphics card to the internal memory to obtain the original RGB pixel data, and encode the original RGB pixel data.
[0058] Specifically, see figure 1 As shown, the specific implementation process of the above method is as follows:
[0059] S1. Inject the custom DLL into the target game process, and execute the custom DLL in the target game process;
[0060] S2. Insert the custom MyEndScence function for collecting data into the rendering pipeline of Direct3D;
[0061] S3. Make the target game process jump to the MyEndScence function, and copy the back...
Embodiment 2
[0067] see figure 2 As shown, as a better optional method, on the basis of Embodiment 1, the custom DLL is injected into the target game process, and the custom DLL is executed in the target game process, and the specific steps include:
[0068] S11. Create a process in a paused state to execute the target game;
[0069] S12. Apply for memory space in the target game process, and store the path of the custom DLL;
[0070] S13. Create a remote thread in the target game process, and use the remote thread to load a custom DLL;
[0071] In this embodiment, the remote thread calls the LoadLibrary function to load the injected DLL, and the function of the LoadLibrary function is to load the specified module into the address space of the calling process. The name of the module can be a library module (.dll file).
[0072] S14. Restoring the target game process to the running state.
[0073] After the above steps are completed, the custom DLL can be executed in the target game, a...
Embodiment 3
[0075] As a better alternative, on the basis of Embodiment 1, the target game process is jumped to the MyEndScence function, and the specific steps include:
[0076] Create an IDirect3DDevice9 interface pointer object in a custom DLL;
[0077] IDirect3DDevice9 is a device pointer interface in Direct3D, which represents the physical hardware device used to display 3D images. The resource of the physical hardware device (GPU) is called through the pointer interface to complete the rendering pipeline of the image.
[0078] Use the base address of the IDirect3DDevice9 interface pointer object to find the address of the virtual function EndScence, replace the address of the virtual function EndScence with a jump command, and specify the jump address as the custom MyEndScence function address;
[0079] Hook the virtual function EndScence and execute the virtual function EndScence.
[0080] Hook refers to intercepting system messages and functions or messages and functions of a cer...
PUM
Abstract
Description
Claims
Application Information
- R&D Engineer
- R&D Manager
- IP Professional
- Industry Leading Data Capabilities
- Powerful AI technology
- Patent DNA Extraction
Browse by: Latest US Patents, China's latest patents, Technical Efficacy Thesaurus, Application Domain, Technology Topic, Popular Technical Reports.
© 2024 PatSnap. All rights reserved.Legal|Privacy policy|Modern Slavery Act Transparency Statement|Sitemap|About US| Contact US: help@patsnap.com