IP Library Granted Patent US 11,393,180
Granted Patent B2
US 11,393,180 · App. 17/077,998 · Granted Jul 19, 2022

Applying non-destructive edits to nested instances for efficient rendering

Inventors: Nicholas S. Shore (Wellington, NZ); Oliver M. Castle (Wellington, NZ)
Assignee: Unity Technologies SF
G06T19/20G06F16/51G06F16/54G06F3/0482G06F3/04845G06F16/587G06F16/907G06F2203/04803G06T2200/24G06T2210/61G06T2219/2004
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,393,180
App. No.
17/077,998
Granted
Jul 19, 2022
Kind
B2
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 (43)

1. A computer-implemented method, comprising:

(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;

(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;

(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;

(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; and

(k) 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.

2. 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 .

3. 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.

4. 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.

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

6. The user interface of claim 5 , 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.

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

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

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

10. The user interface of claim 9 , wherein the hierarchy includes a set of nested object instances.

11. The user interface of claim 8 , 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.

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

13. The user interface of claim 8 , 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.

14. A computer-implemented method, comprising:

(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;

(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;

(g) receiving a second instruction to modify the first characteristic of the digital object;

(h) modifying the first characteristic of the digital object according to the second instruction;

(i) 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; and

(j) configuring a user interface, comprising an outliner panel configured to display the name of the object in the scene, comprising a viewport, and comprising a layout disposed within the viewport, wherein the layout is configured to display representations of the plurality of object instances,

wherein the layout is further configured to display a rendering of the plurality of object instances, wherein an outliner panel of the user interface is configured to display the names of a plurality of objects and object instances, wherein the names of the plurality of objects and object instances are displayed as a hierarchy, wherein the hierarchy includes a set of nested object instances, and 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.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2022
From: UNITY SOFTWARE INC.
To: UNITY TECHNOLOGIES SF
Reel/Frame 058980/0342 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2022
From: WETA DIGITAL LIMITED
To: UNITY SOFTWARE INC.
Reel/Frame 058978/0865 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2021
From: SHORE, NICHOLAS S.; CASTLE, OLIVER M.
To: WETA DIGITAL LIMITED
Reel/Frame 058274/0619 →
Continuity (2)
Provisional Application 62968951 · Jan 31, 2020
Related Publication 20210241540A1 · Aug 5, 2021