# US 11,908,082 B2 · 3D paint effects in a messaging system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,908,082 B2
- Document ID: US11908082B2
- Status: Granted
- Kind: B2
- Application number: 18/110,128
- Filed: 2023-02-15
- Published: 2023-06-22
- Granted: 2024-02-20
- Earliest claimed: 2020-03-27
- Assignees: Snap Inc.
- Applicants: Snap Inc.
- Inventors: Piers George Cowburn; Kyle Goodrich; Samuel Edward Hare; Maxim Maximov Lazarov; David Li; Tony Mathew; Andrew James McPhee; Daniel Moreno; Isac Andreas Müller Sandvik; Wentao Shang
- Web page: https://patentgrep.com/patent/US11908082B2

## CPC

- G06T 19/006: {Mixed reality (object pose determination, tracking or camera calibration for mixed reality G06T7/00)}
- G06F 3/011: {Arrangements for interaction with the human body, e.g. for user immersion in virtual reality (blind teaching G09B21/00)}
- G06F 3/017: {Gesture based interaction, e.g. based on a set of recognized hand gestures (interaction based on gestures traced on a digitiser G06F3/04883)}
- G06F 3/0346: with detection of the device orientation or free movement in a three-dimensional [3D] space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
- G06Q 10/40: Business processes related to social networking or social networking services
- G06T 11/23: using straight lines or curves
- G06T 17/20: Finite element generation, e.g. wire-frame surface description, {tesselation}
- G06T 19/20: Editing of three-dimensional [3D] images, e.g. changing shapes or colours, aligning objects or positioning parts
- G06T 2200/24: involving graphical user interfaces [GUIs]
- G06T 2219/2012: Colour editing, changing, or manipulating; Use of colour codes
- G06T 2219/2021: Shape modification
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

Systems and methods are provided for determining a location of a selection in a space viewable in a camera view on a display of a computing device, detecting movement of the computing device, and generating a path based on the location of the selection and the movement of the computing device. The systems and methods further provide for generating a three-dimensional (3D) mesh along the path, populating the 3D mesh with selected options to generate a 3D paint object, and causing the generated 3D paint object to be displayed. The systems and methods further provide for receiving a request to send a message comprising an image or video overlaid by the 3D paint object, capturing the image or video overlaid by the displayed 3D paint object, generating the message comprising the image or video overlaid by the 3D paint object, and sending the message to another computing device.

## Claims

### Claim 1

A method comprising:
associating a generated three-dimensional (3D) paint object with an object in a camera view on a first computing device;
causing, by the first computing device, display of the generated 3D paint object to move as the object in the camera view moves;
capturing, by a camera of the first computing device, an image or video of the displayed 3D paint object associated with the object in the camera view;
generating, by the first computing device, a message comprising the image or video of the displayed 3D paint object associated with the object in the camera view; and
sending, by the first computing device, the message to a second computing device.

### Claim 2 (depends on 1)

The method of claim 1, wherein the generated 3D paint object is generated in real time based on movement of the first computing device.

### Claim 3 (depends on 1)

The method of claim 1, wherein the method further comprises:
receiving a request to send the generated 3D paint object to a third computing device; and
sending the generated 3D paint object to the third computing device, wherein the generated 3D paint object is overlaid on an image or video captured by the third computing device.

### Claim 4 (depends on 1)

The method of claim 1, wherein the generated 3D paint object is generated by tapering at least one of a beginning or an ending of a 3D paint line of the generated 3D paint object.

### Claim 5 (depends on 1)

The method of claim 1, wherein the generated 3D paint object comprises a cylindrical or polygon shape causing a 3D paint line of the generated 3D paint object to be in a cylindrical or polygon shape.

### Claim 6 (depends on 1)

The method of claim 1, wherein the generated 3D paint object comprises 3D particles along a path of movement of the generated 3D paint object.

### Claim 7 (depends on 1)

The method of claim 1, wherein the generated 3D paint object is generated using more than one shape.

### Claim 8 (depends on 7)

The method of claim 7, wherein each shape of the more than one shape comprises a color and texture type.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
applying a smoothing algorithm to a path of the generated 3D paint object following movement of the first computing device.

### Claim 10 (depends on 1)

The method of claim 1, wherein the generated 3D paint object is displayed on the second computing device as the generated 3D paint object is caused to move on the first computing device as the object in the camera view moves.

### Claim 11 (depends on 1)

The method of claim 1, wherein the object in the camera view is a face or body part.

### Claim 12 (depends on 1)

The method of claim 1, further comprising:
receiving data for a second 3D paint object being drawn on the second computing device, the second 3D paint object being drawn in a same space as the generated 3D paint object; and
causing display on the first computing device of the second 3D paint object being drawn on the second computing device during display of the generated 3D paint object.

### Claim 13 (depends on 1)

The method of claim 1, wherein the generated 3D paint object is generated by performing operations comprising:
generating a 3D mesh along a path following movement of the first computing device using multiple X, Y, and Z coordinates calculated based on the movement of the first computing device; and
populating the 3D mesh with a selected color and texture type to generate the generated 3D paint object.

### Claim 14

A computing device comprising:
a camera;
a memory that stores instructions; and
one or more processors configured by the instructions to perform operations comprising:
associating a generated three-dimensional (3D) paint object with an object in a camera view on the computing device;
causing display of the generated 3D paint object to move as the object in the camera view moves;
capturing, by the camera, an image or video of the displayed 3D paint object associated with the object in the camera view;
generating a message comprising the image or video of the displayed 3D paint object associated with the object in the camera view; and
sending the message to a second computing device.

### Claim 15 (depends on 14)

The computing device of claim 14, wherein the operations further comprise:
receiving a request to send the generated 3D paint object to a third computing device; and
sending the generated 3D paint object to the third computing device, wherein the generated 3D paint object is overlaid on an image or video captured by the third computing device.

### Claim 16 (depends on 14)

The computing device of claim 14, wherein the generated 3D paint object comprises a cylindrical or polygon shape causing a 3D paint line of the generated 3D paint object to be in a cylindrical or polygon shape.

### Claim 17 (depends on 14)

The computing device of claim 14, wherein the generated 3D paint object comprises 3D particles along a path of movement of the generated 3D paint object.

### Claim 18 (depends on 14)

The computing device of claim 14, wherein the generated 3D paint object is displayed on the second computing device as the generated 3D paint object is caused to move on the computing device as the object in the camera view moves.

### Claim 19 (depends on 14)

The computing device of claim 14, further comprising:
receiving data for a second 3D paint object being drawn on the second computing device, the second 3D paint object being drawn in a same space as the generated 3D paint object; and
causing display on the computing device of the second 3D paint object being drawn on the second computing device during display of the generated 3D paint object.

### Claim 20

A non-transitory computer-readable medium comprising instructions stored thereon that are executable by at least one processor to cause a computing device to perform operations comprising:
associating a generated three-dimensional (3D) paint object with an object in a camera view on the computing device;
causing display of the generated 3D paint object to move as the object in the camera view moves;
capturing, by a camera of the computing device, an image or video of the displayed 3D paint object associated with the object in the camera view;
generating a message comprising the image or video of the displayed 3D paint object associated with the object in the camera view; and
sending the message to a second computing device.
