Platform and method for collaborative generation of content
AssigneeNVIDIA Corporation
InventorsRev Lebaredian, Michael Kass, Brian Harris, Andrey Shulzhenko, Dmitry Duka
Life of this patent
Estimating the term…
Abstract
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.
Claims46
A system, comprising:
- a processing unit;
- memory coupled to the processing unit and having stored therein a database that stores data representative of a plurality of objects;
- and
- a communication interface 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 database;
- wherein a first change made to an object of the plurality of objects by a first application of the applications is saved to the database and provided from the database to a second application of the applications that is a subscriber to the object,
- further wherein a representation of at least one object of the plurality of objects in the database comprises three-dimensional data.
A method, comprising:
- at a server that stores a database comprising assets, wherein each of the assets comprises one or more elements:
- receiving a first change to a first element of an asset in the database, the first change generated by a first type of application of a plurality of different types of applications that interoperate with each other through changes to the database;
- updating the first element in the database to include the first change;
- providing the first change from the database to a second type of application of the plurality of the different types of applications, the second type of application different from the first type of application;
- receiving, at the server and in response to said providing, a second change generated by the second type of application;
- and
- updating the database to include the second change.
A non-transitory computer-readable medium having computer-executable components, the components comprising:
- a database that stores a plurality of assets comprising three-dimensional data useful for generating a virtual scene;
- a plurality of sockets coupled to the database and operable for bidirectional communication with a plurality of clients;
- and
- a synchronizer coupled to the database, the synchronizer operable for performing operations to synchronize data of the assets and data of the clients;
- wherein the operations comprise:
- a first change to an asset in the database is received from a first client of the plurality of clients via a first socket of the plurality of sockets, and a first update is made to the asset to include the first change, wherein the first change is generated by the first client;
- the database and data for a second client of the plurality of clients are synchronized via a second socket of the plurality of sockets to include the first change in the data for the second client;
- a second change to the asset is received from the second client via the second socket, wherein the second change is generated by the second client based on the first update;
- and a second update is made to the asset to include the second change.
A system comprising computer-executable components residing on non-transitory computer-readable media, the components comprising:
- a server, comprising:
- a database that stores a plurality of assets comprising three-dimensional data useful for generating a virtual scene;
- and
- a synchronizer coupled to the database;
- wherein the synchronizer is to synchronize changes made by a client coupled to the server and data of the assets to include the change in the database, and to synchronize changes in the database and data of clients coupled to the server.
A system comprising computer-executable components residing on non-transitory computer-readable media, the components comprising:
- a plurality of client applications comprising:
- a plurality of heterogeneous client applications, wherein the plurality of heterogeneous client applications interoperate with each other to produce and modify the virtual environment, wherein clients of the plurality of heterogeneous client applications are operable to operate on an object of a virtual environment in different ways, wherein at least one of the client applications is for creating three-dimensional content, and wherein a change made to the object by a client application of the plurality of heterogeneous client applications is provided to one or more other client applications;
- wherein a client application that is one of the one or more other client applications is operable for rendering the virtual environment on a heterogeneous plurality of client devices and for adapting said rendering according to respective hardware and software capabilities of the client devices.
Dependencies are inferred from the claim text.