Computer graphics processing and selective visual display system – Computer graphics processing – Graphic manipulation
Reexamination Certificate
1998-02-27
2002-02-19
Vo, Cliff N. (Department: 2772)
Computer graphics processing and selective visual display system
Computer graphics processing
Graphic manipulation
C345S419000
Reexamination Certificate
active
06348927
ABSTRACT:
COMPUTER PROGRAM LIST APPENDIX
This application includes a computer program listing appendix contained on a compact disc, in file listing.txt, created on May 25, 2001, and having a size of 20,775 bytes, the contents of which are hereby incorporated by reference.
FIELD OF THE INVENTION
This invention generally relates to graphics data processing, and relates more specifically to mechanisms for storing, dynamically reconstructing, and navigating a three-dimensional virtual world using a database system.
BACKGROUND OF THE INVENTION
Computers can generate graphical displays that show an object or scene in three apparent physical dimensions. Such three-dimensional (3D) graphics or images are extremely useful for visualizing real-world objects, scenes, or processes. Systems and software processes for generating 3D graphics are described in detail in W. Newman et al., “Principles of Interactive Computer Graphics” (New York: McGraw-Hill, Inc., 1979).
When polygons, surfaces, and other 3D graphical elements are combined into a computer-generated scene that resembles a real environment, the scene is called a “virtual world” and the computer is said to display “virtual reality”. Computer programs are available for defining, editing, and displaying virtual worlds using a personal computer or a graphics workstation.
Recently, a global packet-switched network known as the Internet has attracted wide use. A local computer can connect to a distant server, request a file or an image from the server, and receive the requested information immediately. The Internet operates according to several standard protocols. Packets of data are communicated among Internet host computers (“servers”) using the Transmission Control Protocol (TCP) and Internet Protocol. The name and location of each server connected to the Internet is indexed at several computers known as Domain Name Servers (DNSs). A local computer can look up the name of a remote server using a DNS, connect to the remote computer, and send and receive information.
One popular technology enjoying wide use with the Internet is known as the World Wide Web. The World Wide Web enables a computer to locate a remote server using the DNS and then establish a connection to the server and retrieve information using a communication protocol called the Hypertext Transfer Protocol (HTTP). A Uniform Resource Locator (URL) uniquely identifies each page of information stored on the remote server. A URL is a form of network address that identifies the location of information stored in a network. The local computer requests information by providing a request containing a URL of the desired information to the remote server. The server receives the request, locates the page of information corresponding to the URL, and returns the page to the local computer over the HTTP connection. The pages of information are files prepared in the Hypertext Markup Language (HTML). The local computer runs a browser program that can read HTML files, interpret HTML codes in the files, and generate a complex graphical display.
The Virtual Reality Modeling Language (VRML) provides a way to integrate virtual reality technology with World Wide Web technology. VRML is the industry-standard description language for storing and delivering 3D information over the Internet. Using VRML, virtual worlds can be defined in human-readable text form and in a device-independent manner. The virtual world is defined in a text file that is interpreted at runtime, like a scripting language. A complete definition of the VRML language can be found in documents of the VRML organization stored at http://www.vrml.org/, and in other published sources.
Using VRML, a virtual world is defined in a written language in terms of nodes and fields. Nodes are abstractions of real-world objects and concepts. Examples include spheres, lights, and material descriptions. Nodes contain fields and events. Messages may be sent between nodes along routes. Nodes are organized into a representation of a virtual world called a scene graph. A field is a property or attribute of a node. Each type of node has a fixed set of fields. Fields may contain data and one or many values.
In the past, virtual worlds have been stored in a graphical format, such as a bitmap, a set of inter-related sprites, vectors, or other complex numeric information. The text format of virtual worlds defined using VRML uses significantly less storage space than a graphical representation of a virtual world. However, the tradeoff for having less storage is that computation must be performed to transform the VRML text file into an image. As a result, a 3D scene is not rendered and displayed as quickly as it would be if the scene were stored in a graphical representation. As available computing power continues to increase, the processing required to render an image at runtime becomes less significant.
Generally, a VRML virtual world is defined and described in a text file using the VRML language. The browser is provided with a VRML interpreter, generally in the form of a program which can “plug-in” to the browser. An example of a VRML interpreter is the Cosmo browser plug-in available from Silicon Graphics, Inc. VRML worlds are stored on a server. The term “VRML world” or “world” in this context refers both to textual source code and the display resulting from interpretation of the source code by a computer using the VRML interpreter. The browser requests a VRML world by providing its URL to the server. For example, the URL of a VRML world is included in a Web page of a Web site, or associated (as by hyper-linking) with a portion of the Web page. When a user selects or clicks on the hyperlink, the browser sends the URL to the server. The server locates the selected VRML world and returns it in text file format to the local computer. The browser reads the VRML world, interprets the VRML commands, opens a browser window or frame on the computer display, and generates a graphic display. Thus, the server generates the virtual world and the browser renders the world. In this way, virtual worlds can be displayed in a window of a browser.
For example, the following VRML source code will generate a virtual world comprising a red cone when it is run in a VRML-enabled browser:
Shape {
appearance Appearance {
material Material {
diffuseColor 1 0 0
}
}
geometry Cone { }
}
This example defines a VRML world that has one “node” called “Shape”. The source code of the world defines the “Shape” node as having a particular appearance, apparent material, color, and geometry.
A key advantage of VRML is that the application programmer who writes the VRML world need not write platform-specific code; the same VRML world will run on a personal computer with an Intel® processor, a workstation that has a SPARC® processor, an Apple® Macintosh® computer, or a graphics workstation, provided that a VRML-enabled browser is running.
In general, a VRML world is prepared by writing a text file containing VRML commands, in human-readable source code form, using a general-purpose text editor or a VRML editor such as Silicon Graphics' CosmoSuite or IDS' VRealmsBuilder. A complicated world having numerous shapes or textures may require thousands of lines of VRML code. In the past, such complex VRML worlds have been stored in the form of a single sequential-record text file. To display the world, a VRML-enabled browser loads the entire world as a unit, and then interprets the entire world starting from the top of the source file and proceeding to the bottom. The VRML interpreter then determines what portion of the world is visible from the current point of view “seen” by the browser, and displays that portion of the world.
However, this approach is slow and inefficient. The display screen of the user's computer generally shows only a portion of a world. Accordingly, in a complex world only a small portion of the world may be visible on the display at a particular time. The remainder of the world may lie conce
LandOfFree
Composing a description of a virtual 3D world from values... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Composing a description of a virtual 3D world from values..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Composing a description of a virtual 3D world from values... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2963841