US2006036756A1PendingUtilityA1

Scalable, multi-user server and method for rendering images from interactively customizable scene information

37
Assignee: DRIEMEYER THOMASPriority: Apr 28, 2000Filed: Apr 28, 2001Published: Feb 16, 2006
Est. expiryApr 28, 2020(expired)· nominal 20-yr term from priority
H04N 21/21G06F 16/958G06T 15/005H04N 21/23
37
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A server for use in connection with a network including at least one client and a communication link interconnecting the client and server. The server comprises a user interaction control module, an image rendering module and an interface. The image rendering module is configured to render, from three-dimensional scene data representing a scene, a two-dimensional image. The interface configured to transmit the two-dimensional image over the communication link to the client. The user interaction control module is configured to regulate interactions between the server, in particular the image rendering module, and respective clients who may be using the server concurrently to control images in which customizations requested by, for example, respective clients are rendered.

Claims

exact text as granted — not AI-modified
1 . A server for use in connection with a network including at least one client and a communication link interconnecting the client and server, the server comprising: 
 A. an image rendering module configured to render, from three-dimensional scene data representing a scene, a two-dimensional image; and    B. an interface configured to transmit the two-dimensional image over the communication link to the client.    
   
   
       2 . A server as defined in  claim 1  further comprising a user interaction control module configured to control interactions with said at least one client in connection with rendering of the image from the scene data.  
   
   
       3 . A server as defined in  claim 2  in which the image rendering module is configured to render images from scene data representing a plurality of scenes, the user interaction control module being configured to select scenes for which images are to be rendered.  
   
   
       4 . A server as defined in  claim 3  in which the user interaction control module is configured to select scenes for which images are to be rendered in response to requests therefor.  
   
   
       5 . A server as defined in  claim 4  in which the requests are received from the at least one client.  
   
   
       6 . A server as defined in  claim 4  in which a request can contain scene customization information requesting at least one customization to the scene, the user interaction control module being configured to enable the image rendering module to render an image of the scene as customized in relation to the customization information.  
   
   
       7 . A server as defined in  claim 6  in which the at least one customization to the scene can be represented in images rendered for selected ones of clients, the user interaction control module being configured to enable the image rendering module to control ones of the clients for whom images are rendered depicting the customization.  
   
   
       8 . A server as defined in  claim 2  in which the user interaction control module includes: 
 A. an operator graph generation module configured to generate, when the server is to render said image, an operator comprising at least one operator, said at least one operator being configured to enable said image rendering module to perform at least one operation in connection with rendering of the image; and    B. an event manager configured to control execution of said at least one operator in response to the occurrence of at least one event.    
   
   
       9 . A server as defined in  claim 8  in which the operator graph generation module comprises: 
 A. a user manager module configured to select operators of selected operator types for use in the operator graph, and    B. a connection manager module configured to connect the selected operators into the operator graph.    
   
   
       10 . A server as defined in  claim 9  in which scenes for which images are to be rendered are selected in response to requests therefor, and in which a request can include scene customization information requesting at least one customization to the scene, the user manager module being configured to select operators for use in the operator graph in response to the image requested by and scene customization information contained in a request.  
   
   
       11 . A server as defined in  claim 8  in which the image rendering module comprises: 
 A. a scene database configured to store scene data representing at least a portion of the scene for which an image is to be rendered    B. a customization module configured to customize the scene data contained in the scene database;    C. a rendering engine module configured to utilize the scene data in the scene database in connection with rendering at least a portion of an image; and    D. a job manager module configured to control the customization module and the rendering module in connection with execution of said at least one operator in the operator graph.    
   
   
       12 . A server as defined in  claim 11  in which, in response to execution of said at least one operator, the job manager module is configured to establish at least one job, the at least one job being executable by at least one of said customization module or the rendering engine module.  
   
   
       13 . A server as defined in  claim 12  in which, in response to execution of said at least one operator, the job manager module is configured to establish a plurality of jobs in a job dependency graph, each job being executable by at least one of said customization module or the rendering engine module, and select ones of the jobs in the graph for execution.  
   
   
       14 . A server as defined in  claim 13  in which the job manager module is configured to select ones of the jobs for execution in relation to respective job cost values associated with the respective jobs.  
   
   
       15 . A server as defined in  claim 14  in which the job manager module is configured to assign respective job cost values in relation to an estimate of server resources used during execution of the associated jobs.  
   
   
       16 . A computer program product for use in connection with a computer to form a server for use in a network, the network including at least one client and a communication link interconnecting the client and server, the computer program product comprising a computer-readable medium having encoded thereon: 
 A. an image rendering module configured to enable the computer to render, from three-dimensional scene data representing a scene, a two-dimensional image; and    B. an interface module configured to enable the computer to transmit the two-dimensional image over the communication link to the client.    
   
   
       17 . A computer program product as defined in  claim 16  further comprising a user interaction control module configured to enable the computer to control interactions with said at least one client in connection with rendering of the image from the scene data.  
   
   
       18 . A computer program product as defined in  claim 17  in which the image rendering module is configured to enable the computer to render images from scene data representing a plurality of scenes, the user interaction control module being configured to enable the computer to select scenes for which images are to be rendered.  
   
   
       19 . A computer program product as defined in  claim 18  in which the user interaction control module is configured to enable the computer to select scenes for which images are to be rendered in response to requests therefor.  
   
   
       20 . A computer program product as defined in  claim 19  in which the requests are received from the at least one client.  
   
   
       21 . A computer program product as defined in  claim 19  in which a request can contain scene customization information requesting at least one customization to the scene, the user interaction control module being configured to enable the computer to enable the image rendering module to render an image of the scene as customized in relation to the customization information.  
   
   
       22 . A computer program product as defined in  claim 21  in which the at least one customization to the scene can be represented in images rendered for selected ones of clients, the user interaction control module being configured to enable the computer to enable the image rendering module to control ones of the clients for whom images are rendered depicting the customization.  
   
   
       23 . A computer program product as defined in  claim 17  in which the user interaction control module includes: 
 A. an operator graph generation module configured to enable the computer to generate, when the server is to render said image, an operator comprising at least one operator, said at least one operator being configured to enable the computer to enable said image rendering module to perform at least one operation in connection with rendering of the image; and    B. an event manager configured to enable the computer to control execution of said at least one operator in response to the occurrence of at least one event.    
   
   
       24 . A computer program product as defined in  claim 23  in which the operator graph generation module comprises: 
 A. a user manager module configured to enable the computer to select operators of selected operator types for use in the operator graph, and    B. a connection manager module configured to enable the computer to connect the selected operators into the operator graph.    
   
   
       25 . A computer program product as defined in  claim 24  in which scenes for which images are to be rendered are selected in response to requests therefor, and in which a request can include scene customization information requesting at least one customization to the scene, the user manager module being configured to enable the computer to select operators for use in the operator graph in response to the image requested by and scene customization information contained in a request.  
   
   
       26 . A computer program product as defined in  claim 23  in which the image rendering module comprises: 
 A. a scene database configured to enable the computer to store scene data representing at least a portion of the scene for which an image is to be rendered    B. a customization module configured to enable the computer to customize the scene data contained in the scene database;    C. a rendering engine module configured to enable the computer to utilize the scene data in the scene database in connection with rendering at least a portion of an image; and    D. a job manager module configured to enable the computer to control the customization module and the rendering module in connection with execution of said at least one operator in the operator graph.    
   
   
       27 . A computer program product as defined in  claim 26  in which, in response to execution of said at least one operator, the job manager module is configured to enable the computer to establish at least one job, the at least one job being executable by at least one of said customization module or the rendering engine module.  
   
   
       28 . A computer program product as defined in  claim 27  in which, in response to execution of said at least one operator, the job manager module is configured to enable the computer to establish a plurality of jobs in a job dependency graph, each job being executable by at least one of said customization module or the rendering engine module, and select ones of the jobs in the graph for execution.  
   
   
       29 . A computer program product as defined in  claim 28  in which the job manager module is configured to enable the computer to select ones of the jobs for execution in relation to respective job cost values associated with the respective jobs.  
   
   
       30 . A computer program product as defined in  claim 29  in which the job manager module is configured to enable the computer to assign respective job cost values in relation to an estimate of server resources used during execution of the associated jobs.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.