U.S. Patent No. 10,726,611: Dynamic texture mapping using megatextures

Issued July 28, 2020, to Electronic Arts Inc.
Filed/Priority to August 24, 2016

Overview:

U.S. Patent No. 10,726,611 (the ‘611 patent) concerns the use of megatextures for dynamic blending of textures of an object in different instances in a game environment. This allows more variation of the same object in a game environment, while using less storage than multiple instances would traditionally take. The ‘611 patent details a method that identifies several different instances of a virtual object in the environment, and provides a first unaltered version and second altered version of the object. A megatexture is provided which includes several blend maps associated with the object, each instance of the object being associated with one of the blend maps in the megatexture. Each blend map has grid elements corresponding respectively to pixels on a location of a particular instance of the object. Each grid element has a transform value which indicates a degree of blending between the unaltered object and the particular altered instance of the object.

Thus, each instance of the object is rendered by blending the first, unaltered version, based on the transform values. Then the ‘611 patent generates instructions to output the particular instance of the object in the game environment.

This could be useful for creating variation in a game environment, because an object can be loaded with a variety of instances, appearing different in each instance. The ‘611 patent can also be used to alter objects based on player interactions, for example indicating amount of damage a player has inflicted on an object.

Abstract:

Embodiments of systems and methods described herein disclose the use of megatextures to specify blend maps for different instances of an object within a game environment. Each blend map may specify a blending between two or more different versions of the object. In some embodiments, the two or more different versions may correspond to different visual appearances associated with the object (for example, an undamaged object and a damaged object). The blend map for an instance of the object may be dynamically updated based on one or more actions within the game environment, allowing for the visual appearance of the object instance to change within the game environment in response to various actions.

 

Illustrative Claim:

  1. A computer-implemented method comprising: as implemented by an interactive computing system configured with specific computer-executable instructions during runtime of a game application, the game application including a game environment, identifying a plurality of instances of a virtual object for display within the game environment; providing a first version of the virtual object and a second version of the virtual object, wherein the first version is an unaltered version of the virtual object and the second version is an altered version of the virtual object, wherein the first version and the second version of the virtual object are used for rendering each of plurality of instances of the virtual object within the game environment; providing a megatexture including a plurality of blend maps associated with the virtual object, wherein each instance of the plurality of instances of the virtual object is associated with a unique blend map of the plurality of blend maps, wherein each blend map defines a plurality of grid elements, wherein each grid element corresponds to a plurality of pixels at a defined location of a particular instance of the virtual object, wherein each defined location of the particular instance of the virtual object corresponds to the same location of the first version of the virtual object and the second version of the virtual object, wherein each grid element has a corresponding transform value used for rendering each instance of the virtual object, wherein each transform value of each blend map indicates a degree of blending between the unaltered version of the virtual object and the altered version of the virtual object at the defined location of the particular instance of the virtual object that corresponds to a particular grid element; for each instance of the virtual object of the plurality of instances of the virtual object within the game environment: identifying a particular blend map of the plurality of blend maps associated with the particular instance of the virtual object; rendering the particular instance of the virtual object by blending the first version of the virtual object with the second version of the virtual object based at least in part on the transform values of the particular blend map resulting in a rendered instance of the virtual object; and generating instructions to output the rendered instance of the virtual object within the game environment.