Adaptive Video Game Canvas Prefetching for Memory Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional online video games require users to download large files upfront, leading to delayed access and frustrating experiences due to the need for entire game downloads and subsequent updates, which can be tens of gigabytes in size.
Innovation Solution
The method involves breaking down the video game map into sectors or canvases, predicting player movement to pre-load adjacent canvases, and prioritizing data download based on criteria such as object type, distance, and memory pressure, allowing for on-demand data streaming and efficient unloading of unnecessary data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If the entire game is downloaded upfront, then all game files are present on the file system making development easier, but the end-user has to download the entire game before being able to play
Solution Approach 1:
The game content is segmented into multiple canvases or levels, where only the first canvas is downloaded upfront. Subsequent canvases are downloaded on-demand as the player progresses through the game, eliminating the need to download the entire game before playing.
Solution Approach 2:
The first canvas containing essential game elements is prepared and downloaded in advance, allowing immediate gameplay. Additional canvases are prepared and downloaded beforehand only when needed based on player progression, optimizing both development ease and download time.
2Reliability
If large updates and patches are distributed, then game content is kept up to date, but delays in accessing updated game content frustrate users
Solution Approach 1:
Game updates are segmented by canvas, allowing incremental updates where only specific canvases or portions of the game are updated and downloaded, rather than requiring full game re-downloads for updates.
Solution Approach 2:
Only the necessary portions of the game (specific canvases) are updated and downloaded based on player needs, rather than distributing complete game updates, reducing update size and access time.
3Ease of operation
If all game data is loaded into memory, then complete game functionality is available, but memory pressure on end-user devices increases
Solution Approach 1:
Game data is segmented by canvas, with only the current and potentially needed canvases loaded into memory at any given time. As players move between canvases, memory is dynamically allocated and freed, reducing overall memory pressure while maintaining complete game functionality.
Data Source
AI summary
A device operates by receiving prefetch data associated with a video game, wherein the prefetch data includes an amount of first video gaming data to be prefetched that is determined based on performance parameters; executing the video game via the end user device; receiving user input at a user interface associated with controlling movement of a player in a first region of the video game; predicting, based on the movement of the player in the first region, a movement of the player to a second region of the video game; lazy loading second video gaming data and prior to the player entering the region, wherein the lazy loading is adapted based on the performance parameters to a bandwidth that is a predetermined amount less than the connection speed; and continuing executing the video game on the end user device based at least in part on the second video gaming data.


