IP Library Granted Patent US 9,811,936
Granted Patent B2
US 9,811,936 · App. 13/843,695 · Granted Nov 7, 2017

Level-based data sharing for digital content production

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 9,811,936
App. No.
13/843,695
Granted
Nov 7, 2017
Kind
B2
Abstract

Systems and methods for rendering three-dimensional images using a level graph are provided. The level graph is accessed, comprising a first node, a second node, and a target node. The second and target nodes are descendants of the first node. The first node comprises first scene description data, the second node comprises first variation data, and the target node comprises second variation data. The target node is selected for computation. Target node ancestors are determined. The first node and the second node are ancestors of the target node. A linearization of the ancestors is determined, comprising an order. A scene description is initialized using the first scene description data. The first variation is applied to the scene description, based on the linearization. The second variation is applied to the scene description to produce a final scene description. An image is rendered using the final scene description.

Claims (59)

1. A computer-implemented method for rendering three-dimensional images using a level graph, the method comprising:

accessing the level graph, the level graph comprising a first node, a second node, a third node, and a target node, wherein:

the second node, third node, and target node are descendants of the first node,

the target node or an ancestor of the target node is a direct descendant of both the second node and the third node, and

the first node comprises a first scene description data, the second node comprises a first variation data, the third node comprises a second variation data, and the target node comprises a third variation data;

receiving a selection of the target node for computation;

determining ancestors of the target node, wherein the ancestors of the target node comprises the first node, the second node, and the third node;

determining a linearization of the ancestors of the target node, the linearization comprising an order of the ancestors of the target node;

initializing a scene description using the first scene description data of the first node;

applying the variation data of the second node and the third node, based on the order determined by the linearization, to the scene description to produce an updated scene description;

applying the third variation of the target node to the updated scene description to produce a final scene description; and

rendering an image based on the final scene description.

2. The computer-implemented method of claim 1 , wherein the first node is a base node that is a root node.

3. The computer-implemented method of claim 1 , wherein initializing the scene description using the scene description data of the first node is based on the linearization.

4. The computer-implemented method of claim 1 , wherein the second node further comprises a second scene description data, and wherein the second scene description data is applied to the scene description to produce the updated scene description.

5. The computer-implemented method of claim 1 , wherein determining the linearization of the ancestors of the target node comprises determining the linearization of the ancestors of the target node based on a C3 superclass linearization algorithm.

6. The computer-implemented method of claim 1 , wherein:

the first node comprises a first tag and the second node comprises a second tag; and

determining the linearization of the ancestors of the target node comprises ordering the first node and the second node based on the first tag and the second tag.

7. A non-transitory computer-readable storage medium comprising computer-executable instructions for rendering three-dimensional images using a level graph, the computer-executable instructions comprising instructions for:

accessing the level graph, the level graph comprising a first node, a second node, a third node, and a target node, wherein:

the second node, third node, and target node are descendants of the first node,

the target node or an ancestor of the target node is a direct descendant of both the second node and the third node, and

the first node comprises a first scene description data, the second node comprises a first variation data, the third node comprises a second variation data, and the target node comprises a third variation data;

receiving a selection of the target node for computation;

determining ancestors of the target node, wherein the ancestors of the target node comprises the first node, the second node, and the third node;

determining a linearization of the ancestors of the target node, the linearization comprising an order of the ancestors of the target node;

initializing a scene description using the first scene description data of the first node;

applying the variation data of the second node and the third node, based on the order determined by the linearization, to the scene description to produce an updated scene description;

applying the third variation of the target node to the updated scene description to produce a final scene description; and

rendering an image based on the final scene description.

8. The non-transitory computer-readable storage medium of claim 7 , wherein the first node is a base node that is a root node.

9. The non-transitory computer-readable storage medium of claim 7 , wherein initializing the scene description using the scene description data of the first node is based on the linearization.

10. The non-transitory computer-readable storage medium of claim 7 , wherein the second node further comprises a second scene description data, and wherein the second scene description data is applied to the scene description to produce the updated scene description.

11. The non-transitory computer-readable storage medium of claim 7 , wherein determining the linearization of the ancestors of the target node comprises determining the linearization of the ancestors of the target node based on a C3 superclass linearization algorithm.

12. The non-transitory computer-readable storage medium of claim 7 , wherein:

the first node comprises a first tag and the second node comprises a second tag; and

determining the linearization of the ancestors of the target node comprises ordering the first node and the second node based on the first tag and the second tag.

13. An apparatus for rendering three-dimensional images using a level graph, the apparatus comprising:

a memory configured to store the level graph; and

one or more computer processors configured to:

access the level graph, the level graph comprising a first node, a second node, a third node, and a target node, wherein:

the second node, third node, and target node are descendants of the first node,

the target node or an ancestor of the target node is a direct descendant of both the second node and the third node, and

the first node comprises a first scene description data, the second node comprises a first variation data, the third node comprises a second variation data, and the target node comprises a third variation data;

receive a selection of the target node for computation;

determine ancestors of the target node, wherein the ancestors of the target node comprises the first node, the second node, and the third node;

determine a linearization of the ancestors of the target node, the linearization comprising an order of the ancestors of the target node;

initialize a scene description using the first scene description data of the first node;

apply the variation data of the second node and the third node, based on the order determined by the linearization, to the scene description to produce an updated scene description;

apply the third variation of the target node to the updated scene description to produce a final scene description; and

render an image based on the final scene description.

14. The apparatus of claim 13 , wherein the first node is a base node that is a root node.

15. The apparatus of claim 13 , wherein initializing the scene description using the scene description data of the first node is based on the linearization.

16. The apparatus of claim 13 , wherein the second node further comprises a second scene description data, and wherein the second scene description data is applied to the scene description to produce the updated scene description.

17. The apparatus of claim 13 , wherein determining the linearization of the ancestors of the target node comprises determining the linearization of the ancestors of the target node based on a C3 superclass linearization algorithm.

18. The apparatus of claim 13 , wherein:

the first node comprises a first tag and the second node comprises a second tag; and

determining the linearization of the ancestors of the target node comprises ordering the first node and the second node based on the first tag and the second tag.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Dec 27, 2016
From: JPMORGAN CHASE BANK, N.A.
To: DREAMWORKS ANIMATION L.L.C.; PACIFIC DATA IMAGES L.L.C.
Reel/Frame 041193/0144 →
SECURITY INTEREST Recorded Mar 31, 2015
From: PACIFIC DATA IMAGES L.L.C.; DREAMWORKS ANIMATION L.L.C.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 035343/0829 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2014
From: BEALL, JEFF
To: DREAMWORKS ANIMATION LLC
Reel/Frame 033446/0337 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2014
From: MCNERNEY, PETER; SMYTH, EVAN P.; WILSON, ROBERT GILES; HEFLIN, GREG; BEALL, JEFF; GIBBS, JONATHAN; HAMLER, MIKE; GAGNON, BENOIT
To: DREAMWORKS ANIMATION LLC
Reel/Frame 033022/0731 →