US10872451B2ActiveUtilityA1

3D avatar rendering

94
Assignee: SNAP INCPriority: Oct 31, 2018Filed: Oct 31, 2018Granted: Dec 22, 2020
Est. expiryOct 31, 2038(~12.3 yrs left)· nominal 20-yr term from priority
H04L 51/04G06T 2219/2008G06T 2219/024G06T 2210/36G06T 19/20G06T 17/20G06T 15/04G06T 13/40A63F 2300/6615A63F 13/56A63F 13/53
94
PatentIndex Score
75
Cited by
188
References
20
Claims

Abstract

Aspects of the present disclosure involve a system comprising a computer-readable storage medium storing at least one program and a method for rendering an avatar. A first avatar having a first level of detail is stored in a database, the first avatar including a first plurality of components. A level of detail of each of the first plurality of components is reduced separately from each other. A second plurality of components comprising the reduced level of detail of each of the first plurality of components is stored. A request is received for the first avatar in a second level of detail that comprises a lower level of detail than the first level of detail. In response to receiving the request, the second plurality of components is assembled to generate a second avatar having the second level of detail.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method comprising:
 storing in a database a first avatar having a first level of detail, the first avatar including a first plurality of components; 
 reducing a level of detail of each of the first plurality of components separately from each other; 
 storing a second plurality of components comprising the reduced level of detail of each of the first plurality of components; 
 receiving a request for the first avatar in a second level of detail that comprises a lower level of detail than the first level of detail; 
 in response to receiving the request, assembling the second plurality of components to generate a second avatar having the second level of detail; 
 determining a first identity of a first user associated with the second avatar and a second identity of a second user associated with a third avatar; and 
 based on the determined first identity and the determined second identity, displaying the second avatar having the second level of detail together with a third avatar having the first level of detail. 
 
     
     
       2. The method of  claim 1 , wherein the second identity indicates that the user is a leader in a game, further comprising causing the third avatar with a greater level of detail than the second avatar to be presented with the second avatar for the leader in the game, wherein each of the first and second plurality of components includes at least one of a rig, a geometric model, or at least one texture, wherein the rig includes a skeleton with a plurality of bones that defines how the bones move relative to each other, and wherein the geometric model includes a plurality of triangles representing a surface of a corresponding avatar. 
     
     
       3. The method of  claim 2 , wherein reducing the level of detail comprises reducing the rig of the first avatar from having 216 bones to 16 bones separately from the geometric model or the at least one texture of the first avatar. 
     
     
       4. The method of  claim 2 , wherein reducing the level of detail comprises reducing the number of triangles in the geometric model of the first avatar from 10000 triangles to 2000 triangles separately from the rig or the at least one texture of the first avatar. 
     
     
       5. The method of  claim 2 , wherein reducing the level of detail comprises down sampling, resizing, and quantizing at least one texture of the first avatar separately from the rig or the geometric model of the first avatar. 
     
     
       6. The method of  claim 2  further comprising maintaining same names of bones common to a rig of the first plurality of components and a rig of the second plurality of components. 
     
     
       7. The method of  claim 1  further comprising animating the second avatar by:
 retrieving a first facial texture of the first avatar in the second level of detail; 
 retrieving a second facial texture of the first avatar in the second level of detail; and 
 assembling the second avatar using the first facial texture, wherein the first facial texture in the assembled second avatar is swapped with the second facial texture during display of the second avatar to animate the second avatar. 
 
     
     
       8. The method of  claim 7  further comprising:
 receiving a request for an expression associated with the second avatar; and 
 determining a sequence of facial textures associated with the expression includes the first facial texture followed by the second facial texture, wherein the swapping results in a change in expression represented by the second avatar from a given expression to the requested expression. 
 
     
     
       9. The method of  claim 7 ; wherein the second avatar is a three-dimensional avatar and the first and second facial textures are two-dimensional textures. 
     
     
       10. The method of  claim 1  further comprising presenting the first avatar in a messaging application and presenting the second avatar in a gaming application. 
     
     
       11. The method of  claim 1  further comprising reducing a level of detail of a third plurality of components associated with a collection of avatars. 
     
     
       12. The method of  claim 1  further comprising presenting a plurality of avatars, including the second avatar, in the second level of detail, wherein the plurality of avatars are presented in different levels of detail based on priority associated with the plurality of avatars. 
     
     
       13. The method of  claim 1 , wherein the second avatar is generated in response to receiving the request for the first avatar in the second level of detail and in response to determining that the second avatar having the second level of detail has not been previously generated. 
     
     
       14. The method of  claim 1 , wherein reducing the level of detail comprises associating less than all of a rig of the first avatar with a texture of the first avatar. 
     
     
       15. The method of  claim 14  further comprising associating only a head joint of the rig of the first avatar with at least one of facial hair; hair, a hat, or glasses of the first avatar. 
     
     
       16. The method of  claim 14  further comprising assembling a third avatar using portions of the rig of the first avatar for which the level of detail was reduced. 
     
     
       17. A system comprising:
 a processor configured to perform operations comprising: 
 storing in a database a first avatar having a first level of detail; the first avatar including a first plurality of components; 
 reducing a level of detail of each of the first plurality of components separately from each other; 
 storing a second plurality of components comprising the reduced level of detail of each of the first plurality of components; 
 receiving a request for the first avatar in a second level of detail that comprises a lower level of detail than the first level of detail; 
 in response to receiving the request, assembling the second plurality of components to generate a second avatar having the second level of detail; 
 determining a first identity of a first user associated with the second avatar and a second identity of a second user associated with a third avatar; and 
 based on the determined first identity and the determined second identity, displaying the second avatar having the second level of detail together with a third avatar having the first level of detail. 
 
     
     
       18. The system of  claim 17 , wherein the operations further comprise operations for animating the second avatar by:
 retrieving a first facial texture of the first avatar in the second level of detail; 
 retrieving a second facial texture of the first avatar in the second level of detail; and 
 assembling the second avatar using the first facial texture, wherein the first facial texture in the assembled second avatar is swapped with the second facial texture during display of the second avatar to animate the second avatar. 
 
     
     
       19. The method of  claim 18 , wherein the operations further comprise:
 receiving a request for an expression associated with the second avatar; and 
 determining a sequence of facial textures associated with the expression includes the first facial expression followed by the second facial expression, wherein the swapping results in a change in expression represented by the second avatar from a given expression to the requested expression. 
 
     
     
       20. A non-transitory machine-readable storage medium that includes instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:
 storing in a database a first avatar having a first level of detail, the first avatar including a first plurality of components; 
 reducing a level of detail of each of the first plurality of components separately from each other; 
 storing a second plurality of components comprising the reduced level of detail of each of the first plurality of components; 
 receiving a request for the first avatar in a second level of detail that comprises a lower level of detail than the first level of detail; 
 in response to receiving the request, assembling the second plurality of components to generate a second avatar having the second level of detail; 
 determining a first identity of a first user associated with the second avatar and a second identity of a second user associated with a third avatar; and 
 based on the determined first identity and the determined second identity, displaying the second avatar having the second level of detail together with a third avatar having the first level of detail.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.