# US 2021/0241540 A1 · Applying Non-Destructive Edits To Nested Instances For Efficient Rendering

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

- Number: US 2021/0241540 A1
- Document ID: US20210241540A1
- Status: Published application
- Kind: A1
- Application number: 17/077,998
- Filed: 2020-10-22
- Published: 2021-08-05
- Earliest claimed: 2020-01-31
- Assignees: Unity Technologies SF
- Applicants: Weta Digital Limited
- Inventors: Nick S. Shore; Oliver M. Castle
- Web page: https://patentgrep.com/patent/US20210241540A1

## CPC

- G06T 19/20: Editing of three-dimensional [3D] images, e.g. changing shapes or colours, aligning objects or positioning parts
- G06F 16/51: Indexing; Data structures therefor; Storage structures
- G06F 16/54: Browsing; Visualisation therefor
- G06F 3/0482: Interaction with lists of selectable items, e.g. menus
- G06F 3/04845: for image manipulation, e.g. dragging, rotation, expansion or change of colour
- G06F 16/587: using geographical or spatial information, e.g. location
- G06F 16/907: Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F 2203/04803: Split screen, i.e. subdividing the display area or the window area into separate subareas
- G06T 2200/24: involving graphical user interfaces [GUIs]
- G06T 2210/61: Scene description
- G06T 2219/2004: Aligning objects, relative positioning of parts
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A request is received to replicate an object in a scene description. A first data structure associating the object with object instances is generated to produce the object instances in the scene description, with each instance corresponding to a position that an instance of the object is to appear in the scene. The first data structure includes a first set of characteristics of the object instances that includes the position. A selection of an object instance and an instruction to customize a characteristic of the object instance is received. A customized characteristic of the object instance is produced by generation of a second data structure associating the customized characteristic with the first data structure. The object instances are rendered such that the customized characteristic of the second data structure supersedes the characteristic of the object in the first data structure.

## Claims

### Claim 1

A computer-implemented method, comprising:
under the control of one or more computer systems configured with executable instructions:
(a) receiving a request to replicate a digital object in a scene description of a scene to be represented by one or more computer-generated images;
(b) generating, to produce a plurality of object instances in the scene description, a first data structure associating the digital object with the plurality of object instances, each instance of the plurality of object instances corresponding to a placement that an instance of the digital object is to appear in the scene, the first data structure including a first set of characteristics of the plurality of object instances that includes the placement;
(c) receiving a first selection of a first selected object instance of the plurality of object instances;
(d) receiving a first instruction to customize a first characteristic of the first selected object instance;
(e) producing a first customized characteristic of the first selected object instance by generating a second data structure associating the first customized characteristic with the first data structure; and
(f) rendering the plurality of object instances such that the first customized characteristic of the second data structure supersedes the characteristic of the digital object in the first data structure.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
(g) receiving a second selection of a second selected object instance of the plurality of object instances;
(h) receiving a second instruction to customize a second characteristic of the second selected object instance;
(i) producing a second customized characteristic of the second selected object instance by generating a third data structure associating the second customized characteristic with the first data structure; and
(j) rendering the plurality of object instances such that the second customized characteristic of the third data structure supersedes the characteristic of the digital object in the first data structure.

### Claim 3 (depends on 2)

The method of claim 2, further comprising: if the first customized characteristic and the second customized characteristic comprise the same customized characteristic, combining the second data structure and the third data structure.

### Claim 4 (depends on 1)

A computer readable medium carrying executable instructions that, as a result of execution by one or more processors of a computer system, cause the computer system to carry out the method of claim 1.

### Claim 5 (depends on 1)

The method of claim 1, further comprising storing information about each object instance of the plurality of object instances, wherein the information includes at least one of a size, a color, a pose, a position, an orientation, a scale, a skew, a texture, a shading, a direction of motion, a rate of motion, a motion blur, a reflectiveness, a transparency, an animation, a note, a source object, or whether the object instance has been customized.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
receiving a second instruction to modify the first characteristic of the digital object;
modifying the first characteristic of the digital object according to the second instruction; and
modifying the first characteristic of the digital object and of the plurality of object instances without modifying the first customized characteristic of the first selected object instance.

### Claim 7 (depends on 6)

A user interface configured to perform the receiving and rendering steps of claim 6.

### Claim 8 (depends on 7)

The user interface of claim 7, comprising:
an outliner panel configured to display the name of the object in the scene;
an editor configured to receive selections from a user;
a viewport; and
a layout disposed within the viewport, wherein the layout is configured to display representations of the plurality of object instances.

### Claim 9 (depends on 8)

The user interface of claim 8, wherein the layout is further configured to display a rendering of the plurality of object instances.

### Claim at position 10 (depends on 9)

10: The user interface of claim 9, wherein the outliner panel is configured to display the names of a plurality of objects and object instances.

### Claim at position 11 (depends on 10)

11: The user interface of claim 10, wherein the names of the plurality of objects and object instances are displayed as a hierarchy.

### Claim at position 12 (depends on 11)

12: The user interface of claim 11, wherein the hierarchy includes a set of nested object instances.

### Claim at position 13 (depends on 12)

13: The user interface of claim 12, wherein an object instance of the set of nested object instances can be customized independently from other object instances in the set of nested object instances.

### Claim 14 (depends on 10)

The user interface of claim 10, wherein a customization of an object instance of the plurality of object instances can be deleted at any level of the hierarchy without affecting other instances.

### Claim 15 (depends on 10)

The user interface of claim 10, wherein a customization of an object instance of the plurality of object instances can be deleted without affecting other customizations of the object instance.

### Claim 16 (depends on 10)

The user interface of claim 10, wherein a customization of a first object instance of the plurality of object instances may be copied to a second object instance of the plurality of object instances.

### Claim 17

A system, comprising:
at least one computing device configured to implement one or more services, wherein the one or more services are configured to:
(a) receive a request to replicate a digital object in a scene description of a scene to be represented by one or more computer-generated images;
(b) generate, to produce a plurality of object instances in the scene description, a first data structure associating the digital object with the plurality of object instances, each instance of the plurality of object instances corresponding to a position that an instance of the digital object is to appear in the scene, the first data structure including a first set of characteristics of the plurality of object instances that includes the position;
(c) receive a selection of a selected object instance of the plurality of object instances;
(d) receive an instruction to customize a characteristic of the selected object instance;
(e) produce a customized characteristic of the selected object instance by generating a second data structure associating the customized characteristic with the first data structure; and
(f) render the plurality of object instances such that the customized characteristic of the second data structure supersedes the characteristic of the digital object in the first data structure.

### Claim 18

A non-transitory computer-readable storage medium having stored thereon executable instructions that, as a result of execution by one or more processors of a computer system, cause the at least one computing device to at least:
(a) receive a request to replicate a digital object in a scene description of a scene to be represented by one or more computer-generated images;
(b) generate, to produce a plurality of object instances in the scene description, a first data structure associating the digital object with the plurality of object instances, each instance of the plurality of object instances corresponding to a position that an instance of the digital object is to appear in the scene, the first data structure including a first set of characteristics of the plurality of object instances that includes the position;
(c) receive a selection of a selected object instance of the plurality of object instances;
(d) receive an instruction to customize a characteristic of the selected object instance;
(e) produce a customized characteristic of the selected object instance by generating a second data structure associating the customized characteristic with the first data structure; and
(f) render the plurality of object instances such that the customized characteristic of the second data structure supersedes the characteristic of the digital object in the first data structure.
