Merge previewing in a version control system
US-9430229-B1 · Aug 30, 2016 · US
US12211005B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12211005-B2 |
| Application number | US-201916538594-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 12, 2019 |
| Priority date | Aug 10, 2018 |
| Publication date | Jan 28, 2025 |
| Grant date | Jan 28, 2025 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A cloud-centric platform is used for generating virtual three-dimensional (3D) content, that allows users to collaborate online and that can be connected to different software tools (applications). Using the platform, virtual environments (e.g., scenes, worlds, universes) can be created, accessed, and interacted with simultaneously by multiple collaborative content creators using varying content creation or development applications.
Opening claim text (preview).
What is claimed is: 1. A system, comprising: one or more processing units coupled to memory having stored therein at least one database that stores data representative of assets of a scene; and one or more communication interfaces coupled to the memory and operable for bidirectional communication with a plurality of different types of applications that interoperate with each other through changes to the at least one database, the one or more communication interfaces to communicate requests from the applications for subscriptions to receive one or more changes to subsets of the assets of the scene; wherein changes corresponding to at least one asset of the assets of the scene made using one or more applications of the applications accessing the scene are saved to the at least one database and different applications of the applications are notified, using one or more notifications, of different sets of the changes corresponding to the at least one asset based at least on the different applications having been granted different subscriptions of the subscriptions to different subsets of the subsets of the assets of the scene, wherein the different sets of the changes corresponding to the at least one asset cause, based at least on the one or more notifications, the different applications to determine different values of one or more properties of a same synchronized object composed of a plurality of the assets and to render the same synchronized object in the scene using the different values, and further wherein one or more representations of one or more of the assets in the at least one databases comprises three-dimensional data. 2. The system of claim 1 , wherein the one or more properties are defined using the assets. 3. The system of claim 1 , wherein the one or more properties affect one or more of an appearance, a position, or an orientation of the same synchronized object in a virtual environment. 4. The system of claim 1 , wherein the different sets of the changes corresponding to the at least one asset effect changes to different properties of the at least one asset with respect to the different applications. 5. The system of claim 1 , wherein the one or more properties are defined across a plurality of objects. 6. The system of claim 1 , wherein the different applications are notified of the different sets of the changes includes transmitting the different sets of the changes to the different applications. 7. The system of claim 1 , wherein at least some of the subscriptions to receive changes are to different subsets of one or more layers of a plurality of layers that collectively define properties of objects, and a layer of the one or more layers defines a plurality of objects corresponding to a plurality of leaves of a transformation hierarchy. 8. The system of claim 7 , wherein the one or more changes are to one or more first layers of a plurality of layers that collectively define properties of objects, at least one first object of the objects inherits one or more first properties from the one or more first layers, at least one second object of the objects inherits one or more second properties from one or more second layers of the plurality of layers, each layer of the plurality of layers defines the properties for the objects corresponding to a plurality of leaves of a transformation hierarchy. 9. The system of claim 1 , wherein the changes are to a layer of a plurality of layers that collectively define properties of the scene representing a virtual environment, the scene includes a plurality of objects, and the layer defines the properties for the plurality of objects corresponding to a plurality of leaves of a transformation hierarchy. 10. The system of claim 1 , wherein a first application of the different applications is notified regarding all of the changes and a second application of the different applications is notified regarding less than all of the changes. 11. The system of claim 1 , wherein the applications are presenting the scene and the one or more notifications being filtered causes a second subset of the applications accessing the scene to present the scene without the one or more changes. 12. The system of claim 11 , wherein at least one application of the different types of applications is selected from a group consisting of: a physics simulation application; an artificial intelligence application; a global illumination application; a game engine; an animation tool; a computer graphics application; a renderer; a graphics editor; a virtual reality application; an augmented reality application; and a scripting application. 13. The system of claim 1 , wherein a plurality of changes made by the one or more applications to the one or more assets in the at least one database are accumulated in a list, wherein the plurality of changes in the list are saved to the at least one database periodically. 14. The system of claim 1 , wherein the one or more processing units execute a renderer that assembles objects to generate a frame comprising a render of the scene, wherein the system is communicatively coupled to a plurality of different types of client devices having different capabilities, and wherein the renderer assembles the scene for each client device of the client devices according to a capability of said each client device. 15. The system of claim 14 , wherein a plurality of changes made by the one or more applications to the one or more assets in the at least one database are saved to the at least one database at a rate that corresponds to a rate at which the renderer generates frames. 16. A method, comprising: at one or more servers that store at least one database comprising assets of a scene, wherein the assets comprise one or more elements: receiving, from a first client of clients accessing the scene, a request for one or more subscriptions to receive one or more changes to one or more subsets of one or more of the assets of the scene; receiving changes to at least one asset of the assets of the scene, the changes to the at least one asset generated using at least a second client of the clients accessing the scene; updating the at least one of the assets of the scene in the at least one database to include the changes to the at least one asset; and notifying, using one or more notifications from the one or more servers, different clients of the clients of different sets of the changes based at least on the first client being granted at least one subscription of the one or more subscriptions to receive the one or more changes to the one or more subsets of the assets of the scene, wherein the different sets of the changes to the at least one asset cause, based at least on the one or more notifications, the different clients to determine different values of one or more properties of a same synchronized object composed of a plurality of the assets and to render the same synchronized object in the scene using the different values. 17. The method of claim 16 , wherein the first client identified the one or more subsets of the one or more assets in a request for the at least one subscription. 18. The method of claim 16 , wherein the one or more servers refrain from providing the changes to a plurality of clients based at least on the plurality of clients lacking subscriptions that correspond to the one or more subsets of the assets. 19. The method of claim 16 , wherein said receiving the one or more changes and said updating the one or more subsets in the at least one database to include the
Multi-user, collaborative environment · CPC title
Editing of three-dimensional [3D] images, e.g. changing shapes or colours, aligning objects or positioning parts · CPC title
Navigation within 3D models or images · CPC title
General purpose rendering architectures · CPC title
Workflow collaboration or project management · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.