Multi-user application system environment engine
AssigneeUmajin Inc.
InventorDavid Brebner
Life of this patent
Estimating the term…
Abstract
A multi-user application system environment engine has an application system that, in turn, includes a simulation engine and a virtualized software environment. The simulation engine runs on top of the virtualized software environment and includes a declaration processor, a scene tree object manager, a persistence processor in communication with the scene tree object manager, a visual editor, an editor broadcaster, an editor listener, and a rendering processor, coupled to the virtualized software environment, to requisition hardware resources to cause physical manifestation of an instantiated scene tree of objects.
Claims19
A given computer system executing a simulation engine process wherein the given computer system is in communication in real time over a network with a set of other computer systems, the simulation engine process running on top of a virtualized software environment and enabling creation and editing of a project by a local user and network users of the set of other computer systems, wherein the simulation engine process comprises:
- a declaration processor that linearly processes a first declaration that constitutes a text embodiment of the project, reciting any set of items selected from the group consisting of object, relationship, property, behavior, and combinations thereof, into a declared scene tree of objects;
- a scene tree object manager process that (a) manages objects, their relationships, properties, and behaviors in the declared scene tree of objects, (b) causes transformation of the declared scene tree of objects so as to be mirrored in a project subnode of an instantiated scene tree of objects, the project subnode constituting an instantiated embodiment of the project, and (c) causes updating of the instantiated scene tree when it is changed;
- a persistence processor in communication with the scene tree object manager process, that causes mirroring, of the instantiated scene tree of objects, in a second declaration;
- a visual editor process, the visual editor process being a subnode of the instantiated scene tree, that makes user-directed changes to the project subnode of the instantiated scene tree, wherein the project subnode is a subnode of the visual editor process;
- an editor broadcaster process, the editor broadcaster process being a subnode of the instantiated scene tree, coupled to the network, that obtains changes from the visual editor process and causes the persistence processor to transform a correspondingly changed part of the instantiated scene tree into a change declaration and broadcasts the change declaration embedded in a change message over the network to the set of other computer systems;
- an editor listener process, the editor listener process being a subnode of the instantiated scene tree, coupled to the network, that receives and processes any change message, from any other computer system of the set of other computer systems, by causing the declaration processor to transform a declaration embedded in received change message into a corresponding change in the instantiated scene tree;
- and
- a rendering processor, coupled to the virtualized software environment, to requisition hardware resources to cause physical manifestation of the instantiated scene tree of objects in a form selected from the group consisting of audio, visual, network communication, storage in a transitory or a nontransitory basis, computational tasks, and combinations thereof, the physical manifestation being optimized by evaluation of hardware resources that are both available and required to be allocated in order to achieve the physical manifestation;
- wherein each of the other computer systems has a corresponding simulation engine process running on top of a corresponding virtualized software environment.
Dependencies are inferred from the claim text.