Invented by David Van Wie, Paul J. Brody, Sococo Inc
The Sococo Inc invention works as followsThe “switching of real-time data streams connections between network nodes that share a virtual space is described. The switching can be done in a number of ways. One involves storing the virtual area specification. The virtual area specification contains a description of at least one switching rule, each of which defines a connection between sinks and sources of a real-time stream of data of a particular type. The real-time connections between objects and network nodes are made by establishing a connection for each object with a source or sink. The real-time connections for data streams are based on one or more switching rule, the sources and sinks of the objects and their respective positions in the virtual space.
Background for Automated Real-Time Data Stream Switching in a Shared Virtual Area Communication Environment
When face-to-face communication is not possible, people rely on a variety of technological solutions to satisfy their communications needs. These solutions are usually designed to enhance one or more aspects in face-to-face communication. Voice communications are possible with traditional telephony. Instant messaging is also known as “chat”. Communication systems allow users to send text messages in real-time through instant message clients connected by a server. In some instant messaging systems, users can also be represented by graphic objects that are controlled by the user (known as “avatars”). Interactive virtual reality communication allows users to communicate in real time over multiple channels. They can also interact by manipulating avatars within a three-dimensional shared virtual space.
The interest in avatar-based virtual reality communication systems is growing due to the availability of computers with high processing power and high bandwidth network connections. The primary goal of a virtual reality system like this is to create an interactive virtual space where users can communicate and interact using real-time data, such as audio and video chat streams. “The virtual space is typically defined by a computer graphic specification that describes the visual geometries of the space. It also includes the colors and textures mapped to the visual geometry. The collision properties control how the users move within the space. And the auditory properties of the space such as reverberation, sound absorption, and reverberation properties.
In a typical virtual-reality system, users can communicate through an interface which is either a source or sink (or both), of one or more real-time data streams supported by the system. The virtual reality system connects by default each source in the virtual environment to each sink in the virtual environment, depending on the conditions set forth in global switching rules and local user preferences as well as the properties of the objects in the virtual area. These conditions are typically specified as relative distances between objects. Some systems, for example, are configured to prevent real-time data streams from being established if avatar separation distances exceed a threshold distance. Objects can also be designed to change the way data streams are displayed. A screen object, for example, can block views and sounds coming from a certain direction. Other objects can be used to alter the area of interaction associated with the avatar of a user when that avatar is in the object’s interaction area. “For example, a podium object can increase the size of audio interaction spaces for avatars in the interaction space on a virtual podium. A table adapter object can fold the interaction areas of all avatars at a table into one common space.
In one aspect of the invention, it features a method for switching real-time connections between network nodes that share a virtual space. A virtual area specification can be stored according to this method. The virtual area specification contains a description of one of more switching rules, each of which defines a connection between sinks and sources of a real-time stream of data in a virtual area. One or more connections between real-time streams are made between network nodes that are associated with objects. Each object is associated with a source or sink of at least one real-time stream type. The real-time connections for data streams are established using the switching rules and the sources and sinks of each object, as well as their respective positions in the virtual space.
The invention also includes apparatus that can implement the above-described method and computer-readable media that store computer-readable instructions to cause a computer implement the above-described method.
In another aspect of the invention, a computer-implemented construction method for a virtual space is featured. A model of the virtual space is generated in response to user input on a display monitor. The model contains geometric elements that represent the virtual area in the display monitor. One or more switching rule are assigned to the virtual area model in response to the user’s input. Each switching rule defines a connection between sinks and sources in the virtual space. The model of the virtual space and one or more switching rules are described in a virtual area specification. The virtual area specification can be stored on a computer-readable medium.
In another aspect, the invention features a network switch for switching real-time data stream connections between network nodes sharing a virtual area. The network switch includes a computer readable memory and a processing unit. The computer readable memory is operable to store a virtual area specification that includes a description of one or more switching rules each defining a respective connection between sources of a respective real-time data stream type and sinks of the real-time data stream type in terms of positions in the virtual area. The computer readable memory also is operable to store a table that includes network topology information describing routes to network destinations. The processing unit is operable to forward real-time data stream packets between network nodes each of which is associated with a respective position in the virtual area and at least one of a source and a sink of one or more of the real-time data stream types. The processing unit forwards the one or more real-time data stream packets based on the network topology information and the one or more switching rules.
The following description will reveal other features and benefits of the invention, including the drawings.
DESCRIPTION of Drawings
FIG. “FIG. 5 .
FIG. “FIG.7 is a block-diagram of an embodiment in which an area client node is connected to two other area clients nodes and an area server node, as part of an embodiment for a shared virtual communication area.
FIG. “FIG. 7 .
FIG. “FIG. The virtual area in FIG. 6 is populated by four avatar objects.