WO1998000812A1 - Server space forming method and apparatus - Google Patents

Server space forming method and apparatus Download PDF

Info

Publication number
WO1998000812A1
WO1998000812A1 PCT/JP1997/002273 JP9702273W WO9800812A1 WO 1998000812 A1 WO1998000812 A1 WO 1998000812A1 JP 9702273 W JP9702273 W JP 9702273W WO 9800812 A1 WO9800812 A1 WO 9800812A1
Authority
WO
WIPO (PCT)
Prior art keywords
space
function
client device
cyberspace
avatar
Prior art date
Application number
PCT/JP1997/002273
Other languages
French (fr)
Japanese (ja)
Inventor
Hideto Ikeda
Original Assignee
Gakkohojin Ritsumeikan
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gakkohojin Ritsumeikan filed Critical Gakkohojin Ritsumeikan
Publication of WO1998000812A1 publication Critical patent/WO1998000812A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Definitions

  • the present invention relates to a method and apparatus for creating a cyberspace for realizing a society (virtual space) on a computer network in a client Z server system.
  • cyberspace a society realized using networks and computers, has attracted great expectations, and technological development for building, operating, and applying cyberspace is being actively pursued.
  • the VRML technology described above which shows the space in three dimensions and allows you to walk in it Has the advantage that users can express something closer to the real-world entity.
  • the PC device cannot be easily participated by the client device because a very large load is applied to the client device (a high load problem on the client side).
  • the three-dimensional space constructed by the VRML technology described above performs space walking (walk-through) by manipulating the steering wheel displayed at the bottom of the screen, but the visual field on the screen changes dynamically when walking. Is what you do. By dynamically showing the change in the field of view that accompanies this movement, this space gives a sense of reality.
  • the present invention has been made in view of the above points, and provides a platform for easily constructing a cyberspace having advanced functions.
  • a method of creating cyberspace and reducing the load on the client device side by replacing the method of “moving the viewpoint” of the above with the method of “3D character movement + visual field synthesis when stopped” Things. Disclosure of the invention
  • the server device 1 and one or more client devices 3 are connected to a computer network.
  • the cyberspace is connected to each other on a computer network.
  • a space S which represents the shape and properties of a three-dimensional space, such as a box type, an open type such as a university, a town, etc.
  • Object 0 as a possessed object
  • Aba Yuichi A as a character visualized as an agent of a user who participates in the above-mentioned space S and acts as an agent
  • Obuji X Xt 0 and Avatar A as above
  • the server device 1 is modeled by four elements, namely, the manager M as a control function that maintains the order in the space S so as not to exert the functions under certain conditions. , Object I, Manager M, and Aba Yuichi A.
  • a data holding function 11 that holds data for building cyberspace described by four elements, and one or more data of this data holding function 11 1.
  • Space control functions 10 and 11 for one user to share from his / her client device 3 via the network 2 and communication for exchanging data and signals with the client device 3 on the network 2
  • the client device 3 has a function 13 and a cyber space data receiving function 17 8 for receiving and holding a cyber space construction data sent from the server device 1 and a cyber space receiving function.
  • Data reception function 178 Cyber space visualization function that receives data from 178 and visualizes a two-dimensional still image on the screen, and data and signals from server device 1
  • a communication function for sending and receiving data, and receiving a 2D still image from the server device 1 in response to a request from the client device 3 and performing 3D space imitation drawing by the perspective method. It features.
  • the method for creating cyberspace according to claim 2 is characterized in that the server device 1 has a space resource management function 11 for defining, storing, searching, updating, and deleting data for building cyberspace. I have. Further, the method for creating a cyberspace according to claim 3 is characterized in that the server device 1 is provided with a function for storing and reproducing the activity history of the avatar A 132.
  • the common space control functions 10 and 11 of the server device 1 are configured such that the space S and the object 0 constituting the cyberspace are viewed from the viewpoint of each user.
  • the resource management function 11 of the server device 1 is a class management that manages, as a class, those that share the properties of the resources to be managed and a group of programs for processing the resources.
  • Functions and related management functions that manage generalization, aggregation, and other relationships between classes of the classifying function, and an instance access function that enables high-speed search, update, and deletion of instances as class resources It is also characterized by an existing function integration function that reconfigures existing programs of the operating system as class methods.
  • the cyberspace visualization function of the client device 3 includes the object ⁇ and the avatar A on a wide-angle still image in perspective which shows the background of the space S.
  • a far-field image reduction function that reduces the still image that indicates the position of the image according to the depth of the layout, and a two-dimensional still image that overwrites the background image from the deepest It is characterized by having a forward image overwriting function that imitates closeness
  • the cyberspace visualization function of the client device 3 detects a collision between the mutual positions of the butter A objects and controls the movement of the avatar A. It is characterized by having.
  • the client device 3 includes a three-dimensional speech synthesis / playback function for synthesizing / playing the generated sound three-dimensionally according to the positional relationship between the sound generation position and the avatar A.
  • the playback function includes a voice distance attenuation function that controls the volume of the avatar A's voice according to the distance between the user's own avatar A and other avatars A and the space S. It has a directional speech synthesis function that allows the voice of avatar A to reach the right ear earlier than the left ear.
  • the server device 1 and one or more client devices 3 are mutually connected on a computer network.
  • the above cyber space is a three-dimensional such as a box type such as a classroom and a conference room, and an open type such as a university and a town.
  • the space S Participating in the above-mentioned space S, the space S as data representing the shape and properties of the space, the object 0 as an object arbitrarily arranged in this space S, and having a specific attribute group and function group Under certain conditions, Avatar A as a character visualized as a proxy for a user who is active and the functions provided by Object 0 and Avatar A are provided under certain conditions. It is modeled by four elements with the manager M as a control means for maintaining the order in the space S so as not to exert it, and the server device 1 is composed of the space S, the object, the manager M, and the avatar.
  • the client device 3 includes a cyberspace data receiving unit 178 that receives and holds the data for building cyberspace sent from the server device 1, and a cyberspace data receiving unit 178.
  • Cyberspace visualization means that receives 2D still image data and performs 3D space imitation drawing on the screen by perspective, and communication means 177 that communicates with the server device 1 and sends and receives signals It is characterized by having.
  • the server device 1 is provided with space resource management means 11 for defining, storing, searching, updating, and deleting cyberspace construction data.
  • the server device 1 is provided with means for storing and reproducing the activity history of Ababa Yuichi A 132.
  • the server device 1 includes the common space control means 10 and 11 which are configured to view the space S and the object ⁇ constituting the cyberspace from the viewpoint of each user.
  • a field-of-view image synthesizing means for generating a three-dimensional still image
  • an activity possibility search means for inspecting the activity possibility of avatar A sent from each client device 3 based on the definition of manager M
  • An activity reflecting means for notifying the client device 3 in order to reflect the activity A in each client device 3 is provided.
  • the resource management means 11 of the server device 1 is a classifying means for managing, as a class, those which share the properties of the resources to be managed and a group of programs for processing the resources.
  • the means of classifying An association management means that manages generalization and aggregation and other associations between classes, an instance access means that enables high-speed search, update, and deletion of instances as class resources, and an operating system It is characterized by the provision of existing function integration means that reconfigures existing programs owned by as a class method.
  • the cyberspace visualization means of the client device 3 includes the object ⁇ and the avatar A on a wide-angle still image in perspective which shows the background of the space S.
  • a distant image reduction unit that reduces the still image showing its appearance according to the depth of its arrangement, and a perspective image in 3D space using a 2D still image by overwriting the background image in order from the deepest It is characterized by having forward image overwriting means for imitating the feeling.
  • the cyberspace visualization means of the client device 3 detects a collision between the avatars A and A, and controls the movement of the avatar A. It is characterized by having means.
  • the client device 3 includes a three-dimensional sound synthesis / reproduction means for synthesizing / reproducing the generated sound three-dimensionally according to the positional relationship between the sound generation position and the avatar A.
  • the three-dimensional sound synthesizing / reproducing means includes sound distance attenuating means for controlling the volume of the sound of avatar A according to the distance between own avatar A and other avatars A and space S. And a directional voice synthesizing means for causing the voice of the avatar A on the right side to reach the right ear earlier than the left ear.
  • the space resource management system stores space libraries such as rooms and open spaces, desks, chairs, computers, VCRs, object libraries such as blackboards, one avatar face image library, one avatar clothing library, etc. It is managed, and the specific cyberspace designer defines the structure of cyberspace by combining these.
  • High -1 o-A feature of the present invention is that a cyberspace having various functions can be easily described (constructed).
  • This model is called the “S. OMA model” (see Fig. 1).
  • the server device 1 is composed of, for example, a high-performance UNIX-based graphics computer
  • the client device 3 is composed of, for example, a low-cost standard computer equipped with Windows 95. It is composed of a personal computer, and the server device 1 and one or more client devices 3 are connected by a network 2 using, for example, INS 64 lines.
  • a person who builds a cyberspace using this system first specifies an appropriate space type from a space library based on how the server space looks spatially. Generally, it is either a box-shaped space such as a room or an open space such as a town. This space type includes parameters such as background, size, color, and light source. By specifying specific values for these parameters, the specific space can be visualized (see Fig. 2). ).
  • objects such as desks / chairs, computers, and video devices to be placed in the space are selected from the space resource management system.
  • the object also contains parameters like the space type, and these values are specified and the position in the space is determined at the same time.
  • the specific objects placed in this way are:
  • the figure of Aba Yuichi (see Aba Yuichi A in Figure 5) acting in the space as the agent of the user participating in the space is determined.
  • the avatar's body type is determined by specifying specific values for the parameters that determine the body type, such as height, chest measurement, and sitting height, and by attaching head image data to the head and clothing image data to the body. Be able to identify individuals.
  • Avatars are potentially able to move around in space, change postures, talk to other avatars (users) with voice, and manipulate objects. (See Figure 2).
  • the cyberspace data defined in this way is held in the server device 1.
  • the server device 1 transmits to the client device 3 a message indicating the state of the space viewed from the viewpoint of the user.
  • This data consists of a still image to be the background, a still image and position indicating the shape of each object, the body type of the participating avatars, the posture parameter values and the head, and the clothing image data and position, and the space and object attribute values. And function group values.
  • the client device 3 that has received the spatial data visualizes the cyberspace (see Figs. 3 and 5).
  • the method is as follows: First, a still image showing the image of object X Avatar A is reduced according to the depth of the arrangement on a perspective still image showing the background of the space (far image reduction function). ). Then, the background image is overwritten in order from the deepest (forward image overwriting function), and the movement of the avatar is detected by detecting the collision of the A-objects with each other (collision control function). Mimics the visual perspective of a three-dimensional space using a still image of ⁇
  • the voice is transmitted from the client device 3 to the server device 1 via the network 3, and the server device 1 executes the voice data of all the users together with the avatar A's positional relationship data.
  • the client device 3 Upon receiving this, the client device 3
  • the volume of the avatar's voice is reduced according to the distance between the avatar and other avatars in the space (voice distance attenuation function), and the sound of the avatar Yuichi who is closer to the right has the right-side volume slightly higher than the left side. Simulates the sound in a three-dimensional space by causing it to arrive early (directional speech synthesis function) and playing it back (3D speech synthesis and playback function)
  • the avatar A When the avatar A performs an activity such as moving, changing a posture, or manipulating an object, the avatar A is queried to the server device 1 to check whether the avatar A may disturb the order in the space (activity). Result reporting function).
  • the server device 1 inspects it according to the definition of the manager (activity possibility check function), and if possible, permits the action, and at the same time notifies other client devices 3 of it (activity reflection function). It plays the role of controlling for consistent communication (common space control function).
  • cyberspace is added to the three elements of space, object, and avatar by adding an element called a manager by negative programming that has a function of a certain rule and restriction.
  • Cyberspace with advanced functions can be easily configured.
  • the introduction of managers through negative programming plays an important role in increasing the productivity of cyberspace construction and increasing the success rate of development.
  • the effect is enhanced by managing a library of space objects that make up cyberspace with the space resource management system on the server device 1 side.
  • the client device 3 imitates a 3D space based on a 2D still image created by a powerful graphics server. It is a low-speed personal computer that allows you to participate in a space represented by high-quality images.
  • VRML and the Java language use the visualization (rendering) of the three-dimensional space on the client device 3 side, so if you want to improve the image quality, the client device 3 has a higher quality.
  • the defect that performance is required is improved by making the high-performance server device 1 render.
  • the 3D speech synthesis and playback functions can realize immersive communication, and in this regard, it can also realize a sophisticated space that was not possible with conventional methods.
  • Figure 1 is a system configuration diagram for building a cyberspace according to the present invention.o
  • FIG. 2 is a diagram showing a basic procedure for building a cyberspace according to the present invention.
  • FIG. 3 is a diagram showing a basic operation of the cyberspace of the present invention.
  • FIG. 4 is a schematic block diagram of the server device of the present invention.
  • FIG. 5 is a diagram showing a state in which cyber space is drawn on the display unit on the client device side of the present invention.
  • FIG. 6 is a block diagram showing a functional configuration of a server basic control library of the server device of the present invention.
  • FIG. 7 is a block diagram showing a functional configuration of the space basic control function unit in the server basic control library 1 of the present invention.
  • FIG. 8 is a flowchart showing the control operation of the space start function unit in the space basic control function unit of the present invention.
  • FIG. 9 is a flowchart showing the control operation of the space participation function unit in the space basic control function unit of the present invention.
  • FIG. 10 is a flowchart showing the control operation of the space leaving function unit in the space basic control function unit of the present invention.
  • FIG. 11 is a flowchart showing the control operation of the space end function unit in the space basic control function unit of the present invention.
  • FIG. 12 is a block diagram showing a functional configuration of an object basic control function unit in the server basic control library of the present invention.
  • FIG. 13 is a block diagram showing a functional configuration of the avatar basic control function unit in the server basic control library 1 of the present invention.
  • FIG. 14 is a block diagram showing the functional configuration of the neighborhood space extraction function unit in the server basic control library 1 of the present invention.
  • FIG. 15 is a flowchart showing the control operation of the neighborhood object extraction function unit of the present invention.
  • FIG. 16 is a block diagram showing a functional configuration of the model conversion function unit in the server basic control library 1 of the present invention.
  • FIG. 17 is a flowchart showing the control operation of the wide-angle still image creation function unit of the present invention.
  • FIG. 18 is a block diagram showing a functional configuration of one of the spatial libraries according to the present invention.
  • FIG. 19 is a block diagram showing a functional configuration of one common object library of the present invention.
  • FIG. 20 is a block diagram showing a functional configuration of a video object in the common object library according to the present invention.
  • FIG. 21 is a flowchart showing a control operation of preparation for reproduction and start of reproduction in the video object x video of the present invention.
  • FIG. 22 is a flowchart showing a control operation of pause of reproduction in the video object of the present invention.
  • FIG. 23 is a flowchart showing a control operation for stopping reproduction in the video object of the present invention.
  • FIG. 24 is a flowchart showing a control operation for ending an image in the video object of the present invention.
  • FIG. 25 is a block diagram showing a functional configuration of a video camera object in the common object library of the present invention.
  • FIG. 26 is a flowchart showing the control operation in the camera preparation function unit of the video camera object of the present invention.
  • FIG. 27 is a flowchart showing the control operation in the camera image distribution function unit of the video camera object of the present invention.
  • FIG. 28 is a flowchart showing a control operation in the video start function unit and the recording stop function unit of the video camera object of the present invention.
  • FIG. 29 is a flowchart showing a control operation in the playback start function unit and the playback pause function unit of the video camera object X of the present invention.
  • FIG. 30 is a flowchart showing a control operation in the playback stop function unit and the end function unit of the video camera object of the present invention.
  • FIG. 31 is a block diagram showing a functional configuration of a blackboard object in the common object library 1 of the present invention.
  • FIG. 32 is a flowchart showing a control operation in the blackboard preparation function unit and the drawing start instruction function unit of the blackboard object of the present invention.
  • FIG. 33 is a flowchart showing the control operation in the drawing distribution function unit and the drawing end distribution function unit of the blackboard object of the present invention.
  • FIG. 34 is a flowchart showing a control operation in the blackboard object end function unit of the blackboard object of the present invention.
  • FIG. 35 is a block diagram showing a functional configuration of a microphone / speech force object in the common object library of the present invention.
  • FIG. 36 is a flowchart showing a control operation in the microphone preparation function unit of the microphone / speaker object of the present invention.
  • FIG. 37 is a flowchart showing a control operation in the voice distribution function unit of the microphone / speaker object of the present invention.
  • FIG. 38 is a flowchart showing the control operation in the recording start function unit and the recording stop function unit of the microphone and speaker object of the present invention.
  • FIG. 39 is a flowchart showing a control operation in the reproduction start function section and the reproduction pause function section of the microphone 1 speaker object of the present invention.
  • FIG. 40 is a flowchart showing a control operation in the stop function unit of the microphone / speaker object according to the present invention.
  • FIG. 41 is a flowchart showing the control operation of the microphone / speaker object termination function unit of the present invention.
  • FIG. 42 is a block diagram showing a functional configuration of a chat object in the common object library of the present invention.
  • FIG. 43 is a flowchart showing a control operation in the start function section and the text distribution function section of the chat object according to the present invention.
  • FIG. 44 is a block diagram showing a functional configuration of a manager library according to the present invention.
  • FIG. 45 is a block diagram showing a functional configuration of the position manager 1 function unit in the manager library 1 of the present invention.
  • FIG. 46 is a block diagram showing the functional configuration of the security manager function unit in the manager library 1 of the present invention.
  • FIG. 47 is a block diagram showing a functional configuration of the history manager function unit in the manager library 1 of the present invention.
  • FIG. 48 is a block diagram showing the functional configuration of the client / server communication function unit of the present invention.
  • FIG. 49 is a block diagram of the client device of the present invention.
  • FIG. 50 is a block diagram showing the functional configuration of the memory of the client device of the present invention.
  • FIG. 51 is a flowchart showing the control operation of the speaker object of the client device of the present invention.
  • a cyber space is described by four elements: a space, an object, a manager, and an avator / agent, and operates on the Internet.
  • the system configuration is shown in Fig. 1.
  • the server device 1 is composed of a high-performance graphics computer capable of high-speed rendering processing, multi-user control, and the like.
  • the client device 3 is, for example, a low-cost standard computer equipped with Windows 95. It is composed of a personal computer, and the server device 1 and one or more client devices 3 are connected, for example, by a network 2 with INS 64 lines.
  • VRML has a form described in VRML, and it consists of state variables (attributes) that it holds and methods that process the variables. These methods are basically activated by the operation of the avatar described later. Some of these objects have a sensor, and a dynamic object whose state or shape changes with the sensor. An autonomous object whose method is automatically activated by a change in state. There is also.
  • Characters acting in the space as a user's agent are called avatars. It has the shape of a human being, and is three-dimensional in a three-dimensional space represented by perspective. Move to For example, if Ababa A shown in Fig. 5 goes deeper, it becomes smaller, if it comes closer, Ababa A becomes larger, and if it turns sideways, it becomes horizontal. Ababa-A is an object, for example, if you hide behind a pillar, you will not be able to see part of it. And Avatar A can manipulate the object and speak in a live voice. You control your avatar A's actions with your mouse.
  • the space type is managed as a space library in the database 11 shown in Fig. 4, and what kind of space is called here is specified, and the background size, color, light source And so on. Also, the space is divided into areas to cause events.
  • the object description is also stored in the database 11 in the same manner as the object library, and the object library is managed.
  • the server device 1 stores the name of the object library and the parameters that the object has. Specify evening.
  • Ababa Yuichi which specifies the moving range of objects, is as follows. Only one Ababa Yuichi library, whose shape is roughly determined, is managed in database 11 and the server Use device 1 to specify parameters such as the avatar's body type, head image, and clothing. It also specifies the initial avatar layout coordinates and posture, and specifies the user name to control.
  • manager's description specifies when the function of a given object cannot be triggered by Ababa Yuichi in the form of “negative 'programming'”.
  • the platform This is realized by a server architecture, in which the server device 1 and the client device 3 share functions.
  • the server device 1 holds a cyberspace model, notifies each client device 3 of the state of the space (data), and also informs the actions of other clients and their results, so that the actions of the clients do not contradict each other. Control function.
  • each user receives the state of the space viewed from any position and direction as a high-precision still image.
  • the space is represented as a high-precision still image by a perspective method. It moves around on a still image under the control of the user.
  • Aba Yuichi goes to a predetermined area (position) in the space, the character transforms and shows its state, and at the same time manipulates things and flies to another space (warps). Can be.
  • the server device 1 can use a high-performance graphics computer, it can synthesize high-quality still images at high speed according to the viewpoint and send it to the client device 3.
  • the “dynamic viewpoint movement” performed by conventional VRML is not performed smoothly.
  • the quality of the image at the time of stopping is important, and in this system, high-precision still images are sent to the client device 3 with a light load, while maintaining the image quality, and light processing on the client device 3 side Has been realized.
  • the client device 3 is a personal computer directly operated by a user participating in cyberspace (virtual space).
  • the client 3 visualizes the space model received from the server device 1 via the network 2 and operates the avatar A. Is to be performed.
  • the client device 3 side receives the client device 3 side. Processing can be reduced, and users can participate in the space with low-cost personal computers ⁇
  • the box-shaped space is a space surrounded by walls on all sides, with windows and doors attached. Examples of the space are the classrooms, conference rooms, and gymnasiums described above.
  • the attributes of this type of space include width, height, and depth.
  • An open space is a flat space without any surroundings, and examples of such spaces are the above-mentioned university campuses, baseball stadiums, and towns.
  • Configuration of server device 1 is a flat space without any surroundings, and examples of such spaces are the above-mentioned university campuses, baseball stadiums, and towns.
  • Fig. 4 shows a block diagram of the server device 1.
  • the database 11 stores various data and programs in advance as a library, the memory 12 stores data programs, and the exchange of data with the client device 3.
  • Client communication server 13 and database management system , Etc., and a CPU 10 which controls the entire control.
  • This server device 1 The functions supported by this server device 1 are: (1) neighborhood space extraction function, (2) model conversion function, (3) multi-user control function, (4) shared object management function, (4) opening function, and (4) data management function. It is.
  • the neighborhood space extraction function described above is a function to cut out only the part (space, object, avatar) related to the client in the space where the client participates.
  • the model conversion function is a function that generates a pseudo three-dimensional cyberspace model to be sent to the client from the client's point of view.
  • the multi-user one control function is that multiple users are the same. This function is necessary for sharing space and communicating without contradiction.
  • the shared object management function is a function to manage the objects existing in the space
  • 5the log function is to record the movement of the avatar in the space and the changes of the objects. It is a function that manages and reproduces this.
  • the database management function manages the components of the space (SOMA space) as a database 11. As shown in FIG. 4, various libraries 16 to 19 created to support the above-mentioned functions are stored in the database 11 in advance.
  • the server basic control library 16 is a library required to configure the main part of the server device 1
  • the space library 17 is a library representing the space of cyber space.
  • the common object library 118 is a library of objects existing in cyberspace
  • the manager library 19 is a library necessary for realizing the order in cyberspace.
  • the server device 1 is located in the space where the server device 1 is standing. It manages the business and the avatar A and responds to the request from the client device 3 while cooperating with the manager who realizes the order in the space, and provides the functions necessary to configure the main part.
  • the library that we have is the server basic control library 16.
  • the server basic control library 16 is composed of a basic space control function unit 22, a basic Xbox basic control function unit 23, a basic unit control function unit 24, and a neighborhood space extraction function. It consists of a function part 25 and a model conversion function part 26.
  • the basic space control function unit 22 has the functions necessary for the server device 1 to manage the space constituting the cyber space, and the basic object control function unit 23 has the function of the cyber space.
  • the server device 1 has functions necessary for the server device 1 to manage the configured objects.
  • the avatar basic control function unit 24 has a function necessary for the server device 1 to manage the avatar A participating in the cyber space, and the neighborhood space extraction function unit 25 sends the avatar A to the client device 3. It has an object near the avatar A and a function to select another avatar A.
  • the model conversion function unit 26 has a function of creating a wide-angle still image of a space or an object which needs to be sent to the client device 3 and is viewed from the viewpoint of the user of the client device 3.
  • the basic space control function unit 22 of the server basic control library 16 has a configuration as shown in Fig. 7, and the space start function unit 31, the space participation function unit 32, the space exit function unit 33, Space end function 34, space attribute setting function 35, space attribute inquiry function 36, space area inquiry function 37, administrator authentication function 38, and user-authentication function 39 It is configured.
  • the function of the space start function section 31 is to start up a space, and the space is designed to be started up by a user who has management qualifications. As shown in FIG.
  • step S 8 the operation is started by an event from the client device 3, the server device 1 is called by a space start request (step S 1) from a certain client device 3, and on the server device 1 side, As shown in step S2, a check is made with a passcode to determine whether the user who has requested startup has administrative qualifications. If the user has the management qualification in step S3, the process proceeds to step S4, and the space (SOMA space) is set up according to the space stored in the designated directory. .
  • the space participation function unit 32 shown in FIG. 7 has a function to allow the user to participate in the space where the user is standing up, and is driven by an event from a certain client device 3 as shown in FIG. Is done. That is, a space participation request is sent from a certain client apparatus 3 to the server apparatus 1 as shown in step SI 1. As shown in step S12, the server device 1 checks whether the designated space is up and checks with a password whether the user who has requested participation has participation qualification.
  • step S13 if there is eligibility to participate (step S13), the user is allowed to participate in the space as shown in step S14. Further, the server device 1 sends a data of the space model and the control model of the participating space to the client device 3 (step S15).
  • the space exit function section 33 shown in FIG. 7 is for letting the user participating in the space exit the space, and is driven by an event from the client device 3 of the user who wants to exit as shown in FIG. Is done. That is, when a user participating in the current space leaves, a space exit request is sent from the user's client device 3 to the server device 1 (step S2). 1) The server device 1 determines that there is an exit request in step S22, and exits the user who has made a request from the space as shown in step S23. Then, the server device 1 sends a notification that the user has left the space to the client device 3 of the user who has requested the notification (step S24), and the client device 3 that has sent the space exit request returns to the client device 3. The fact is received (step S25).
  • the space end function unit 34 in FIG. 7 is for terminating the rising space, and is driven by an event from the management user.
  • FIG. 11 shows a flowchart for ending this space, and a space ending request is sent from the client device 3 having the management qualification to the server device 1 from the client device 3 (step S31).
  • the server device 1 Upon receiving the space end request, the server device 1 checks in step S32 whether the user has a management qualification with a password. As a result of the check, if the user has the management qualification, a signal for instructing all participants to leave is sent to each client device 3 in step S33, and the space is closed in step S34.
  • the space attribute setting function unit 35 shown in FIG. 7 is for setting the attributes of the space, and the attributes include the color of the wall.
  • the space attribute inquiry function unit 36 has a function of responding to an inquiry about the attribute of the space, and is driven by a request from the client device 3. Attributes include the color of the wall.
  • the space area inquiry function unit 37 has a function of responding to an inquiry about information on an area held by the space, and is defined by a space object when called by a request from the client device 3. The area information is returned to the requesting client device 3.
  • the administrator authentication function unit 38 of the basic space control function unit 22 shown in FIG. 7 has a function of authenticating whether or not the user is an administrator.
  • the space shown in FIG. 8 and FIG. During the startup of the space or the end of the space Be moved.
  • the operation of the administrator authentication function unit 38 is performed by the pass-word sent as to whether the user who starts up the space or ends the space shown in FIGS. 8 and 11 has the management qualification. Check is performed.
  • the user authentication function unit 39 performs user authentication, and is called and driven during the space participation process.
  • the operation of the user authentication function section 39 checks with a password whether the user who has applied for participation in the space shown in FIG. 9 has the participation qualification.
  • FIG. 12 shows a functional block diagram of the object basic control function part 23 in the server basic control library 16 shown in FIG. 6, and includes an object addition function part 42 and an object deletion function part. 43, an object attribute setting function unit 44, an object attribute inquiry function unit 45, and an object operation function unit 46.
  • the object addition function section 42 has a function of adding an object in the space under the control of the server device 1 and is configured to configure the space during the space start-up process described above.
  • the object addition function unit 42 is driven by an event when the server device 1 is called or when called by a request from a certain client device 3. It is registered so that it can be managed, and it is also registered with necessary managers (such as the location manager and security manager described later).
  • the object deletion function unit 43 shown in FIG. 12 has a function of deleting an object in the space from the control of the server device 1.
  • the object deletion function unit 43 is in the process of terminating the space or from the client device 3. Driven by request.
  • the operation of this object deletion function unit 43 is registered in the server 1 This is to delete the objects that have been deleted, and also delete them as necessary manager functions.
  • the object property setting function section 44 sets attributes of the object, Driven by request from 3
  • the operation of the object attribute setting function unit 44 sets the attribute of the object after asking the manager whether the attribute setting change is permitted.
  • attributes include name, color, and object-specific state.
  • the object attribute inquiry function unit 45 shown in FIG. 12 responds to the inquiry about the attribute of the object set in the object attribute setting function unit 44 described above. Driven by request from
  • the operation of the object property inquiry function unit 45 inquires of the manager whether or not the attribute inquiry is permitted, and then returns the object attribute to the client device 3 which has requested the attribute.
  • Attributes include name, color, object-specific obscureness, and the like.
  • the object operation function unit 46 operates an object registered in the manager, and is driven by a request from the client device 3. It is also driven from the server device 1.
  • the operation of the object operation function part 46 calls the manager of the object after inquiring the manager whether the operation is permitted.
  • FIG. 13 shows a functional block diagram of the avatar basic control function unit 24 in the server basic control library 16 shown in FIG. 0, avatar deletion function 51, avatar control stop function 52, avatar control stop release function 53, avatar attribute setting function 54, avatar attribute inquiry function 55, etc. I have.
  • the avatar addition function section 50 has a function of adding the avatar A that has joined the space under the management of the server device 1, and is driven by a space participation request from the client device 3.
  • the operation of the avatar addition function unit 50 is for registering the server device 1 so as to manage the avatar A participating in the space, and also performs the registration as a function of the manager.
  • the avatar deletion function unit 51 shown in FIG. 13 deletes the avatar A who has left the space from the control of the server device 1 and is driven by a space exit request from the client device 3. Is done.
  • the operation of the avatar deletion function unit 51 is to delete the avatar A registered in the server device 1 and also delete it from the manager.
  • an avatar control stop function unit 52 shown in FIG. 13 stops control of the avatar A, and is called and driven by the server device 1.
  • the operation of the avatar control stop function section 52 changes the state of the avatar A to the control stop state so that control from the client device 3 cannot be performed.
  • the avatar control stop release function unit 53 restarts the control of the avatar A, which has stopped the control of the avatar A by the avatar control stop function unit 52, and is called and driven by the server device 1. You.
  • the operation of the avatar control stop canceling function unit 53 changes the state of the avatar A to a controllable state and enables control from the client device 3.
  • the avatar attribute setting function unit 54 shown in FIG. 13 sets the attribute of the avatar A, and is driven by a request from the client device 3. You.
  • the operation of the avatar attribute setting function unit 54 sets the attribute of the avatar A after inquiring of the manager whether the attribute setting change is permitted.
  • These attributes include name and appearance (gif file), etc. ⁇
  • the avatar attribute inquiry function unit 55 responds to an inquiry about the attribute of the avatar A, and is driven by a request from the client device 3.
  • the operation of the butter attribute inquiring function unit 55 is to inquire of the manager whether the inquiring of the attribute is permitted, and then return to the client device 3 which has requested the attribute of the avatar A.
  • attributes include name and appearance (gif file).
  • FIG. 14 shows a functional block diagram of the neighborhood space extraction function unit 25 shown in FIG. 6, and the neighborhood space extraction function unit 25 is located in the space where the client device 3 participates. It has a function to cut out only the part (space, object, Ava Yu A) related to the client device 3 (user).
  • the neighborhood space extraction function unit 25 is constituted by a neighborhood object extraction function unit 57. Then, the nearby object extraction function unit 57 selects an object to be sent to the client device 3 near the avatar A or another avatar A.
  • FIG. 15 shows a control flow diagram of the neighborhood object extraction function unit 57.
  • a view update request is sent from the client device 3 to the server device 1 (step S41), and the server device 1 executes step S4.
  • step 2 it is determined that the view is updated, and the process proceeds to step S43.
  • step S43 an object that is located near the avatar A and affects the avatar A is selected (step S43), and the object selected in step S44 is further selected.
  • the client device 3 receives the client device 3 and the server device 1 executes step S4.
  • step 2 it is determined that the view is updated, and the process proceeds to step S43.
  • an object that is located near the avatar A and affects the avatar A is selected (step S43), and the object selected in step S44 is further selected.
  • FIG. 16 shows a functional block diagram of the model conversion function unit 26 shown in FIG.
  • the model conversion function unit 26 has a function of generating a pseudo three-dimensional cyber base model to be sent to the client device 3 from the viewpoint of the user of the client device 3.
  • the model conversion function unit 26 is composed of a wide-angle still image creation function unit 59.
  • the wide-angle still image creation function unit 59 creates a wide-angle still image of a space or object viewed from the viewpoint of the user of the client device 3.
  • FIG. 17 shows a control flow diagram of the wide-angle still image creation function unit 59.
  • a view update request is sent from the client device 3 to the server device 1 (step S51).
  • step 52 it is determined that the view is updated, and the process proceeds to step S53.
  • step S53 when updating the field of view of the client device 3, a wide-angle still image of the entire space visible from the viewpoint of the client device 3 is created (step S53), and the wide-angle still image created in step S54 is created. It is sent to the requested client device 3.
  • Fig. 18 shows a functional block diagram of the spatial library 17 stored in the database 11 shown in Fig. 4.
  • This spatial library — 17 is a cyberspace based on the SOMA model. It is one of the class libraries for realizing the space required to construct the.
  • the space stored in the space library 17 is a high-level description of the three-dimensional space that can be described by VRML 1.0, with the functions of the space embedded.
  • the space library 17 includes an open space function unit 61 and a room space function unit 62. In the open space function unit 61, only the ground exists, and the attributes of the space that extends infinitely include the ground color and the background.
  • the four sides and the upper part are surrounded by walls, and it is impossible to get out of it. It's swelling.
  • the attributes of this space include the size of the room (width, depth, height) and the color of the walls.
  • FIG. 19 shows a functional block diagram of the common object library 18 stored in the database 11 shown in FIG. 4, and the common object library 18 is shared on the platform. This is a group of object libraries prepared in advance for the purpose of use.
  • the common object library 18 has a video object 65, a video camera object 66, a blackboard object 67, a microphone 'speaker object 68, and a chat object 69. It consists of office objects 70, such as desks, chairs, bookcases, and mouthpieces, HTML objects 71, and computer objects 72.
  • office objects 70 such as desks, chairs, bookcases, and mouthpieces
  • HTML objects 71 such as "https, etc.
  • computer objects 72 such as a computer objects.
  • the above-mentioned eight objects 65 to 72 are provided as an example, but the present invention is not limited to these, and objects necessary for cyberspace may be further added.
  • these objects 65 to 72 are objects that are physically operated to directly restrict the SOMA space or as a communication tool between the client devices 3 (one user). is there.
  • the video object 65 has a function of reproducing a moving image in a previously prepared MPEG (Motion Picture Experts Group) format, and has a configuration as shown in FIG. I have.
  • MPEG Motion Picture Experts Group
  • the video object 65 is composed of a playback preparation function section 76, a playback start function section 77, a pause function section 78, a stop function section 79, an end function section 80, a midway participation function section 81, And the exit function section.
  • the playback preparation function unit 76 receives a use start instruction from a certain client device 3. It is driven as an event, and a use start request is sent from the client device 3 to the server device 1 as shown in FIG. 21 (step S61).
  • the server device 1 transmits the video object specified by the client device 3 to each client device 3 in an MPEG format file (step S62), and prepares for the client device 3 to play back the video. To be able to Then, as processing on the client device 3 side, a window for MPEG playback is started (step S63).
  • the playback start function unit 77 is driven by using a playback start instruction from the client device 3 as an event.
  • the client device 3 that has started the window in step S63 A playback start request is sent to server device 1 (step S64).
  • the server device 1 receives the playback start instruction from the client device 3 and sends a playback start instruction to each client device 3 (step S65). Then, the client device 3 which has received the instruction to start the reproduction from the server device 1 starts the reproduction of the MPEG image (step S66).
  • the pause function unit 78 in the video object 65 shown in FIG. 20 is for temporarily stopping the reproduction of an image in response to a pause request from the client device 3.
  • the client device 3 sends a pause request to the server device 1 while reproducing the image in step S71 (step S72).
  • the server device 1 that has received the suspension instruction from a certain client device 3 sends a suspension instruction to each client device 3 in step S73.
  • step S73 each client device 3 temporarily stops playing the MPEG image. Thereafter, if there is no reproduction start instruction from the server device 1 shown in step S76, the paused state is maintained, and if the reproduction start instruction is received from the server device 1, steps S75 to S7 are executed. Go to 7, Play the next image.
  • the stop function unit 79 shown in FIG. 20 is for stopping an image being played back on the client device 3, and as shown in FIG. 23, a stop instruction request from the client device 3 is sent to the server device. It is sent to 1 (step S81).
  • the server apparatus 1 receives a stop instruction from a certain client apparatus 3 and sends a stop instruction to each client apparatus 3 (step S82).
  • each client device 3 Upon receiving the stop instruction from the server device 1, each client device 3 stops the MPEG image (step S83). Thereafter, if the reproduction start instruction is not received from the server device 1 shown in step S8, the stop of the image is continued, and if the reproduction start instruction is received from the server device 1, the steps S85 to S8 are executed. Go to step 6 and play the image from the beginning.
  • the termination function unit 80 terminates the window of the client device 3, and sends a termination request from a certain client device 3 to the server device 1 as shown in FIG. 24 (step S91). .
  • the server device 1 receives an end instruction from a certain client device 3 and sends an instruction to close the MPEG playback window to each client device 3 (step S92).
  • Each client device 3 that has received the end instruction from the server device 1 ends the window for MPEG playback (step S93).
  • the midway participation function unit 81 of the video object 65 is driven as an event when the server device 1 receives a signal to which a certain client device 3 (user) newly participates.
  • the client device 3 (user) is added to the client table to be transmitted by this event, and the MPEG image and the playback start position are sent to the video object of the client device 3.
  • the newly joined client device 3 is a window for MPEG playback. Create ⁇ and play the MPEG image in the same way as above.
  • the exit function unit 82 is driven as an event when the client exits, and deletes the client device 3 from the client table to be transmitted. In this case, there is no particular processing on the client device 3 side.
  • This video camera project 66 has a function of saving an image captured from the video camera on the client device 3 side in a JPEG Joint Photographic Expert Group (JPEG) format and displaying the images sequentially. It also has the function of playing back recorded images.
  • JPEG Joint Photographic Expert Group
  • this video camera object 66 has a camera preparation function 85, a camera image distribution function 86, a camera vision change function 87, a recording start function 88, a recording function Stop function section 89, playback start function section 90, playback pause function section 91, playback stop function section 92, end function section 93, midway participation function section 94, exit function section 95, etc. It is configured.
  • the camera preparation function unit 85 causes a window for recording to be displayed on each client device 3, and as shown in FIG. 26, a request to start using a video camera from the client device 3. Driven as an event. That is, a use start request is sent from the client device 3 to the server device 1 (step S100).
  • the server device 1 checks whether or not the video camera object specified by a certain client device 3 is operable based on the use start request sent from the client device 3, and if it is operable, sends a message to each client device 3.
  • An instruction to display a window for recording and playback is transmitted (step S101).
  • Each client device 3 receiving the instruction from the server device 1 displays a window for planning (step S102), and further notifies the client device 3 that the window has been displayed from each client device 3 to the server device. Send to 1 Bus S103).
  • the camera image distribution function unit 86 operates by being driven by the image reception signal from the client device 3 as an event. That is, as shown in step S103 of FIG. 26, a notification that a window has been displayed is received from each client device 3, and the server device 1 receives a JPEG image captured from the video camera at fixed time intervals. Then, as shown in step S110 of FIG. 27, when there is an image reception request from the client device 3, the received JPEG image is transmitted to each client device 3 at a fixed time interval (step S110). S 1 1 1). Then, as shown in step S113, this process is repeated until a certain client device 3 notifies the end of recording.
  • each client device 3 that has received the JPEG image from the server device 1 displays the JPEG image as shown in step S112.
  • the camera visual change function unit 87 shown in FIG. 25 is driven by a visual change instruction from the client device 3 as an event.
  • An instruction to change the visual sense of the video camera from a certain client device 3 is sent to the server device 1.
  • Side and transmits the visual change data corresponding to the content to the client device 3.
  • the client device 3 controls the visual change of the attached video camera according to the data. In this case, there is no particular processing on the client device 3 side, and the change in the visual sense is directly controlled from the server device 1 side.
  • This recording start function unit 88 is driven by a recording start instruction from the client device 3 from the client device 3 as an event.
  • a recording start request is sent from a certain client device 3 to the server device 1.
  • Server device 1 Receiving a recording start instruction from the client device 3 and storing the images taken from the video camera in the server device 1 in chronological order in the JPEG format (step S122) o
  • step S122 the stored JPEG image is transmitted to each client device 3.
  • Each client device 3 displays the received JPEG image (step S123).
  • the recording stop function unit 89 shown in FIG. 25 is driven by a recording stop instruction from a certain client device 3 as an event, and as shown in FIG.
  • the request is sent to the server device 1 (step S124), and the server device 1 that has received the recording stop instruction from the certain client device 3 stops storing the image captured from the video camera (step S12). Five) .
  • the recording / playback function unit 90 of the video camera object 66 shown in FIG. 25 operates by driving a playback start instruction from a certain client device 3 as an event. That is, as shown in FIG. 29, in step S131, a playback start request is sent from a certain client device 3 to the server device 1, and the server device 1 receives this playback start instruction, and The data is transmitted in time series in the JPEG format (step S1 32).
  • Each client device 3 received from the server device 1 displays the JPEG image (step S133).
  • the playback pause function unit 91 is driven by a pause instruction from a client device 3 as an event. That is, in step S134 of FIG. 29, a suspension request is sent from a certain client device 3 to the server device 1, and the server device 1 that has received the suspension request sends a suspension request to each client device 3. Send instructions (step S135). Then, each of the client devices 3 receiving the pause instruction pauses the reproduction (step S136). After that, when the server device 1 receives a reproduction start instruction from the client device 3 as shown in step S137, the server device 1 sends the continued image to the respective client devices 3 after the pause. Send it (Step S138). Each client device 3 displays the JPEG image received from the server device 1 (step S139).
  • the rehabilitation captive function section 92 is driven by a stop instruction from a certain client device 3 as an event.
  • a reactivation stop request from a certain client device 3 is sent to the server device 1.
  • Sent step S144.
  • the server device 1 that has received the stop instruction from the client device 3 transmits a playback stop instruction to each client device 3 (step S144). Then, each of the client devices 3 which has received the stop instruction from the server device 1 stops the reproduction (step S144).
  • step S14 when a reproduction start request is sent from a certain client device 3 to the server device 1, the server device 1 transmits the image from the beginning to each client device 3. Yes (step S 1 4 5). Then, each client device 3 displays a JPEG image (step S16) o
  • the end function unit 93 is driven and operated by using an end instruction from a certain client device 3 as an event, and as shown in step S147 of FIG. 30, a certain client device 3
  • the server device 1 that has received the termination instruction sends an instruction to close the window for recording and playback to each client device 3 (Step S148) o
  • Each of the client devices 3 receiving the ft indication for closing the window from the server device 1 closes the window for recording and playback (step S 19) o
  • the client device 3 is driven by an event of newly joining.
  • the server device 1 adds a client to the client table to be transmitted, and transmits the JPEG image to the video camera object of the new client.
  • the newly participating client displays a window for recording in the same manner as described above, and displays the received JPEG image.
  • the leaving function unit 95 is driven by an event that the client (client device 3) leaves, and the server device 1 deletes the client from the client table to be transmitted. In this case, there is no special processing on the client side to leave.
  • FIG. 31 shows a functional block diagram of the blackboard object 67 in the common object library 18 shown in FIG. 19, and the blackboard object 67 is in a paint format.
  • the blackboard object 67 includes a blackboard preparation function unit 101, a drawing start instruction function unit 102, a drawing distribution function unit 103, and a drawing end distribution function unit 104. It consists of a blackboard object ending function unit 105, a halfway participation function unit 106, and a leaving function unit 107.
  • the blackboard preparation function unit 101 drives and operates a use start request from a certain client device 3 as an event. As shown in step S 151 of FIG. Sends a use start request to the server device 1.
  • Sa The server device 1 receives the use of the blackboard object from the client device 3 and transmits the final drawing state of the specified blackboard object to each client device 3 (step S 15 2).
  • Each client device 3 displays a window for the blackboard and displays the received drawing status (step S153). At this time, the client device 3 is set to a state in which only a drawing start instruction can be given, and a drawing object is set to a disabled state.
  • a drawing start request from a certain client device 3 is sent to the server device 1, and in the server device 1, A drawing start is received from a certain client device 3, and an instruction to disable drawing is transmitted to another client device 3 (step S155). Then, the client device 3 that has transmitted the drawing start request enables the object for drawing (step S156), and disables the drawing start of the other client devices 3 (step S156).
  • step S15 a drawing start request from a certain client device 3 is sent to the server device 1, and in the server device 1, A drawing start is received from a certain client device 3, and an instruction to disable drawing is transmitted to another client device 3 (step S155). Then, the client device 3 that has transmitted the drawing start request enables the object for drawing (step S156), and disables the drawing start of the other client devices 3 (step S156).
  • the drawing distribution function unit 103 of the blackboard object 67 is driven by receiving a drawing image from the client device 3, and as shown in step S 161 of FIG. 33, the client device The drawing image is transmitted to the server device 1 from the server device 3, and the server device 1 receives the drawing state of the client device 3 capable of drawing at regular intervals and saves the drawing state in a time-series manner (step S1662). Further, the server device 1 transmits the drawing state to the other client devices 3 as shown in step S163.
  • the other client device 3 displays the drawing received from the server device 1 (Step S164).
  • the drawing end distribution function unit 104 drives a drawing end instruction from a certain client device 3 as an event, as shown in step S165 of FIG. 33.
  • a drawing end request is sent from a certain client device 3 to the server device 1.
  • the server device 1 Upon receiving the drawing end request from the client device 3, the server device 1 transmits an instruction to enable drawing to the other client devices 3 (step S166)
  • the client device 3 that has received the drawing enable instruction from the server device 1 becomes usable for starting drawing, and the object for drawing becomes unavailable. Further, the blackboard object termination function unit 105 is driven by a termination request sent from a certain client device 3 to the server device 1 (step S171).
  • the server device 1 receives an end instruction from a certain client device 3 and transmits an instruction to close the window for the blackboard object to each client device 3 (step S 172).
  • Each client device 3 that has received the instruction from the server device 1 ends the window for the blackboard object (step S172).
  • the midway participation function unit 106 of the blackboard object 67 is operated when a client device 3 (client) newly participates.
  • the client is added to the client table to be transmitted, and the drawing state and the drawing image to the blackboard object are transmitted to the client.
  • a window for a blackboard is displayed, and a drawing image is displayed. Also set the usable state.
  • the exit function unit 107 is operated by the event that the client exits. That is, the client is deleted from the client table to be transmitted. There is no particular processing on the client device 3 side.
  • a functional block diagram of the microphone's speaker object 68 in the common object library 18 shown in FIG. 19 is shown in FIG. This microphone- The speed object 68 has a function of storing the sound recorded from the microphone and reproducing the sound sequentially, and also has a function of reproducing the recorded sound.
  • the microphone / speaker object 68 includes a microphone preparation function unit 111, a voice distribution function unit 112, a recording start function unit 113, and a recording stop function unit 111. 4, Play start function 1 1 5, Play pause function 1 1 6, Stop function 1 1 7, End function 1 1 8, Participation function 1 1 9 and Exit function 1 2 0, etc. It is composed of
  • the microphone preparation function unit 111 is driven by a use start instruction from a certain client device 3. That is, as shown in FIG. 36, a use start request is sent from a certain client device 3 to the server device 1 (step S181), and on the server device 1 side, a request from a certain client device 3 is specified. It is checked whether or not the microphone is operable, and if operable, the microphone of the client device 3 is enabled (step S182). In addition, an instruction to disable the microphone is transmitted to the other client device 3 and an instruction is transmitted so that the speaker of the other client device 3 can be used (step S183).
  • the client device 3 that has sent the use start request to the server device 1 prepares for the microphone operation and the speaker (step S184), and confirms that these preparations have been completed. Send to 1 (Step S 1 8 5) o
  • the voice distribution function unit 112 of the microphone / speaker object 68 shown in FIG. 35 is driven by using a voice reception instruction from the client device 3 as an event.
  • a client device 3 sends a voice reception request to the server device 1, and the server device 1 transmits the voice recorded from each client device 3 at regular time intervals.
  • Receive each client The data is transmitted to the device 3 (Step S192). This process is repeated until there is a notice of termination from the client device 3.
  • the client device 3 that has received the audio from the server device 1 reproduces the audio (step S193).
  • FIG. 38 shows a control flow diagram of the recording start function unit 113 and the recording stop function unit 114 of the microphone / speaker object 68.
  • the recording start function unit 113 is driven by a sound start instruction from the client device 3 as an event.
  • a recording start request is sent from the client device 3 to the server device 1, and the server device 1 receives a recording start instruction from a certain client device 3, and receives the transmitted voice.
  • the data is stored in the server device 1 in chronological order (step S202). Further, the stored voice is transmitted to each client device 3 (step S203).
  • Each client device 3 that has received the audio from the server device 1 reproduces the audio (step S204).
  • the recording stop function section 114 is driven as an event by a recording stop instruction from the client device 3. As shown in step S205 of FIG. 38, a recording stop request is sent from a certain client device 3 to the server device 1, and the server device 1 receives the recording stop instruction from the client device 3, and stores the voice. Is stopped (step S206).
  • FIG. 39 is a flowchart showing a control operation of the reproduction start function unit 115 and the reproduction pause function unit 116 of the microphone / speaker object 68.
  • the playback start function unit 115 is driven by a playback start instruction from the client device 3, and as shown in step S211 of FIG. 39, a playback start request is issued from a certain client device 3.
  • Server device 1 receives the instruction to start playback from client device 3 and sends it to each client device. The voice is transmitted in time series to 3 (step S2 1 2).
  • Each of the client devices 3 receiving the voice from the server device 1 reproduces the voice (step S213).
  • the playback pause function section 116 is driven by receiving a playback pause instruction from a certain client device 3. As shown in step S2114 in FIG. 39, a playback pause request is sent from a certain client device 3 to the server device 1, and the server device 1 receives the playback pause instruction from the client device 3. Then, a pause instruction is sent to each client device 3 (step S215).
  • Each of the client devices 3 that has received the pause instruction from the server device 1 pauses the sound reproduction (step S216).
  • step S217 when a playback start request is sent from a certain client device 3 to the server device 1, the server device 1 that has received the playback start instruction outputs the subsequent audio to each of the devices.
  • the message is transmitted to the client device 3 (step S218).
  • each of the client devices 3 receiving the continuous audio from the server device 1 plays the continuous audio, stops the audio after playing the final audio (step S219).
  • the control operation of the stop function section 117 of the microphone / speaker object 68 shown in Fig. 35 is as shown in Fig. 40.
  • This stop function section 117 stops the client device 3 from stopping.
  • the instruction is driven as an event.
  • a stop request is sent from a certain client device 3 to the server device 1, and the server device 1 receives the stop instruction from the client device 3, and receives a stop instruction from each client device 3.
  • a stop instruction is sent to the device 3 (step S222).
  • Each of the client devices 3 receiving the stop instruction from the server device 1 stops the voice (step S223).
  • step S224 a client device
  • the server device 1 that has received the playback start instruction transmits a sound to each client device 3 from the beginning (step S2 25).
  • each client device 3 receives the sound from the server device 1 from the beginning, stops the reproduction after reproducing the final sound (step S226).
  • FIG. 41 is a flowchart showing the control operation of the end function section 118 of the microphone 'speaker object 68.
  • the end function section 118 is driven by an end instruction from the client device 3. Is what is done.
  • a termination request is sent from a certain client device 3 to the server device 1, and the server device 1 receives the termination instruction from the client device 3, and receives a microphone / speaker. Is transmitted to each client device 3 (step S228).
  • Each client device 3 that has received the end instruction from the server device 1 stops the sound of the microphone and the speaker (step S229).
  • the participant function unit 119 of the microphone / speaker object 68 shown in FIG. 35 is driven as an event that a client (client device 3) newly participates.
  • the server device 1 that has received the request for participation from the new client device 3 adds the client to the client table to be transmitted, and transmits audio to the speaker object of the client device 3.
  • the new client device 3 prepares a speaker in the same manner as described above, and performs audio reproduction processing.
  • the exit function section 120 of the microphone's speaker object 68 is driven by the exit of the participating client (client device 3).
  • the server device 1 that has received the signal to exit from a certain client device 3 sends the exiting client table from the client table to be transmitted. Delete the event.
  • FIG. 42 shows a functional block diagram of the chat object 69 in the common object library 18 shown in FIG.
  • the chat object 69 has a function of communicating between clients (client devices 3) by text.
  • the chat object 69 includes a start function unit 123, a text distribution function unit 124, a chat object end function unit 125, a mid-participation function unit 126, and The exit function section consists of 127, etc.
  • the start function unit 123 will be described.
  • the start function unit 123 is driven by a use start instruction from the client device 3 as an event.
  • a use start request is sent from a certain client device 3 to the server device 1, and the server device 1 having received the use start instruction from the client device 3 sends the request to each client device 3.
  • a chat start instruction is transmitted to the device 3 (step S232).
  • Each client device 3 that has received the chat start instruction from the server device 1 displays a window for chatting and enables text input display (step S2 33) o
  • the text distribution function unit 124 is driven by receiving text from the client device 3. As shown in step S2334 of FIG. 43, a text is transmitted from a certain client device 3 to the server device 1, and the server device 1 receives the text from a certain client device 3, and transmits the received text. The client name is added to the other client device 3 and transmitted (step S235).
  • step S2336 the other client devices 3 that received the text from the server device 1 Displays text in a window.
  • the chat object ending function section 125 of the chat object 69 shown in Fig. 42 is driven by the fact that the text from the client device 3 is no longer transmitted, and the server device 1 executes the chat object. finish. In this case, there is no particular processing on the client device 3 side.
  • the midway participation function section 126 of the chat object 69 is driven by the server device 1 receiving a signal indicating that a client (client device 3) newly participates.
  • the server device 1 adds the client to the client table to be transmitted, and transmits the latest text to the client's chat object.
  • the newly joined client (client device 3) displays the window of the chat and displays the text sent from the server device 1 ⁇
  • the exit function section 127 of the chat object 69 is driven by the participating client (client device 3) exiting, and receives a signal from the client device 3 to leave the server.
  • the device 1 deletes the leaving client from the client table to be sent.
  • the office objects 70 in the common object library 18 shown in Fig. 19 are furniture-like objects that give a sense of realism to the space, and each has attributes such as size and color. .
  • the office object 70 has a function of physically constraining the space in which Aba Yuichi A can move.
  • the HTML object 71 has a function of transmitting an HTML file, and transmits an HTML file specified by a client. Then, the client device 3 received from the server device 1 The HTML file you received is displayed.
  • the computer object 72 provides a function of emulating the computer object, and has a function of transmitting information such as the terminal type and host name of the computer object specified by the client device 3. have. As a process on the client device 3 side, an emulation of the computer specified from the received terminal event and the host name is displayed.
  • FIG. 44 shows a functional block diagram of the manager library 19 shown in FIG. 4.
  • the manager library 19 has a manager for managing the order in space. It is provided for the purpose. Each individual manager manages his or her assigned information. These information are queried or set from the server device 1 in response to a request from the client device 3.
  • the manager library 19 includes a location manager function unit 130, a security manager function unit 131, a history manager function unit 132, and the like.
  • the position manager function unit 130 has a function of managing the position of the avatar A object in the cyberspace and preventing inconsistency in the space due to the movement of the avatar A.
  • the security manager one function unit 131 has the functions necessary to manage the security of the object Avatar A in cyberspace (object use restriction and exclusive control).
  • history (log) manager function section 13 records events that occurred in cyberspace, and has the necessary functions to reproduce them.
  • Figure 45 shows the location manager in the manager library 19 shown in Figure 44.
  • 3 shows a functional block diagram of the jar function unit 130.
  • the position manager function unit 130 has an object addition function unit 135, an object deletion function unit 1336, an object movement function unit 1337, and an object position inquiry function.
  • the object addition function unit 135 of the position manager function unit 130 has a function of adding an object in the space under the management of the manager, and the operation is such that the manager exists in the space. Register so that the location information of the object can be managed. It is driven by a request to add an object to the server device 1.
  • the object addition function unit 1336 has a function of deleting objects in the space from the management of the manager, and operates as a function of deleting objects registered in the manager. It is. Then, it is driven by a deletion request from the server device 1 of the object.
  • the object movement function part 1337 of the position manager function part 130 has a function to update the position information of the object X-tat, and the operation is performed by the manager. It updates the location information of the object to be updated, and also updates the location information of the object itself. It is driven by a request from the client device 3 or a request to move an object caused by another event.
  • the object position inquiry function unit 1338 has a function of responding to an inquiry about the position information of an object, and returns the position information of the corresponding object managed by the manager. is there.
  • the obfuscation caused by client device 3 requests and other events It is driven by the movement request of the project.
  • the avatar addition function section 1339 of the location manager 1 function section 130 has a function of adding the avatar A in the space under the management of the manager. The registration is performed so that the jar can manage the location information of Avatar A existing in the space. It is also driven by an avatar A request to be added to the server device 1.
  • the avatar delete function section 140 has a function of deleting avatar A in the space from the management of the manager. The operation is to delete avatar A registered in the manager. It is. It is driven by a deletion request from the server device 1 of the avatar A.
  • the location manager function section 130's avatar evening movement function section 14 4 1 updates the location information of the avatar — A.
  • the operation is performed by the manager that manages the corresponding avatar. It updates the location information of Yuichi A, and also updates the location information of Abba Yuichi A itself. Then, it is driven by a movement request of the client device 3.
  • the avatar position inquiry function unit 142 responds to the inquiry about the position information of the avatar A.
  • the operation returns the corresponding position of the avatar A, which is managed by the manager. Then, it is driven by the movement request of the client device 3.
  • the avatar movement collision determination function unit 1443 has a function of determining whether or not a collision occurs when the avatar A moves, and the movement of the avatar A is an object. ⁇ The manager determines whether it will collide with another avatar A or a wall in the space based on the location information managed by the manager. Then, it is driven by the movement request of the client device 3.
  • FIG. 46 shows a functional block diagram of the security manager function unit 131 in the manager library 19 shown in FIG. 44.
  • the security manager function part 13 1 is the object addition function part 14 6, the object deletion function part 14 7, the avatar addition function part 14 8, the avatar deletion function part 14 9, the security information setting function It consists of a part 150, a security information inquiry function part 151, and a security check function part 152.
  • the object adding function unit 146 has a function of adding an object in the space under the management of the manager. As a method, registration is performed so that managers can manage security information of objects existing in the space. Then, it is driven by an addition request of the object to the server device 1.
  • the object deletion function part 147 has a function of deleting an object in the space ⁇ from the management of the manager, and the operation is to delete the object registered in the manager. Is what you do. Then, the object is driven by a deletion request to the server device 1.
  • the avatar addition function unit 148 of the security manager function unit 1 3 1 has a function of adding the avatar A in the space under the management of the manager. The registration is performed so that the security information of avatar A that exists in the company can be managed. Then, it is driven by an additional request to the server device 1 of Ava Yuichi A.
  • the Ababa Yuichi deletion function section 148 has a function to delete Ababa Yuichi A in the space from the management of the manager, and the operation is registered with the manager. Aba Yuichi A is to delete A. Then, it is driven by a deletion request of the avatar A to the server device 1.
  • the security information of the security manager function section 13 1 shown in Figure 46 The information setting function section 150 has a function of setting the security information of the space object and the avatar A. The operation is performed in the corresponding space, object, and avatar A. Set security information.
  • the security information includes "who can operate”, “when can it operate”, “where can it operate” and so on. Then, it is driven by a request based on preset information during the space start-up process.
  • the security information inquiry function unit 151 has a function of responding to the inquiry about the security information of the space object and the avatar A. The operation is performed in the corresponding space, object, and server. It returns security information of A.
  • the security information includes “who can operate”, “when can it be operated”, “where can it be operated” and so on. It is driven by a request from the client device 3.
  • the security check function section 152 of the security manager function section 131 has a function of checking whether or not the specified operation is possible in terms of security.
  • the operation of the security check function unit 152 returns whether or not the specified operation is possible based on the security information managed by the manager.
  • the content to be checked is determined based on the user, time, location, and the like. Then, it is driven by a request from the client device 3.
  • FIG. 47 shows a functional block diagram of the history manager function part 13 2 in the manager library 19 shown in FIG. 44.
  • the log storage function part 15 5 and the log reading function part 15 6 It is composed of
  • the log storage function section 155 has a function to save everything that happened in the space (SOMA space). The operation was performed by Aba Yuichi A, and the avatar A was moved. It saves all events that have occurred and other events that have occurred. Also, the sky created by the event Interim objects and changes in the state of Avatar A are also saved. The contents to be saved are "What kind of event", "When it occurred”, “Who caused it”, "What changed and how?" 5 5 5 shows the basic space control function part 22 in the server basic control library 16 shown in Fig. 6 and the basic object control function part 2 when a request or other event from the client device 3 occurs. 3.
  • the avatar basic control function section 2.3 is driven by a request during processing.
  • the log reading function unit 156 has the function of reading stored logs (histories). The operation is to read logs stored in the past. It reproduces what happened in space in the past based on the data. Further, it is driven by a request from the client device 3.
  • the multimedia management era which has entered the multimedia era, is required to manage multimedia data. There are the following problems when trying to do this with the base technology.
  • data is captured in the basic structure of files (tables), records (rows), and fields (column attributes), and records are placed at the center of access.
  • tables are subject to predicate rather than search, records are subject to search, and fields are subject to extraction. If you try to handle audio and video in this way, you will have to push data as the value of one field, and if you access a record that contains audio, images, long text, etc. at the same time, a large cost (resource usage, time, CPU Time) and efficiency is reduced.
  • Audio, still images, moving images, etc. have complicated structures themselves, and it is difficult for application programmers to write programs that directly process these data. Therefore, they call and use already prepared programs. These programs are also offered as low-level subprograms, but are often offered and used as stand-alone programs. It is difficult to build your own inf face from low-level subprograms. This tendency is remarkable in programs that deal with multimedia.
  • the attribute cannot be assigned to the file, so the file cannot be searched with that attribute.
  • OS files are managed with attributes such as owner, creation / update date, name, simple confidentiality, etc., and various attributes that allow users to manage the file efficiently are added to this file. Allow to attach.
  • This paradigm is so close to the object-oriented paradigm that it can incorporate many of the advantages and features of object-oriented X-axis.
  • the aim is to improve the quality of services.
  • FIG. 48 shows a functional block diagram of the client / server communication function unit 13 shown in FIG. 4.
  • the client / server communication function unit 13 has a queue creation function unit 160 and a table creation function unit 1. 6 1, Protocol data processing machine No. 162, reference table addition / deletion function 163, and queue management function 1664.
  • the client / server communication function unit 13 has a function of exchanging a protocol with the client device 3 and realizing mutual communication and role sharing with the client device 3.
  • the server device 1 has a function of receiving the protocol data from the client device 3, analyzing them, transmitting a signal to the object of the server device 1, and returning a signal to the client device 3. ing. In addition, depending on the request from the client device 3, there are those that must return a live response in real time, those that must return in a sequence of operations, and those that may return a reply at any time.
  • the server device 1 has a function to control by distinguishing between them.
  • the queue creation function section 160 receives a signal from the client device 3 or the server device 1 when the server device 1 is started, and creates a queue (QUEUE) for stocking the signal.
  • QUEUE a queue for stocking the signal.
  • the size of this queue can be changed by a parameter.
  • the table creation function section 161 searches for another server device to be connected when the server device 1 is started, and creates a reference table of the connected server device and its corresponding space name.
  • the protocol data processing function section 162 of the client's server communication function section 13 has a function of processing the protocol data stored in the queue (QUEUE), and the protocol data is stored in the queue. In some cases, it extracts one protocol, interprets it, sends a signal to its own server device 1 object, sends it to another server device, or It has a function of transmitting a signal to the remote control device 3.
  • QUEUE protocol data stored in the queue
  • the reference table addition / deletion function part 16 3 is for adding or deleting a client (client device 3) when entering or leaving, and a new client newly enters the server device 1. In this case, it has a function to create a client reference table and to add / delete it as needed in order to search for the client name and IP (Internet Protocol) address at high speed.
  • the queue management function block 164 shown in Fig. 48 when the queue (QUEUE) is full, but receives a protocol overnight, replies to the source that the protocol cannot be processed. It has a function to notify the sender that processing cannot be performed.
  • the protocol to be processed is controlled according to the type of protocol data in the queue (QUEUE). In the case of data that is processed in real time, it is processed with the highest priority, and if a series of operations is required, it is processed sequentially after all the operations are completed. Other processing is provided with a function of processing at an available time.
  • the attributes that the protocol should have are as follows. Source name (client device or server device), destination name (client device or server device), space name, object name, operation name, operand name, time stamp processing category, real-time category, reply By having these attributes, such as deadline relative order division, relative order group, intra-group order, and general division, the management function of the queue management function unit 164 controls transmission and reception of protocols. I have.
  • FIG. 49 shows a block diagram of the client device 3.
  • the client device 3 is a general personal computer. It is a low-cost personal computer.
  • the client device 3 includes a microphone 170, a mouse 171, a keyboard 172, a video camera 1723, left and right speakers 174, 175, IZO interface 1769, ⁇ 1 ⁇ Display section 176 of a block, etc., memory 178 for storing various programs and data, for example, a server that communicates with the server 1 via a network 2 such as INS 6 4 lines, etc.'Client communication function section 1 77, Overall control ⁇ Control for performing calculations ⁇ Computing section 179 etc.
  • FIG. 50 shows a functional block diagram of a group of programs and a group of objects stored in the memory 178.
  • the event control unit 181, the background display unit 182, the object Abba evening display section 1 8 3, Ababa evening 1 control section 1 84, Position control manager 1 85, Object's manager 1 86, Magic object 1 87, Speed force object 1 88, video camera's object 189, etc. are stored in the memory 178.
  • the event control section 18 1 has an event loop, an event and a server by an input from the user's mouse 17 1 and keyboard 17 2. ⁇ Performs operations corresponding to events received from the client communication function unit 177. These events are allocated to the corresponding local manager (the manager on the client device 3 side) and executed. . It is the control section that controls the local manager.
  • the avatar control unit 18 4 executes the operation of the avatar A, inquires of the position control manager i 85 whether the operation can be executed, and if possible, the object / avatar display unit 18 3 Call and execute. In addition, the operation is transmitted to the server device 1.
  • the method is as follows. Method
  • 4Drawing update Performs avatar A drawing (redrawing).
  • the position control manager 1885 controls the moving range of avatar A by communicating with other managers. The method is as follows.
  • Permission request Returns whether permission is given for avatar A's movement request.
  • the object 'manager-186' determines whether a group of local 'managers' can be controlled by Aba Yuichi A. The method is as follows.
  • the microphone object 187 transmits the voice file received from the microphone 170 to the server device 1 via the server-client communication function unit 177, and the method is as follows. It has become.
  • the speaker object 188 is for reproducing the audio file received from the server device 1, and the method is as follows.
  • Volume control Control the volume of the sound.
  • Video Power Memo Object 189 Holds Video Conference Style Meetings
  • the video of the user from the video camera 173 is transmitted as a still image to the server device 1 via the server-client communication function unit 177, and is used as a method. Is as follows.
  • Timing control Specify how often images from video camera 1 73 are taken.
  • the server device 1 authenticates the user who wants to participate in cyberspace (the basic space control function section 22 and the user authentication function section 39), and after the authentication, the state of the space viewed from the user's point of view.
  • the client transmits the indicated date and time to the client device 3. Participating users can use location information Since the image is sent to the server device 1, a still image corresponding to the viewpoint from the position of the user is transmitted from the server device 1 to the client device 3 (neighboring space extraction function unit 25, model conversion function unit 26).
  • the data transmitted from the server device 1 to the client device 3 includes the above-described still image as the background, a still image indicating the shape of each object and position information, the participation of the butter A, the body type, posture parameter values, and the head.
  • ⁇ Clothing image data and location information, space and object attribute values and function groups see Fig. 5).
  • the client device 3 that has received the spatial data from the server device 1 visualizes the cyberspace as shown in FIG. 5 (event control section 181, background display section 182, control / calculation means 179, Display section 1 7 6).
  • the method is based on the perspective image showing the background of the space, and the still image showing the avatar A of the object, the self, or the other person, according to the depth of the arrangement.
  • the image is reduced (far-field image reduction function using the object / avatar display section 183) and overwritten on the background image in order from the deepest one (the forward image overwrite function using the object / avatar display section 183).
  • Ava Yuichi A is in the space as a three-dimensional character.
  • the movement of avatar A is controlled and managed by the avatar control section 184 and the position control manager 185, and if there are other objects such as avatars, pillars, walls, etc. Is regulated as impossible (collision control function).
  • the user moves the avatar A using the mouse 171, and when the user moves the mouse 171 left and right while pressing the left button, for example, Ava Yuichi A walks left and right.
  • Avatar A moves back and forth if you move it back and forth while holding down the left button of mouse 17 1. In this case, Avatar A When A moves backward, Avatar A becomes smaller due to perspective, and when it comes forward, Avatar A becomes larger (see Fig. 5).
  • Mouse 17 1 Double-clicking the left button of the mouse sends the data of the viewpoint (the position in the space of Aba Yuichi A and the viewing direction) to the server 1 and the server 1
  • the appearance of the space with respect to is synthesized as a still image, and the still image data is transmitted from the server device 1 to the client device 3 and displayed on the screen of the client device 3.
  • the walking in SOMA space in cyberspace in this system is realized by the above-mentioned method, and this method or system is called “3D character movement + stop-time view synthesis”.
  • the feature of this method or system is that the load on the client device 3 is small, and the server device 1 uses a high-performance graphics computer, so that high-quality still images can be viewed from the user's viewpoint.
  • the still image data can be easily sent to the client device 3.
  • the client device 3 is very advantageous because it can participate in cyberspace with a low-cost puff con or the like.
  • the voice data is transmitted from the client device 3 to the server device 1, and the server device 1 transmits the voice data of all the users together with the avatar A positional relationship data received together.
  • the data is transmitted to each client device 3 in real time.
  • the client device 3 which has received these data from the server device 1, drops the volume of the avatar A's voice according to the distance between the avatar A and the other avatars in the space, and the avatar A located at the right side position.
  • the first sound is reproduced with the right side volume slightly higher than the left side and reached earlier, thereby reproducing the sound in a three-dimensional space (speaker object 188).
  • step S 2 4 1 when there is a voice input from another client device 3 via the server device 1 (step S 2 4 1), the avatar, which is the sound source sent from the server device 1, is input. Based on the position information, the distance between itself and the other avatar in the space is calculated (step S2422). Then, as shown in step S243, the sound volume to be reproduced is attenuated according to the distance between the user and another avatar (voice distance attenuating function).
  • the direction of another avatar is detected based on the position information from the server device 1 (step S2444), and if another avatar is on the right side, for example, steps S245 and S24 are performed.
  • the audio output on the left is slightly delayed in time, and the audio output on the right is reproduced quickly (directional audio synthesis function).
  • the avatar When the avatar moves, changes its posture, or performs an operation such as manipulating an object, the avatar is queried to the server device 1 to check whether the avatar does not disturb the order in the space as an event (ababa). Evening control section 18 4, activity result reporting function by position control manager 18 5).
  • the server device 1 checks it according to the definition of the manager 1 (activity check function by the manager library 19), permits the action if possible, and notifies the other client devices 3 at the same time. (Activity reflection function by Manager Library 19). As a result, it is possible to perform control for communication without contradiction (common space control function).
  • cyberspace is advanced by adding an element called a negative programming manager having a function of certain rules and restrictions to three elements of space, an object, and an avatar.
  • Cyberspace with various functions can be easily configured.
  • the introduction of managers through negative programming plays an important role in increasing the productivity of cyberspace construction and increasing the success rate of development.
  • the effect is enhanced by managing a library of space objects that make up cyberspace with the space resource management system on the server device 1 side.
  • the client device 3 can imitate a 3D space based on a 2D still image created by a powerful graphics server. It is a low-speed personal computer that allows you to participate in a space represented by high-quality images. In VRML and the Java language, visualization (rendering) of the three-dimensional space is performed on the client device 3 side, so if the quality of the image is to be improved, the client device 3 has high performance. Will require In the present invention, such defects are improved by rendering the high-performance server device 1 for rendering.
  • the 3D speech synthesis / reproduction function can realize realistic communication, and in this regard, it can also realize a sophisticated space that was not possible with conventional methods.
  • the present invention can be applied to the following as an application of cyberspace.
  • a network that takes advantage of the features of high-definition image quality, multi-user characteristics, real-time conversation function by voice, and the function of maintaining spatial order by a manager, and communication, textiles and industrial products
  • design development such as. In these tasks, it is very important how realistic the design target is, and it is essential to communicate while pointing to each other.
  • Such a situation is also effective when a manufacturer teaches a consumer how to operate a product, or when a fault diagnosis is supported or a maintenance method is instructed. Furthermore, it is important for the sale of goods to be able to display the goods as close to the real thing as possible. Communication via networks such as teleconferencing and distance lectures involves sharing a space or object with reality and voice, and it is important to control the timing of remarks. Such functional spaces are interconnected, and offices, companies, museums, etc. can be realized on the network.
  • the personal computer on the client device 3 side is exemplified, for example, a personal computer equipped with Windows.
  • the present invention is not limited to this. Of course, it can also be applied to low-priced personal computers of the ntosh type.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Information Transfer Between Computers (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The load on a client apparatus is lightened by a method of three-dimensionally moving characters and synthesizing a visual field at a stop. In a cyberspace, a platform is expressed by using four elements, a space (S), an object (O), a manager (M) and an abutter (A). Especially, when a manager (M) based on negative programming is added so as to maintain the order of the space, a cyberspace having a high-degree function can be formed easily. A client apparatus (3) receives space data from a server apparatus (1), and reduces a still picture showing the figures of the object and abutter (A) on a still picture showing the background of the space, in accordance with the degree of the depth of the arrangement thereof, whereby the server space is visualized. The movements of the abutter (A) and object are controlled by detecting the mutual collision of them, and the visual sense of distance of a three-dimensional space is imitated by using a two-dimensional still picture.

Description

明 細 書 サイバースペースの作成方法及びその作成装置 技術分野  Description Cyberspace creation method and its creation device
本発明は、 クライアント Zサーバシステムにおけるコンピュータネッ ト ワーク上の社会 (仮想空間) を実現するためのサイバースペースの作成方 法及びその作成装置に関するものである。 背景技術  The present invention relates to a method and apparatus for creating a cyberspace for realizing a society (virtual space) on a computer network in a client Z server system. Background art
インターネッ 卜の普及によってコミ ュニケ一ションは大きく変わりつつ ある。 1 9 8 0年代の電子メールゃネッ トニユースによる文字テキストを 中心にしたコミュニケ一シヨンから、 1 9 9 0年代の前半には WWW (Wo r id Wide Web) によってハイパーリ ンクされたマルチメディアテキストの 情報発信を中心としたコミ ュニケーションに代わり、 参加するユーザーは 爆発的に増加してきている。  Communication is changing significantly with the spread of the Internet. E-mail in the 1980's From communication centered on character texts through networking, in the early 1990's information on multimedia text hyperlinked by the World Wide Web (WWW) The number of participating users has exploded in place of communication centered on outgoing calls.
この増加した参加者を対象にしたビジネス等への活用も進み、 それが更 に新しい技術を生み出すことに拍車をかけている。  Utilization of this increased number of participants for business and other purposes is also progressing, and this is spurring the creation of new technologies.
その中でも特に、 ネッ トワークとコンピュータとを使って実現された社 会である 「サイバースペース」 に大きな期待が集まり、 サイバースペース を構築 ·運用 ·応用するための技術開発が盛んに行なわれている。  Among them, “cyberspace,” a society realized using networks and computers, has attracted great expectations, and technological development for building, operating, and applying cyberspace is being actively pursued.
これらのサイバースペース (構築,運用 ·応用) 技術開発のいろいろな トライアルに共通な課題として、  Common issues in various trials of these cyberspace (construction, operation, and application) technology developments are:
① 空間およびオブジェク トの 3次元化  ① Three-dimensionalization of space and objects
② インタラクティブ性 (対話性、 あるいは相互作用)  ② Interactivity (interactivity or interaction)
③ 実世界との連携 があげられる。 ③ Cooperation with the real world Is raised.
そして、 コンピュータネッ トワーク上に社会を実現する方法として既に 存在しているのは、 C / C +十等の低水準言語から、 OpenGL等の 3次元グ ラフィ ックスライブラリー、 Mot i f 等の GUKGraphi cal User Interface) ラィブラリ一、 Socket等のネッ トヮ一クイン夕一フエースライブラリ一、 マルチメディアライブラリ一等を呼び出して、 個別のサイバースペースを 構築する方法 (ここでは、 「低水準言語による表現法 j という) と、 これ らの機能を 1つの言語体系にまとめて、 開発を容易にする方法 (ここでは 、 「中水準言語による表現法」 という) と、 及び既開発の要素を組み合わ せて目的の機能を持ったサイバースペースを開発する方法 (ここでは、 「 高水準言語による表現法」 という) に分けられる。  As methods for realizing society on computer networks, there are already low-level languages such as C / C +, 3D graphics libraries such as OpenGL, and GUKGraphi such as Mot if. cal User Interface) A method of building individual cyberspaces by calling a network library such as a library, Socket, etc., a face library, a multimedia library, etc. (Here, the expression method in low-level language j ) And a method of integrating these functions into a single language system to facilitate development (herein referred to as “expressing in a medium-level language”). It can be divided into methods of developing a cyberspace with functions (here, "Expression in a high-level language").
上記の低水準言語による実現法としては、 各種ライブラリ一の整備と規 格化が進み、 ソフ トウエアツールとしては基本的なものは揃ったと言える 。 しかし、 この方法による開発は、 生産性が悪く、 成功率も低い。  As for the implementation method using the above low-level languages, various libraries have been developed and standardized, and it can be said that basic software tools have been prepared. However, development in this manner has poor productivity and low success rates.
高度な機能を持つサイバースペースを確実に、 且つ容易に構築するため に中水準言語による方法が整備されつつある。 3次元モデルデータを与え るだけで 3次元空間を歩行できる VRML(Vi rtual Real i ty Model ing Langua ge) 、 グラフイ ツク処理やィンターネッ トインターフェースを標準に持ち サーバからプログラムをクライアントに送り付けることでイン夕ラクティ ブ性を向上させた Java言語、 広角静止画の視角部分を切り出して表示する ことで 3 6 0度見渡せるようにした Qu i ckTimeVR がある。 しかし、 これら の方法を使っても、 高度な機能を持つサイバースペースを容易に構築する にはまだ不十分である。  In order to reliably and easily build cyberspace with advanced functions, methods using medium-level languages are being developed. It is equipped with VRML (Virtual Reality Modeling Language) that can walk in three-dimensional space just by giving three-dimensional model data, graphic processing and an Internet interface as standard, and sends programs from the server to the client. There is a Java language with improved operability, and QuickTimeVR, which cuts out the viewing angle of a wide-angle still image and displays it 360 degrees. However, these methods are still not enough to easily build sophisticated cyberspace.
このため、 上記の言語の改良が進められているが、 まだ高水準言語とし ては開発されていない。  For this reason, the above languages are being improved, but have not yet been developed as high-level languages.
また、 空間を 3次元で見せ、 その中を歩けるようにした上記の VRML技術 は、 ユーザーにとっても実世界の実在物により近いものが表現できるとい う長所がある。 しかしながら、 クライアン ト装置に非常に大きな負荷がか かるため、 パソコンユーザーは容易に参加できないという問題がある (ク ライアン ト側の高負荷問題) 。 In addition, the VRML technology described above, which shows the space in three dimensions and allows you to walk in it Has the advantage that users can express something closer to the real-world entity. However, there is a problem that the PC device cannot be easily participated by the client device because a very large load is applied to the client device (a high load problem on the client side).
さらに、 実世界の代替空間の適用範囲拡大のため、 衝突制御、 音声、 ォ ブジェク 卜の機能化、 複数ユーザーの空間共有等の機能強化を行なって来 ており、 これにより、 クライアント装置の負荷がますます高くなるという 相反する問題が生じている。  Furthermore, in order to expand the application range of the alternative space in the real world, functions such as collision control, voice and object functionalization, and space sharing among multiple users have been enhanced, which has reduced the load on client devices. There is a contradictory problem of getting higher and higher.
また、 上記の VRML技術によって構築された 3次元空間は、 画面の下に表 示されるハンドルの操作により空間歩行 (ウォークスルー) を行なうもの であるが、 歩く と画面上の視界が動的に変化するものである。 この移動に 伴う視界の変化を動的に見せることで、 この空間に現実感を与えるもので あ  In addition, the three-dimensional space constructed by the VRML technology described above performs space walking (walk-through) by manipulating the steering wheel displayed at the bottom of the screen, but the visual field on the screen changes dynamically when walking. Is what you do. By dynamically showing the change in the field of view that accompanies this movement, this space gives a sense of reality.
しかしながら、 この空間の中には人が存在せず、 物に衝突してもすり抜 けたり、 音がないなどの種々の問題がある。 しかも、 画面に表示されてい る物の表現に現実感がなく、 おもちゃっぽいという問題もある。  However, there are no people in this space, and there are various problems such as slipping through and collision with objects. In addition, there is also a problem that the expression of the object displayed on the screen has no realism and is like a toy.
本発明は上述の点に鑑みて提供したものであって、 高度な機能を持つサ ィバースペースを、 容易に構築するブラッ トフォームを実現することであ り、 クライアン ト装置側の空間歩行を VRMLの 「動的視点移動」 という方法 から、 「 3次元キャラクター移動 +停止時視野合成」 という方法に代える ことで、 クライアント装置側の負荷を軽く したサイバースペースの作成方 法及びその作成装置を提供するものである。 発明の開示  The present invention has been made in view of the above points, and provides a platform for easily constructing a cyberspace having advanced functions. By providing a method of creating cyberspace and reducing the load on the client device side by replacing the method of “moving the viewpoint” of the above with the method of “3D character movement + visual field synthesis when stopped” Things. Disclosure of the invention
本発明の請求項 1記載のサイバースペースの作成方法では、 サーバ装置 1 と、 1台あるいは複数台のクライアン ト装置 3とがコンピュータネッ ト ワーク上で相互に結ばれており、 このコンピュータネッ トワーク上で形成 される仮想社会としてのサイバースペースを実現するためのサイバースべ ースの作成方法において、 上記サイバースペースは、 教室、 会議室などの 箱型や大学、 町などのオープン型等の 3次元空間の形状や性質を表すデ一 夕としての空間 Sと、 この空間 S内に任意に配置されて特有の属性群や機 能群を持った物としてのオブジェク ト 0と、 上記空間 S内に参加して活動 するユーザーの代理人として視覚化されたキャラクタ一としてのアバ夕一 Aと、 上記ォブジ Xク ト 0やアバター Aが備えている機能を一定の条件下 で発揮させないように上記空間 S内の秩序を維持する制御機能としてのマ ネージャー Mとの 4つの要素でモデル化され、 サーバ装置 1は、 上記空間 S、 オブジェク ト〇、 マネ一ジャー M及びアバ夕一 Aの 4つの要素で記述 されたサイバースペース構築用のデータを保持するデータ保持機能 1 1 と 、 このデータ保持機能 1 1のデータを一人または複数のユーザ一が自己の クライアン ト装置 3からネッ トワーク 2を介して共有するための共通空間 制御機能 1 0、 1 1 と、 ネッ トワーク 2上のクライアン ト装置 3とデータ や信号の授受を行なう交信機能 1 3 とを備え、 クライアント装置 3は、 上 記サーバ装置 1から送られてきたサイバースペース構築用のデ一夕を受信 して保持するサイバースペースデータ受信機能 1 7 8 と、 このサイバース ペースデータ受信機能 1 7 8からデ一タを受け取って画面上に 2次元静止 画を視覚化させるサイバースペース視覚化機能と、 サーバ装置 1 とのデー 夕や信号の授受を行なう交信機能 1 7 7とを備え、 クライアント装置 3か らの要求によりサーバ装置 1から 2次元静止画を受け取って、 遠近法によ り 3次元空間模倣描画を行なうようにしていることを特徵としている。 請求項 2記載のサイバースペースの作成方法では、 サーバ装置 1 には、 サイバースペース構築用のデータを定義して格納、 検索、 更新、 削除する 空間資源管理機能 1 1を備えていることを特徴としている。 また、 請求項 3記載のサイバースペースの作成方法では、 サーバ装置 1 には、 アバター Aの活動履歴保存や再現機能 1 3 2を備えていることを特 徴としている。 In the cyberspace creation method according to claim 1 of the present invention, the server device 1 and one or more client devices 3 are connected to a computer network. In the method of creating a cyberbase for realizing a cyberspace as a virtual society formed on this computer network, the cyberspace is connected to each other on a computer network. A space S, which represents the shape and properties of a three-dimensional space, such as a box type, an open type such as a university, a town, etc. Object 0 as a possessed object, Aba Yuichi A as a character visualized as an agent of a user who participates in the above-mentioned space S and acts as an agent, and Obuji X Xt 0 and Avatar A as above The server device 1 is modeled by four elements, namely, the manager M as a control function that maintains the order in the space S so as not to exert the functions under certain conditions. , Object I, Manager M, and Aba Yuichi A. A data holding function 11 that holds data for building cyberspace described by four elements, and one or more data of this data holding function 11 1. Space control functions 10 and 11 for one user to share from his / her client device 3 via the network 2 and communication for exchanging data and signals with the client device 3 on the network 2 The client device 3 has a function 13 and a cyber space data receiving function 17 8 for receiving and holding a cyber space construction data sent from the server device 1 and a cyber space receiving function. Data reception function 178 Cyber space visualization function that receives data from 178 and visualizes a two-dimensional still image on the screen, and data and signals from server device 1 A communication function for sending and receiving data, and receiving a 2D still image from the server device 1 in response to a request from the client device 3 and performing 3D space imitation drawing by the perspective method. It features. The method for creating cyberspace according to claim 2 is characterized in that the server device 1 has a space resource management function 11 for defining, storing, searching, updating, and deleting data for building cyberspace. I have. Further, the method for creating a cyberspace according to claim 3 is characterized in that the server device 1 is provided with a function for storing and reproducing the activity history of the avatar A 132.
請求項 4記載のサイバースペースの作成方法では、 サーバ装置 1の上記 共通空間制御機能 1 0、 1 1 は、 サイバースペースを構成する空間 Sとォ ブジ ク ト 0を各ユーザーの視点から見た 2次元静止画を生成する視界画 像合成機能と、 各クライアント装置 3から送られてくるアバ夕一 Aの活動 の可能性をマネージャー Mの定義に基づいて検査する活動可能性検索機能 と、 あるアバター Aの活動を各クライアン ト装置 3に反映させるためにク ライアン ト装置 3へ通知する活動反映機能とを備えていることを特徴とし ている。  According to the method for creating a cyberspace described in claim 4, the common space control functions 10 and 11 of the server device 1 are configured such that the space S and the object 0 constituting the cyberspace are viewed from the viewpoint of each user. A view image synthesis function for generating a three-dimensional still image, an activity possibility search function for examining the possibility of the activity of the avatar A sent from each client device 3 based on the definition of the manager M, and an avatar In order to reflect the activity of A on each client device 3, an activity reflecting function of notifying the client device 3 is provided.
さらに、 請求項 5記載のサイバースペースの作成方法では、 サーバ装置 1の資源管理機能 1 1は、 管理する資源をその性質やそれを処理するプロ グラム群を共有するものをクラスとして管理するクラス化機能と、 クラス 化機能のクラス間の汎化 ·集約 ·その他の関連を管理する関連管理機能と 、 クラスの資源としてのィンスタンスを性質から高速検索 ·更新 ·消去を 可能にするィンスタンスアクセス機能と、 オペレーティ ングシステムが持 つ既存のプログラムをクラスのメソッ ドとして再構成する既存機能統合機 能を備えていることを特徴としている。  Furthermore, in the method for creating a cyberspace according to claim 5, the resource management function 11 of the server device 1 is a class management that manages, as a class, those that share the properties of the resources to be managed and a group of programs for processing the resources. Functions and related management functions that manage generalization, aggregation, and other relationships between classes of the classifying function, and an instance access function that enables high-speed search, update, and deletion of instances as class resources It is also characterized by an existing function integration function that reconfigures existing programs of the operating system as class methods.
また、 請求項 6記載のサイバースペースの作成方法では、 クライアン ト 装置 3のサイバースペース視覚化機能は、 空間 Sの背景を示す遠近法によ る広角静止画上にオブジェク 卜◦やアバター Aの姿を示す静止画を、 その 配置の奥行きの深さに応じた縮小を行なう遠方画像縮小機能と、 深い方か ら順に背景画に上書きすることで 2次元の静止画を使って 3次元空間の遠 近感を模倣する前方画像上書き機能とを備えていることを特徴としている 請求項 7記載のサイバースペースの作成方法では、 クライアント装置 3 のサイバースペース視覚化機能は、 了バター Aゃォブジヱク ト〇の相互の 位置の衝突を検出してアバター Aの移動を制御する衝突制御機能を備えて いることを特徴としている。 According to the cyberspace creation method described in claim 6, the cyberspace visualization function of the client device 3 includes the object ◦ and the avatar A on a wide-angle still image in perspective which shows the background of the space S. A far-field image reduction function that reduces the still image that indicates the position of the image according to the depth of the layout, and a two-dimensional still image that overwrites the background image from the deepest It is characterized by having a forward image overwriting function that imitates closeness In the method for creating cyberspace according to claim 7, the cyberspace visualization function of the client device 3 detects a collision between the mutual positions of the butter A objects and controls the movement of the avatar A. It is characterized by having.
請求項 8記載のサイバースペースの作成方法では、 クライアント装置 3 には、 音の発生位置とアバター Aとの位置関係により発生音を 3次元的に 合成 ·再生させる 3次元音声合成 ·再生機能を備え、 この 3次元音声合成 •再生機能は、 自己のアバター Aと他のアバ夕一 Aと空間 S内で距離に応 じてアバター Aの音声の音量の大小を制御する音声距離減衰機能と、 右側 にいるアバター Aの音声を左耳より右耳に早く到達させる方向音声合成機 能とを備えていることを特徴としている。  In the method for creating cyberspace according to claim 8, the client device 3 includes a three-dimensional speech synthesis / playback function for synthesizing / playing the generated sound three-dimensionally according to the positional relationship between the sound generation position and the avatar A. , This 3D speech synthesis • The playback function includes a voice distance attenuation function that controls the volume of the avatar A's voice according to the distance between the user's own avatar A and other avatars A and the space S. It has a directional speech synthesis function that allows the voice of avatar A to reach the right ear earlier than the left ear.
また、 請求項 9記載のサイバースペースの作成装置では、 サーバ装置 1 と、 1台あるいは複数台のクライアント装置 3 とがコンピュータネッ トヮ ーク上で相互に結ばれており、 このコンピュータネッ トワーク上で形成さ れる仮想社会としてのサイバースペースを実現するためのサイバースべ一 スの作成方法において、 上記サイバースペースは、 教室、 会議室などの箱 型や大学、 町などのオープン型等の 3次元空間の形状や性質を表すデー夕 としての空間 Sと、 この空間 S内に任意に配置されて特有の属性群や機能 群を持った物としてのオブジェク ト 0と、 上記空間 S内に参加して活動す るユーザーの代理人として視覚化されたキャラクタ一としてのアバター A と、 上記オブジェク ト 0やアバター Aが備えている機能を一定の条件下で 発揮させないように上記空間 S内の秩序を維持する制御手段としてのマネ 一ジャー Mとの 4つの要素でモデル化され、 サーバ装置 1は、 上記空間 S 、 ォブジヱク ト〇、 マネージャー M及びアバ夕一 Aの 4つの要素で記述さ れたサイバースペース構築用のデータを保持するデータ保持手段 1 1 と、 このデータ保持手段 1 1のデータを一人または複数のユーザーが自己のク ライアン ト装置 3からネッ トワーク 2を介して共有するための共通空間制 御手段 1 0、 1 1 と、 ネッ トワーク 2上のクライアン ト装置 3とデータや 信号の授受を行なう交信手段 1 3とを備え、 クライアン ト装置 3は、 上記 サーバ装置 1から送られてきたサイバースペース構築用のデータを受信し て保持するサイバースペースデータ受信手段 1 7 8 と、 このサイバースべ ースデータ受信手段 1 7 8から 2次元静止画データを受け取って画面上に 遠近法により 3次元空間模倣描画を行なうサイバースペース視覚化手段と 、 サーバ装置 1 とのデ一夕や信号の授受を行なう交信手段 1 7 7 とを備え ていることを特徴としている。 Further, in the cyberspace creation device according to the ninth aspect, the server device 1 and one or more client devices 3 are mutually connected on a computer network. In the method of creating a cyber space for realizing a cyber space as a virtual society formed by the above, the above cyber space is a three-dimensional such as a box type such as a classroom and a conference room, and an open type such as a university and a town. Participating in the above-mentioned space S, the space S as data representing the shape and properties of the space, the object 0 as an object arbitrarily arranged in this space S, and having a specific attribute group and function group Under certain conditions, Avatar A as a character visualized as a proxy for a user who is active and the functions provided by Object 0 and Avatar A are provided under certain conditions. It is modeled by four elements with the manager M as a control means for maintaining the order in the space S so as not to exert it, and the server device 1 is composed of the space S, the object, the manager M, and the avatar. A data holding means 11 for holding data for building a cyberspace described by the four elements of A, and one or more users Common space control means 10 and 11 for sharing from the client device 3 via the network 2 and communication means 13 for exchanging data and signals with the client device 3 on the network 2 The client device 3 includes a cyberspace data receiving unit 178 that receives and holds the data for building cyberspace sent from the server device 1, and a cyberspace data receiving unit 178. Cyberspace visualization means that receives 2D still image data and performs 3D space imitation drawing on the screen by perspective, and communication means 177 that communicates with the server device 1 and sends and receives signals It is characterized by having.
請求項 1 0記載のサイバースペースの作成装置では、 サーバ装置 1 には 、 サイバースペース構築用のデータを定義して格納、 検索、 更新、 削除す る空間資源管理手段 1 1を備えていることを特徴としている。  In the cyberspace creation device according to claim 10, the server device 1 is provided with space resource management means 11 for defining, storing, searching, updating, and deleting cyberspace construction data. Features.
また、 請求項 1 1記載のサイバースペースの作成装置では、 サーバ装置 1 には、 アバ夕一 Aの活動履歴保存や再現手段 1 3 2を備えていることを 特徴としている。  Further, in the cyberspace creation device according to claim 11, the server device 1 is provided with means for storing and reproducing the activity history of Ababa Yuichi A 132.
請求項 1 2記載のサイバースペースの作成装置では、 サーバ装置 1の上 記共通空間制御手段 1 0、 1 1は、 サイバースペースを構成する空間 Sと オブジェク ト〇を各ユーザーの視点から見た 2次元静止画を生成する視界 画像合成手段と、 各クライアント装置 3から送られてくるアバター Aの活 動の可能性をマネージャー Mの定義に基づいて検査する活動可能性検索手 段と、 あるアバ夕一 Aの活動を各クライアン ト装置 3に反映させるために クライアン ト装置 3へ通知する活動反映手段とを備えていることを特徴と している。  In the cyberspace creation device according to claim 12, the server device 1 includes the common space control means 10 and 11 which are configured to view the space S and the object を constituting the cyberspace from the viewpoint of each user. A field-of-view image synthesizing means for generating a three-dimensional still image, an activity possibility search means for inspecting the activity possibility of avatar A sent from each client device 3 based on the definition of manager M, An activity reflecting means for notifying the client device 3 in order to reflect the activity A in each client device 3 is provided.
請求項 1 3記載のサイバースペースの作成装置では、 サーバ装置 1の資 源管理手段 1 1は、 管理する資源をその性質やそれを処理するプログラム 群を共有するものをクラスとして管理するクラス化手段と、 クラス化手段 のクラス間の汎化 ·集約, その他の関連を管理する関連管理手段と、 クラ スの資源としてのインスタンスを性質から高速検索 ·更新 ·消去を可能に するインス夕ンスアクセス手段と、 オペレーティ ングシステムが持つ既存 のプログラムをクラスのメッツ ドとして再構成する既存機能統合手段を備 えていることを特徴としている。 In the cyberspace creation device according to claim 13, the resource management means 11 of the server device 1 is a classifying means for managing, as a class, those which share the properties of the resources to be managed and a group of programs for processing the resources. And the means of classifying An association management means that manages generalization and aggregation and other associations between classes, an instance access means that enables high-speed search, update, and deletion of instances as class resources, and an operating system It is characterized by the provision of existing function integration means that reconfigures existing programs owned by as a class method.
さらに、 請求項 1 4記載のサイバースペースの作成装置では、 クライア ント装置 3のサイバースペース視覚化手段は、 空間 Sの背景を示す遠近法 による広角静止画上にオブジェク 卜〇やアバ夕一 Aの姿を示す静止画を、 その配置の奥行きの深さに応じた縮小を行なう遠方画像縮小手段と、 深い 方から順に背景画に上書きすることで 2次元の静止画を使って 3次元空間 の遠近感を模倣する前方画像上書き手段とを備えていることを特徴として レヽる。  Furthermore, in the cyberspace creation device according to claim 14, the cyberspace visualization means of the client device 3 includes the object の and the avatar A on a wide-angle still image in perspective which shows the background of the space S. A distant image reduction unit that reduces the still image showing its appearance according to the depth of its arrangement, and a perspective image in 3D space using a 2D still image by overwriting the background image in order from the deepest It is characterized by having forward image overwriting means for imitating the feeling.
請求項 1 5記載のサイバースペースの作成装置では、 クライアン ト装置 3のサイバースペース視覚化手段は、 アバター Aゃォブジェク ト〇の相互 の位置の衝突を検出してアバター Aの移動を制御する衝突制御手段を備え ていることを特徴としている。  In the cyberspace creation device according to claim 15, the cyberspace visualization means of the client device 3 detects a collision between the avatars A and A, and controls the movement of the avatar A. It is characterized by having means.
請求項 1 6記載のサイバースペースの作成装置では、 クライアン ト装置 3には、 音の発生位置とアバター Aとの位置関係により発生音を 3次元的 に合成 ·再生させる 3次元音声合成 ·再生手段を備え、 この 3次元音声合 成 ·再生手段は、 自己のアバター Aと他のアバ夕一 Aと空間 S内で距離に 応じてアバター Aの音声の音量の大小を制御する音声距離減衰手段と、 右 側にいるアバター Aの音声を左耳より右耳に早く到達させる方向音声合成 手段とを備えていることを特徴としている。  In the cyberspace creation device according to claim 16, the client device 3 includes a three-dimensional sound synthesis / reproduction means for synthesizing / reproducing the generated sound three-dimensionally according to the positional relationship between the sound generation position and the avatar A. The three-dimensional sound synthesizing / reproducing means includes sound distance attenuating means for controlling the volume of the sound of avatar A according to the distance between own avatar A and other avatars A and space S. And a directional voice synthesizing means for causing the voice of the avatar A on the right side to reach the right ear earlier than the left ear.
ここで、 構築しょうとしているプラッ トフォームは、 サイバースペース を、 空間 (Space)、 オブジェク ト(Obj ec t)、 マネージャー(Manager) 、 了 バター(Avat or)の 4つの要素で表現して、 構築するものである。 資源ライブラリ一 Here, the platform we are trying to build is a cyberspace represented by four elements: space, object (Object), manager (Manager), and butter (Avat or). Things. Resource Library I
空間資源管理システムには、 部屋やオープンスペース等の空間ライブラ リー、 机、 椅子、 コンピュータ、 ビデオデッキ、 黒板等のオブジェク トラ イブラリー、 アバターの顔画像ライブラリ一、 アバ夕一の服装ライブラリ 一等が保管管理されており、 具体的なサイバースペース設計者は、 これら を組み合わせでサイバースペースの構造を定義するものである。  The space resource management system stores space libraries such as rooms and open spaces, desks, chairs, computers, VCRs, object libraries such as blackboards, one avatar face image library, one avatar clothing library, etc. It is managed, and the specific cyberspace designer defines the structure of cyberspace by combining these.
空間秩序の維持  Maintaining spatial order
サイバースペースの構成要素は、 空間内に参加させられた時から潜在的 な機能や制約を持っている。 空間は、 ォブジヱク トゃアバターの配置に関 して制約を与え、 オブジェク トはメソッ ドとしてその潜在的機能は定まつ ている。 また、 アバターには空間内を移動したり、 ォブジヱク トを操作す る潜在的能力を持たせている。  The components of cyberspace have potential functions and constraints since they were brought into space. Space imposes restrictions on the placement of observable avatars, and objects have their potential functions defined as methods. Also, avatars have the potential to move in space and manipulate objects.
しかし、 これらの潜在的能力がすべて発揮されたら空間は無秩序なもの になってしまう。 例えば、 会議中にまったく関係のない発言をしたり、 動 き回ったりすることは潜在的には可能であるが、 これを自由にさせると会 議室 (空間) の機能を果たさなくなる。 これを制御するのが、 マネージャ —の役割である。  However, if all these potentials are exercised, the space will be chaotic. For example, it is potentially possible to make unrelated statements or move around during a meeting, but if you let it go freely, it will not function as a meeting room (space). It is the role of the manager to control this.
どのような制約が必要かは、 アプリケーションとしてのサイバースべ一 スの性質によって異なるから、 アプリケーション設計者はこれを (マネ一 ジャー記述) 言語で定義する。 この言語はさまざまな表現はできるが、 本 質的に潜在的機能を一定の条件のもとで制限するようにしている。 これを 、 「ネガティブ ' プログラミ ング」 という。  Since what restrictions are required depends on the nature of the cyberbase as an application, the application designer defines this in a (manager description) language. Although this language can be expressed in various ways, it essentially limits the potential functions under certain conditions. This is called "negative 'programming."
モデルの特徴  Model features
サイバースペースを上記の 4つの要素 (空間 S、 オブジェク ト〇、 マネ —ジャー M、 アバター A ) で記述すること、 特に空間の秩序を維持するた めにネガティブ ' プログラミ ングによるマネージャーを加えることで、 高 - 1 o - 度な機能を持つサイバースペースを容易に記述 (構築) できるようにした のが、 本発明の特徵である。 このモデルを 「S. O M Aモデル」 (図 1参照 ) と呼ぶことにする。 By describing cyberspace with the above four elements (Spatial S, Object II, Manager M, Avatar A), especially by adding a negative 'programming manager to maintain spatial order, High -1 o-A feature of the present invention is that a cyberspace having various functions can be easily described (constructed). This model is called the “S. OMA model” (see Fig. 1).
サイバースペースの構築手順  Cyberspace building procedure
① ハードウェア構成  ① Hardware configuration
次に、 S O M Aモデルによるサイバースペースをどのように実現するか を説明する。 図 1 に示すように、 まず、 サーバ装置 1 を、 例えば高性能 UN IX系グラフィ ックスコンピュータで構成し、 また、 クライアン ト装置 3を 、 例えば、 Wi ndows 95を搭載した低価格な標準的なパソコンで構成し、 サ —バ装置 1 と単独あるいは複数のクライアン ト装置 3 とを、 例えば、 I N S 6 4回線とによるネッ トワーク 2にて接続している。  Next, we will explain how to realize cyberspace using the SOMA model. As shown in FIG. 1, first, the server device 1 is composed of, for example, a high-performance UNIX-based graphics computer, and the client device 3 is composed of, for example, a low-cost standard computer equipped with Windows 95. It is composed of a personal computer, and the server device 1 and one or more client devices 3 are connected by a network 2 using, for example, INS 64 lines.
② 空間タイプの選択と具体化  ② Selection and realization of space type
このシステムを使ってサイバースペースを構築する人は、 まず、 そのサ ィバ一スペースが空間的にどのように見えるかによつて空間ライブラリ一 から適当な空間のタイプを指定する。 一般には、 部屋等の箱型空間と、 街 等のオープン空間のいずれかである。 この空間タイプは、 背景、 大きさ、 色彩、 光源等のパラメータを含んでおり、 これらのパラメ一夕に具体的な 値を指定すれば、 具体的な空間の様子が視覚化できる (図 2参照) 。  A person who builds a cyberspace using this system first specifies an appropriate space type from a space library based on how the server space looks spatially. Generally, it is either a box-shaped space such as a room or an open space such as a town. This space type includes parameters such as background, size, color, and light source. By specifying specific values for these parameters, the specific space can be visualized (see Fig. 2). ).
③ オブジェク 卜の選択と具体化及び配置  ③ Selection, realization and arrangement of objects
次に、 その空間内に配置する机 ·椅子、 コンピュータ、 ビデオ装置等の オブジェク トを空間資源管理システムから選択する。 オブジェク トも空間 タイプと同様にパラメ一夕を含んでおり、 これらの値を指定すると同時に 空間内での位置を決める。 こうして配置された具体的なオブジェク トは、 Next, objects such as desks / chairs, computers, and video devices to be placed in the space are selected from the space resource management system. The object also contains parameters like the space type, and these values are specified and the position in the space is determined at the same time. The specific objects placed in this way are:
3次元形状を持つと同時に、 重さや価格等の性質や機能を持っている (図It has properties and functions such as weight and price while having a three-dimensional shape.
2参照) 。 2).
④ 新しい資源の追加開発 よく使われる空間タイプゃォブジェク トは、 システムが始めから持って いるが、 適当なものが無い場合は、 自分で開発することも出来る。 これは 、 低水準言語による方法をとる。 そして、 これらは、 サイバースペースを 構築水準言語ライブラリ一として、 サーバ装置 1 の空間資源管理システム で管理される (空間資源管理機能) 。 追加 Additional development of new resources The system has the most commonly used spatial type objects from the start, but if you don't have the right one, you can develop your own. It takes a low-level language approach. These are managed by the space resource management system of the server device 1 (spatial resource management function), using cyberspace as a construction-level language library.
⑤ アバターの姿の決定  決定 Determine your avatar
こうして空間の様子が決まったら、 そこに参加するユーザ一の代理人と して空間内で活動するアバ夕一 (図 5のアバ夕一 Aを参照) の姿を決める 。 アバターの体型は身長、 胸囲、 座高等の体型を決めるパラメ一夕に具体 的な値を指定することで決定され、 それに頭部に頭部画像データ、 体に服 装画像データを張り付けることにより、 個人識別が出来るようにする。 ァ バタ一は、 空間内を移動したり、 姿勢を変えたり、 声で他のアバター (ュ 一ザ一) と話したり、 オブジェク トを操作したりすることが潜在的に出来 るようになっている (図 2参照) 。  After the appearance of the space is determined in this way, the figure of Aba Yuichi (see Aba Yuichi A in Figure 5) acting in the space as the agent of the user participating in the space is determined. The avatar's body type is determined by specifying specific values for the parameters that determine the body type, such as height, chest measurement, and sitting height, and by attaching head image data to the head and clothing image data to the body. Be able to identify individuals. Avatars are potentially able to move around in space, change postures, talk to other avatars (users) with voice, and manipulate objects. (See Figure 2).
⑥ 空間秩序のプログラミ ング: マネージャ一の指定  空間 Programming of spatial order: Designation of manager
このような空間が、 一定の秩序を維持するためには、 アバターの活動や ォブジヱク トの機能に一定の制約を付けなければならない。 会議中に勝手 に発言したり、 歩き回ったりしたら、 会議室という空間の機能が発揮でき なくなってしまうからである。  In order for such a space to maintain a certain order, certain restrictions must be imposed on the avatar's activity and the function of the object. If you speak or walk around without permission during the meeting, the function of the space called the meeting room cannot be demonstrated.
この制約は一般的に決められるものではなく、 空間ごとに異なる。 した がって、 空間ごとにどのような制約があるかを指定する。 これは、 アバ夕 一やオブジェク トが潜在的に有している能力や機能を制限することである から、 従来のプログラミ ング言語のような機能の埋め込みによる 「ポジテ ィブ · プログラミ ング」 ではなく、 「ネガティブ, プログラミ ング」 を行 なうことになる。 この点も本発明の特徴であり、 この方式が高度な空間を 容易に構築できる理由の一^ Dである。 サイバースペースの動作 This constraint is not generally determined and varies from space to space. Therefore, we specify what restrictions there are for each space. This is to limit the capabilities and functions that Avatar and objects have potentially, so it is not `` positive programming '' by embedding functions like a conventional programming language. And “negative, programming”. This point is also a feature of the present invention, and is one of the reasons why this method can easily construct an advanced space. Cyberspace in action
① 空間の立ち上げとユーザーの参加  ① Launch of space and user participation
こうして定義されたサイバースペースのデータは、 サーバ装置 1で保持 される。 図 3に示すように、 空間管理者によりサイバースペースが立ち上 げられると、 ユーザーはクライアントソフ トウエアが導入されたパソコン (クライアン ト装置 3 ) で、 ネッ トワーク 2経由でそのサイバースペース に参加することができる。 サーバ装置 1側は、 ユーザー認証の後、 そのュ -ザ一の視点から見た空間の様子を示すデ一夕をクライアン ト装置 3に送 信する。 このデータは、 背景になる静止画、 各ォブジヱク トの形状を示す 静止画と位置、 参加アバターの体型 ·姿勢パラメータ値群と頭部 ·服装画 像データと位置、 空間とオブジェク トの属性値群と機能群値からなってい る。  The cyberspace data defined in this way is held in the server device 1. As shown in Fig. 3, when the space manager starts up the cyberspace, the user must join the cyberspace via the network 2 using a personal computer (client device 3) on which the client software has been installed. Can be. After the user authentication, the server device 1 transmits to the client device 3 a message indicating the state of the space viewed from the viewpoint of the user. This data consists of a still image to be the background, a still image and position indicating the shape of each object, the body type of the participating avatars, the posture parameter values and the head, and the clothing image data and position, and the space and object attribute values. And function group values.
② 空間の視覚化  ② Visualization of space
空間デ一夕を受信したクライアン 卜装置 3は、 サイバースペースを視覚 化する (図 3及び図 5参照) 。 その方法は、 まず、 空間の背景を示す遠近 法による静止画上に、 ォブジ Xク トゃアバター Aの姿を示す静止画をその 配置の奥行きの深さに応じて縮小する (遠方画像縮小機能) 。 そして、 深 い方から順に背景画に上書きし (前方画像上書き機能) 、 アバター Aゃォ ブジェク トの相互の位置の衝突を検出して移動を制御 (衝突制御機能) す ることで、 2次元の静止画を使って 3次元空間の視覚的遠近感を模倣する ο  The client device 3 that has received the spatial data visualizes the cyberspace (see Figs. 3 and 5). The method is as follows: First, a still image showing the image of object X Avatar A is reduced according to the depth of the arrangement on a perspective still image showing the background of the space (far image reduction function). ). Then, the background image is overwritten in order from the deepest (forward image overwriting function), and the movement of the avatar is detected by detecting the collision of the A-objects with each other (collision control function). Mimics the visual perspective of a three-dimensional space using a still image of ο
③ 音声によるコミュニケーショ ン  ③ Voice communication
さらに、 ユーザーが声を発すると、 それをクライアント装置 3からネッ トワーク 3を介してサーバ装置 1 に送信し、 サーバ装置 1はアバター Aの 位置関係データと共にすベてのユーザ一の音声データを実時間でクライア ン ト装置 3に送信する。 これを受信したクライアン ト装置 3は、 当該アバ ターと他のアバターと空間内で距離に応じてアバターの音声の音量を落と し (音声距離減衰機能) 、 右寄りの位置にいるアバ夕一の音声は右側の音 量を、 左側より少し大きく且つ早く到達させ (方向音声合成機能) て再生 することで、 3次元空間の音声的模倣をする ( 3次元音声合成 ·再生機能Further, when the user utters a voice, the voice is transmitted from the client device 3 to the server device 1 via the network 3, and the server device 1 executes the voice data of all the users together with the avatar A's positional relationship data. Send to client device 3 in time. Upon receiving this, the client device 3 The volume of the avatar's voice is reduced according to the distance between the avatar and other avatars in the space (voice distance attenuation function), and the sound of the avatar Yuichi who is closer to the right has the right-side volume slightly higher than the left side. Simulates the sound in a three-dimensional space by causing it to arrive early (directional speech synthesis function) and playing it back (3D speech synthesis and playback function)
) 。 ).
④ 空間内での活動  活動 Activities in the space
アバター Aが移動したり、 姿勢を変えたり、 オブジェク トを操作するな どの活動を行なうと、 それが空間内の秩序を乱す恐れがないかを検査する ために、 サーバ装置 1 に問い合わされる (活動結果報告機能) 。 サーバ装 置 1 はマネージャーの定義にしたがってそれを検査し (活動可能性検査機 能) 、 可能ならばその行動を許可すると同時に、 他のクライアン ト装置 3 にそれを知らせる (活動反映機能) ことで、 矛盾のないコ ミュニケーショ ンするための制御を行なう役割をする (共通空間制御機能) 。  When the avatar A performs an activity such as moving, changing a posture, or manipulating an object, the avatar A is queried to the server device 1 to check whether the avatar A may disturb the order in the space (activity). Result reporting function). The server device 1 inspects it according to the definition of the manager (activity possibility check function), and if possible, permits the action, and at the same time notifies other client devices 3 of it (activity reflection function). It plays the role of controlling for consistent communication (common space control function).
⑤ 履歴機能  履 歴 History function
また、 アバ夕一群が空間内で活動した履歴を保存し、 後でこれを任意の 角度から再現することができるようになつている (活動履歴保存 ·再現機 能) o  In addition, the history of Aba Yuichi's activities in the space is saved, and this can be reproduced later from any angle (Activity history storage / reproduction function) o
このように本発明では、 サイバースペースを、 空間、 ォブジヱク ト、 ァ バターの 3つの要素に、 一定の規則や制限の機能を持たせたネガティブ · プログラミ ングによるマネ一ジャーという要素を加えることで、 高度な機 能を持つサイバースペースを容易に構成することができる。  Thus, in the present invention, cyberspace is added to the three elements of space, object, and avatar by adding an element called a manager by negative programming that has a function of a certain rule and restriction. Cyberspace with advanced functions can be easily configured.
また、 ネガティブ · プログラミ ングによるマネージャーの導入は、 サイ バースペースの構築の生産性を高め、 開発の成功率を向上させるのに重要 な役割を果しているものである。 これに加え、 サイバースペースを構成す る空間ゃォブジヱク トのライブラリ一をサーバ装置 1側の空間資源管理シ ステムで管理することでも、 その効果を高めている。 さらに、 クライアント装置 3側に空間やォブジヱク トの 3次元モデルを 持ち込まず、 強力なグラフィ ックサーバで作成した 2次元静止画をベース にした 3次元空間の模倣をクライアン ト装置 3側で行なうことで、 低速の パソコンで、 高品質な画像で表現された空間に参加することができるもの である。 また、 V R M Lや、 J a V a言語はクライアン ト装置 3側で 3次 元空間の視覚化 (レンダリ ング) を行なっているため、 画像の品質を上げ ようと思うと、 クライアン ト装置 3に高い性能を要求することになるとい う欠陥を、 本発明では、 高性能のサーバ装置 1 にレンダリ ングを行なわせ ることで改善している。 In addition, the introduction of managers through negative programming plays an important role in increasing the productivity of cyberspace construction and increasing the success rate of development. In addition, the effect is enhanced by managing a library of space objects that make up cyberspace with the space resource management system on the server device 1 side. Furthermore, without bringing a 3D model of space or objects to the client device 3, the client device 3 imitates a 3D space based on a 2D still image created by a powerful graphics server. It is a low-speed personal computer that allows you to participate in a space represented by high-quality images. In addition, VRML and the Java language use the visualization (rendering) of the three-dimensional space on the client device 3 side, so if you want to improve the image quality, the client device 3 has a higher quality. In the present invention, the defect that performance is required is improved by making the high-performance server device 1 render.
また、 3次元音声合成,再生機能で、 臨場感あるコ ミ ュニケーショ ンを 実現できるものであり、 この点でも、 従来の方法にはなかった高度な空間 を実現することができるものである。 図面の簡単な説明  In addition, the 3D speech synthesis and playback functions can realize immersive communication, and in this regard, it can also realize a sophisticated space that was not possible with conventional methods. BRIEF DESCRIPTION OF THE FIGURES
図 1 は本発明のサイバースペースを構築するためのシステム構成図であ る o  Figure 1 is a system configuration diagram for building a cyberspace according to the present invention.o
図 2は本発明のサイバースペースを構築するための基本的な手順を示す 図である。  FIG. 2 is a diagram showing a basic procedure for building a cyberspace according to the present invention.
図 3は本発明のサイバースペースの基本的な動作を示す図である。 図 4は本発明のサーバ装置の概略プロック図である。  FIG. 3 is a diagram showing a basic operation of the cyberspace of the present invention. FIG. 4 is a schematic block diagram of the server device of the present invention.
図 5は本発明のクライアント装置側の表示部にサイバースペースを描画 させた状態の図である。  FIG. 5 is a diagram showing a state in which cyber space is drawn on the display unit on the client device side of the present invention.
図 6は本発明のサーバ装置のサーバ基本制御ライブラリ一の機能的な構 成で示したプロック図である。  FIG. 6 is a block diagram showing a functional configuration of a server basic control library of the server device of the present invention.
図 7は本発明のサーバ基本制御ライブラリ一内の空間基本制御機能部の 機能的な構成で示したプロック図である。 図 8は本発明の空間基本制御機能部内の空間開始機能部の制御動作を示 すフローチャー トである。 FIG. 7 is a block diagram showing a functional configuration of the space basic control function unit in the server basic control library 1 of the present invention. FIG. 8 is a flowchart showing the control operation of the space start function unit in the space basic control function unit of the present invention.
図 9は本発明の空間基本制御機能部内の空間参加機能部の制御動作を示 すフローチヤ一トである。  FIG. 9 is a flowchart showing the control operation of the space participation function unit in the space basic control function unit of the present invention.
図 1 0は本発明の空間基本制御機能部内の空間退場機能部の制御動作を 示すフローチャー卜である。  FIG. 10 is a flowchart showing the control operation of the space leaving function unit in the space basic control function unit of the present invention.
図 1 1 は本発明の空間基本制御機能部内の空間終了機能部の制御動作を 示すフローチヤ一トである。  FIG. 11 is a flowchart showing the control operation of the space end function unit in the space basic control function unit of the present invention.
図 1 2は本発明のサーバ基本制御ライブラリー内のォブジヱク ト基本制 御機能部の機能的な構成で示したプロック図である。  FIG. 12 is a block diagram showing a functional configuration of an object basic control function unit in the server basic control library of the present invention.
図 1 3は本発明のサーバ基本制御ライブラリ一内のアバター基本制御機 能部の機能的な構成で示したプロック図である。  FIG. 13 is a block diagram showing a functional configuration of the avatar basic control function unit in the server basic control library 1 of the present invention.
図 1 4は本発明のサーバ基本制御ライブラリ一内の近傍空間抽出機能部 の機能的な構成で示したプロック図である。  FIG. 14 is a block diagram showing the functional configuration of the neighborhood space extraction function unit in the server basic control library 1 of the present invention.
図 1 5は本発明の近傍ォブジ ク ト抽出機能部の制御動作を示すフロー チヤ一トである。  FIG. 15 is a flowchart showing the control operation of the neighborhood object extraction function unit of the present invention.
図 1 6は本発明のサーバ基本制御ライブラリ一内のモデル変換機能部の 機能的な構成で示したプロック図である。  FIG. 16 is a block diagram showing a functional configuration of the model conversion function unit in the server basic control library 1 of the present invention.
図 1 7は本発明の広角静止画像作成機能部の制御動作を示すフローチヤ 一トである。  FIG. 17 is a flowchart showing the control operation of the wide-angle still image creation function unit of the present invention.
図 1 8は本発明の空間ライブラリ一の機能的な構成で示したプロック図 である。  FIG. 18 is a block diagram showing a functional configuration of one of the spatial libraries according to the present invention.
図 1 9は本発明の共通ォブジェク トライブラリ一の機能的な構成で示し たプロ ック図である。  FIG. 19 is a block diagram showing a functional configuration of one common object library of the present invention.
図 2 0は本発明の共通オブジェク トライブラリ一内のビデオオブジェク トの機能的な構成で示したプロック図である。 図 2 1 は本発明のビデオォブジ xク トにおける再生準備及び再生開始の 制御動作を示すフローチヤ一 トである。 FIG. 20 is a block diagram showing a functional configuration of a video object in the common object library according to the present invention. FIG. 21 is a flowchart showing a control operation of preparation for reproduction and start of reproduction in the video object x video of the present invention.
図 2 2は本発明のビデオオブジェク トにおける再生一時停止の制御動作 を示すフローチヤ一トである。  FIG. 22 is a flowchart showing a control operation of pause of reproduction in the video object of the present invention.
図 2 3は本発明のビデオォブジ ク トにおける再生停止の制御動作を示 すフローチヤ一トである。  FIG. 23 is a flowchart showing a control operation for stopping reproduction in the video object of the present invention.
図 2 4は本発明のビデオオブジェク トにおける画像終了の制御動作を示 すフローチヤ一トである。  FIG. 24 is a flowchart showing a control operation for ending an image in the video object of the present invention.
図 2 5は本発明の共通ォブジェク トライブラリ一内のビデオカメラォブ ジェク トの機能的な構成で示したプロック図である。  FIG. 25 is a block diagram showing a functional configuration of a video camera object in the common object library of the present invention.
図 2 6は本発明のビデオ力メラオブジェク 卜のカメラ準備機能部におけ る制御動作を示すフローチヤ一トである。  FIG. 26 is a flowchart showing the control operation in the camera preparation function unit of the video camera object of the present invention.
図 2 7は本発明のビデオカメラオブジェク 卜のカメラ画像配信機能部に おける制御動作を示すフローチヤ一トである。  FIG. 27 is a flowchart showing the control operation in the camera image distribution function unit of the video camera object of the present invention.
図 2 8は本発明のビデオカメラオブジェク トの錄画開始機能部及び録画 停止機能部における制御動作を示すフローチヤ一トである。  FIG. 28 is a flowchart showing a control operation in the video start function unit and the recording stop function unit of the video camera object of the present invention.
図 2 9は本発明のビデオカメラォブジ Xク トの再生開始機能部及び再生 一時停止機能部における制御動作を示すフローチヤ一トである。  FIG. 29 is a flowchart showing a control operation in the playback start function unit and the playback pause function unit of the video camera object X of the present invention.
図 3 0は本発明のビデオカメラオブジェク トの再生停止機能部及び終了 機能部における制御動作を示すフローチヤ一トである。  FIG. 30 is a flowchart showing a control operation in the playback stop function unit and the end function unit of the video camera object of the present invention.
図 3 1は本発明の共通オブジェク トライブラリ一内の黒板オブジェク ト の機能的な構成で示したブロック図である。  FIG. 31 is a block diagram showing a functional configuration of a blackboard object in the common object library 1 of the present invention.
図 3 2は本発明の黒板オブジェク トの黒板準備機能部及び描画開始指示 機能部における制御動作を示すフローチヤ一卜である。  FIG. 32 is a flowchart showing a control operation in the blackboard preparation function unit and the drawing start instruction function unit of the blackboard object of the present invention.
図 3 3は本発明の黒板ォブジ ク 卜の描画配信機能部及び描画終了配信 機能部における制御動作を示すフローチャートである。 図 3 4は本発明の黒板オブジェク 卜の黒板オブジェク ト終了機能部にお ける制御動作を示すフローチヤ一トである。 FIG. 33 is a flowchart showing the control operation in the drawing distribution function unit and the drawing end distribution function unit of the blackboard object of the present invention. FIG. 34 is a flowchart showing a control operation in the blackboard object end function unit of the blackboard object of the present invention.
図 3 5は本発明の共通ォブジヱク トライブラリ一内のマイク · スピー力 オブジェク 卜の機能的な構成で示したプロック図である。  FIG. 35 is a block diagram showing a functional configuration of a microphone / speech force object in the common object library of the present invention.
図 3 6は本発明のマイク · スピーカオブジェク 卜のマイク準備機能部に おける制御動作を示すフローチヤ一トである。  FIG. 36 is a flowchart showing a control operation in the microphone preparation function unit of the microphone / speaker object of the present invention.
図 3 7は本発明のマイク · スピーカオブジェク トの音声配信機能部にお ける制御動作を示すフローチヤ一トである。  FIG. 37 is a flowchart showing a control operation in the voice distribution function unit of the microphone / speaker object of the present invention.
図 3 8は本発明のマイク ' スピーカォブジヱク 卜の録音開始機能部及び 録音停止機能部における制御動作を示すフローチヤ一 トである。  FIG. 38 is a flowchart showing the control operation in the recording start function unit and the recording stop function unit of the microphone and speaker object of the present invention.
図 3 9は本発明のマイク ■ スピーカオブジェク トの再生開始機能部及び 再生一時停止機能部における制御動作を示すフローチヤ一トである。 図 4 0は本発明のマイク · スピーカォブジヱク トの停止機能部における 制御動作を示すフローチヤ一トである。  FIG. 39 is a flowchart showing a control operation in the reproduction start function section and the reproduction pause function section of the microphone 1 speaker object of the present invention. FIG. 40 is a flowchart showing a control operation in the stop function unit of the microphone / speaker object according to the present invention.
図 4 1 は本発明のマイク · スピーカオブジェク 卜の終了機能部における 制御動作を示すフローチヤ一トである。  FIG. 41 is a flowchart showing the control operation of the microphone / speaker object termination function unit of the present invention.
図 4 2は本発明の共通ォブジヱク トライブラリ一内のチヤッ トオブジェ ク トの機能的な構成で示したプロック図である。  FIG. 42 is a block diagram showing a functional configuration of a chat object in the common object library of the present invention.
図 4 3は本発明のチヤッ トォブジェク 卜の開始機能部及びテキスト配信 機能部における制御動作を示すフローチャー トである。  FIG. 43 is a flowchart showing a control operation in the start function section and the text distribution function section of the chat object according to the present invention.
図 4 4は本発明のマネージヤーライブラリ一の機能的な構成で示したブ 口ック図である。  FIG. 44 is a block diagram showing a functional configuration of a manager library according to the present invention.
図 4 5は本発明のマネージヤーライブラリ一内の位置マネージャ一機能 部の機能的な構成で示したプロック図である。  FIG. 45 is a block diagram showing a functional configuration of the position manager 1 function unit in the manager library 1 of the present invention.
図 4 6は本発明のマネージヤーライブラリ一内のセキュリティマネージ ヤー機能部の機能的な構成で示したプロック図である。 図 4 7は本発明のマネージヤーライブラリ一内の履歴マネ一ジャー機能 部の機能的な構成で示したプロック図である。 FIG. 46 is a block diagram showing the functional configuration of the security manager function unit in the manager library 1 of the present invention. FIG. 47 is a block diagram showing a functional configuration of the history manager function unit in the manager library 1 of the present invention.
図 4 8は本発明のクライアン ト ,サーバ交信機能部の機能的な構成で示 したプロック図である。  FIG. 48 is a block diagram showing the functional configuration of the client / server communication function unit of the present invention.
図 4 9は本発明のクライアント装置のプロック図である。  FIG. 49 is a block diagram of the client device of the present invention.
図 5 0は本発明のクライアント装置のメモリの機能的な構成で示したブ 口ック図である。  FIG. 50 is a block diagram showing the functional configuration of the memory of the client device of the present invention.
図 5 1 は本発明のクライアント装置のスピーカ · オブジェク トの制御動 作を示すフローチヤ一トである。 発明を実施するための最良の形態  FIG. 51 is a flowchart showing the control operation of the speaker object of the client device of the present invention. BEST MODE FOR CARRYING OUT THE INVENTION
以下、 本発明の実施の形態を図面を参照して説明する。 本発明はサイバ 一スペースを、 空間 (Space)、 オブジェク ト(Object), マネ一ジャー(Man ager) 、 アバ夕一(Avator/Agent)の 4つの要素で記述し、 インタ一ネッ ト 上で動作させるブラッ トフォームを実現することであり、 図 1 に全体のシ ステム構成図を示す。  Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the present invention, a cyber space is described by four elements: a space, an object, a manager, and an avator / agent, and operates on the Internet. The system configuration is shown in Fig. 1.
サーバ装置 1 はレンダリ ング処理、 マルチユーザ一制御等を高速に行な える高性能グラフィ ックスコンピュータで構成され、 また、 クライアン ト 装置 3は、 例えば、 Windows 95を搭載した低価格な標準的なパソコンで構 成し、 サーバ装置 1 と単独あるいは複数のクライアン 卜装置 3とを、 例え ば、 I N S 6 4回線によるネッ トワーク 2にて接続している。  The server device 1 is composed of a high-performance graphics computer capable of high-speed rendering processing, multi-user control, and the like. The client device 3 is, for example, a low-cost standard computer equipped with Windows 95. It is composed of a personal computer, and the server device 1 and one or more client devices 3 are connected, for example, by a network 2 with INS 64 lines.
サイバースペースを容易に構築するためのブラッ トフォームの確立のた めには、 サイ^ースペースをどのようなモデルで記述 (表現) するかが最 も重要であり、 本システムでは、 サイバースペースを次の 4つでの要素で 記述する。  In order to establish a platform for easily constructing cyberspace, it is of utmost importance to describe (express) the cyberspace with a model. Describe with four elements.
空間 ( Space) VRMLのバージョン 1 . 0で記述できる 3次元空間を、 高水準で記述した ものに、 空間が持つ機能を埋め込んだものである。 空間の構造と機能はォ ブジェク ト指向データベース管理システムにパラメータ化された空間モデ ルと機能モジユールを保存しておき、 それをパラメ一夕に具体的値を対応 させることで、 簡単に空間を記述できるようにしたものである。 データべ —ス内のパラメ一タ化された空間は、 VRMLを使って記述し、 機能は例えば 、 C言語の関数として記述される。 Space It is a high-level description of a three-dimensional space that can be described with VRML version 1.0, with the functions of the space embedded. The space structure and functions can be easily described by storing parameterized space models and function modules in an object-oriented database management system, and associating them with specific values over time. It is made possible. The parameterized space in the database is described using VRML, and the functions are described, for example, as C language functions.
オブジェク ト(Object)  Object
VRMLで記述される形を持ち、 それが保持する状態変数群 (属性) 、 その 変数を処理するメソッ ド群からなるものである。 これらのメソッ ドは、 基 本的には後述するアバターの操作によって起動される。 また、 このォブジ ェク トの中には、 センサーを持ったものがあり、 そのセンサーによって状 態や形が変化する動的オブジェク トゃ状態の変化によって自動的にメソッ ドが起動される自立オブジェク トもある。  It has a form described in VRML, and it consists of state variables (attributes) that it holds and methods that process the variables. These methods are basically activated by the operation of the avatar described later. Some of these objects have a sensor, and a dynamic object whose state or shape changes with the sensor. An autonomous object whose method is automatically activated by a change in state. There is also.
マネージャー(Manager)  Manager
1つの空間に複数の人 (アバター) が入って、 コミュニケーションや共 同作業を行なう場合、 その空間が特定の目的を果たそうとすれば、 一定の 規則や制約が必要となる。 発言やオブジェク トの操作のタイ ミ ングは、 効 率のいいコ ミュニケーショ ンゃ共同作業には欠かせないし、 アバ夕一の移 動範囲も制限されなければならない。 これらは実世界では、 マナー、 規則 等として確立していることで、 これを犯せば、 社会的批判や権力による行 動の制限などで処罰されるが、 ネッ トワーク上でプログラム的にこれを行 なうのか、 マネージャ一である。  When multiple people (avatars) enter a single space for communication and cooperative work, certain rules and restrictions are required if the space serves a specific purpose. Timing of remarks and manipulation of objects is essential for efficient communication and collaboration, and the range of movement of Ababa Yuichi must be limited. These are established in the real world as manners, rules, etc. If they are violated, they will be punished for social criticism and restrictions on actions by power, but they will be programmatically implemented on the network. No, it's the manager.
アバター(Avator)  Avator
ユーザーの代理人として、 空間内で行動するキャラクターをアバターと いう。 人間の形をしており、 透視法で表現された 3次元空間内を 3次元的 に動く。 例えば、 図 5に示すアバ夕一 Aが奥に行けば小さくなり、 手前に 来ればアバ夕一 Aは大きくなり、 横に向けば横向きになる。 また、 アバ夕 — Aは物、 例えば柱の陰に隠れれば一部が見えなくなる等である。 そして 、 アバター Aはオブジェク トを操作することができ、 生の声で話す。 自分 のアバター Aの行動は自分でマウスで操作するようになっている。 Characters acting in the space as a user's agent are called avatars. It has the shape of a human being, and is three-dimensional in a three-dimensional space represented by perspective. Move to For example, if Ababa A shown in Fig. 5 goes deeper, it becomes smaller, if it comes closer, Ababa A becomes larger, and if it turns sideways, it becomes horizontal. Ababa-A is an object, for example, if you hide behind a pillar, you will not be able to see part of it. And Avatar A can manipulate the object and speak in a live voice. You control your avatar A's actions with your mouse.
本システムでは、 上記の 4つの要素 (空間、 オブジェク ト、 アバター、 マネージャー) の秩序を保ってその役割を果たすために、 イベン トが起こ つたとき、 そのイベン トに対応したネガテイブ · プログラミ ングを行なう そして、 空間の記述として、 図 4に示すデータベース 1 1内に空間ライ ブラリ一として空間タイプが管理してあり、 ここでどういうふうな空間を 呼び出すかを指定し、 背景の大きさ、 色彩、 光源などをパラメ一夕で指定 する。 また、 イベン トを起こすため空間内をエリアで区切る。  In this system, in order to maintain the order of the above four elements (space, object, avatar, and manager) and perform their functions, when an event occurs, negative programming corresponding to the event is performed. As a description of the space, the space type is managed as a space library in the database 11 shown in Fig. 4, and what kind of space is called here is specified, and the background size, color, light source And so on. Also, the space is divided into areas to cause events.
また、 オブジェク トの記述としては、 同様にデータベース 1 1内にォブ ジェク トライブラリ一を入れて管理しており、 サーバ装置 1でオブジェク トのライブラリ一名及びそのオブジェク トが持ち合わせているパラメ一夕 を指定する。 また、 オブジェク トの移動範囲も指定するようになっている アバ夕一の記述としては、 データベース 1 1内に大体の形が決められた アバ夕一ライブラリ一を 1つだけ管理しておき、 サーバ装置 1でアバター の体型、 頭部画像及び服装などのパラメ一夕を指定する。 また、 初期のァ バターの配置座標や姿勢を指定し、 制御するユーザー名も指定する。  The object description is also stored in the database 11 in the same manner as the object library, and the object library is managed. The server device 1 stores the name of the object library and the parameters that the object has. Specify evening. In addition, the description of Ababa Yuichi, which specifies the moving range of objects, is as follows. Only one Ababa Yuichi library, whose shape is roughly determined, is managed in database 11 and the server Use device 1 to specify parameters such as the avatar's body type, head image, and clothing. It also specifies the initial avatar layout coordinates and posture, and specifies the user name to control.
さらに、 マネ一ジャーの記述としては、 与えられたオブジェク トの機能 をどのような場合アバ夕一が発起させられないかを 「ネガティブ ' プログ ラ ミ ング」 の形で指定する。  In addition, the manager's description specifies when the function of a given object cannot be triggered by Ababa Yuichi in the form of “negative 'programming'”.
上記プラッ トフ ォームは、 この理論モデルに基づいて、 クライアント ' サーバ · アーキテクチャで実現したものであり、 サーバ装置 1 とクライア ン 卜装置 3とにそれぞれ機能を分担させている。 Based on this theoretical model, the platform This is realized by a server architecture, in which the server device 1 and the client device 3 share functions.
サーバ装置 1 は、 サイバースペースモデルを保持し、 それぞれのクライ アント装置 3に空間の様子 (データ) を知らせると共に、 他のクライアン 卜の行動とその結果を知らせ、 クライアン 卜の行動が互いに矛盾しないよ うに制御する機能を持たせている。  The server device 1 holds a cyberspace model, notifies each client device 3 of the state of the space (data), and also informs the actions of other clients and their results, so that the actions of the clients do not contradict each other. Control function.
ここで、 ネッ トワークを介したコミ ュニケ一ションを本格的に行なうた めには、 関心の対象となっている物や空間が、 リアリティを持っているこ とが極めて重要である。 本システムでは、 サーバ装置 1上に 3次元モデル を保持し、 テキスチャの張り付けや影の処理等の高度の処理を施した高精 密静止画を作成し、 この静止画をクライアン ト装置 3へ送り付け、 リアリ ティを向上させている。  Here, it is extremely important that the objects and spaces of interest have reality in order for communication to take place over the network in earnest. In this system, a 3D model is held on the server device 1, and a high-precision still image that has been subjected to advanced processing such as texture pasting and shadow processing is created, and this still image is sent to the client device 3. , The reality is improving.
また、 各ユーザーは任意の位置及び方向から見た空間の様子を高精密静 止画として受け取るものであり、 空間は透視法による高精密静止画上とし て表現され、 アバ夕一は 3次元キャラクタ一としてユーザ一の制御の元で 静止画上を動き回る。 アバ夕一が空間内の予め決められた範囲 (位置) に 行く と、 キャラクターが変身し、 その状態を示すと同時に、 物を操作した り、 別の空間に飛んでいく (ワープする。 ) ことができる。  In addition, each user receives the state of the space viewed from any position and direction as a high-precision still image. The space is represented as a high-precision still image by a perspective method. It moves around on a still image under the control of the user. When Aba Yuichi goes to a predetermined area (position) in the space, the character transforms and shows its state, and at the same time manipulates things and flies to another space (warps). Can be.
すなわち、 本システムでは、 従来の VRMLの 「動的視点移動」 という方法 から、 「 3次元キャラクター移動 +停止時視野合成」 という方法をとり、 この方法によってクライアント装置 3側の負荷を軽くするようにしている 。 サーバ装置 1 は高性能グラフィ ックコンピュータが使用できるので、 高 品質な静止画を視点に応じて高速で合成し、 クライアント装置 3へ送るこ とができるものである。  In other words, in this system, instead of the VRML method of “dynamic viewpoint movement”, the method of “3D character movement + visual field synthesis at stop” is adopted, and the load on the client device 3 side is reduced by this method. ing . Since the server device 1 can use a high-performance graphics computer, it can synthesize high-quality still images at high speed according to the viewpoint and send it to the client device 3.
そして、 サイバースペースのショ ッ ピングモールや仮想美術館等は、 従 来の VRMLで行なっている 「動的視点移動」 をスムーズに行なうより、 立ち 止まった時の画像の品質が重要であり、 本システムでは、 高精密静止画を 負荷を軽く したクライアン ト装置 3に送るようにして画像の品質を保ちな がら、 クライアン ト装置 3側の軽い処理を実現している。 At shopping malls and virtual museums in cyberspace, the “dynamic viewpoint movement” performed by conventional VRML is not performed smoothly. The quality of the image at the time of stopping is important, and in this system, high-precision still images are sent to the client device 3 with a light load, while maintaining the image quality, and light processing on the client device 3 side Has been realized.
一方、 クライアン ト装置 3は、 サイバースペース (仮想空間) に参加す るユーザーが直接操作するパソコンであり、 サーバ装置 1からネッ トヮー ク 2を介して貰った空間モデルを視覚化し、 アバター Aの操作を行なうよ うになっている。  On the other hand, the client device 3 is a personal computer directly operated by a user participating in cyberspace (virtual space). The client 3 visualizes the space model received from the server device 1 via the network 2 and operates the avatar A. Is to be performed.
また、 レンダリ ングゃレイ トレーシング等の重い処理及びマルチユーザ 一環境の制御を上述のように強力なサーバ装置 1側で行なっているので、 クライアン 卜装置 3側では、 該クライアン ト装置 3側の処理を軽くするこ とができ、 ユーザーは低価格のパソコンで空間内に参加することができる ο  In addition, since heavy processing such as rendering and ray tracing and control of a multi-user environment are performed on the powerful server device 1 side as described above, the client device 3 side receives the client device 3 side. Processing can be reduced, and users can participate in the space with low-cost personal computers ο
ところで、 空間にはいろいろな形状が存在するが、 大きく 2つに分ける ことができる。 1つは、 教室や会議室のような箱型の空間、 もう 1っは大 学や野球場といったようなオープン型の空間である。 本発明では、 データ ベース 1 1 に入れる空間の型はこの 2つとしている。  By the way, there are various shapes in the space, but they can be roughly divided into two. One is a box-shaped space such as a classroom or a conference room, and the other is an open space such as a university or a baseball field. In the present invention, these two types of space are stored in the database 11.
そして、 箱型空間は、 四方が壁で囲まれた空間で、 窓やドアも一緒に付 いており、 空間例としては、 上記の教室、 会議室や体育館等である。 この 型の空間の属性としては、 幅、 高さ、 奥行きがある。  The box-shaped space is a space surrounded by walls on all sides, with windows and doors attached. Examples of the space are the classrooms, conference rooms, and gymnasiums described above. The attributes of this type of space include width, height, and depth.
また、 オープン型の空間は、 周りは何も囲まれておらず、 平らな空間で あり、 空間例としは、 上記の大学キャンパス、 野球場や街等である。 サーバ装置 1 の構成  An open space is a flat space without any surroundings, and examples of such spaces are the above-mentioned university campuses, baseball stadiums, and towns. Configuration of server device 1
図 4はサーバ装置 1のプロック図を示し、 各種のデータやプログラムを ライブラリ一として予め格納しておくデータベース 1 1、 データゃプログ ラムを記憶するメモリ 1 2、 クライアン ト装置 3 とのデータの授受を行な うクライアン ト 'サーバ交信機能部 1 3、 及びデータベース管理システム 等の制御や全体の制御を司る C P U 1 0等で構成されている。 Fig. 4 shows a block diagram of the server device 1. The database 11 stores various data and programs in advance as a library, the memory 12 stores data programs, and the exchange of data with the client device 3. Client communication server 13 and database management system , Etc., and a CPU 10 which controls the entire control.
このサーバ装置 1が支援する機能は、 ①近傍空間抽出機能、 ②モデル変 換機能、 ③マルチユーザ—制御機能、 ④共有ォブジェク ト管理機能、 ⑤口 グ機能、 及び⑥デ一夕べ一ス管理機能である。  The functions supported by this server device 1 are: (1) neighborhood space extraction function, (2) model conversion function, (3) multi-user control function, (4) shared object management function, (4) opening function, and (4) data management function. It is.
上記①近傍空間抽出機能は、 クライアン 卜が参加している空間の中で、 そのクライアン卜に関係のある部分 (空間、 オブジェク ト、 アバター) だ けを切り出す機能である。 また、 ②モデル変換機能は、 クライアン トの視 点から見た、 そのクライアントに送付する擬似 3次元サイバースペースモ デルを生成する機能であり、 ③マルチユーザ一制御機能は、 複数のユーザ 一が同じ空間を共有して、 矛盾なく コ ミュニケーションを行なうために必 要な機能である。  The neighborhood space extraction function described above is a function to cut out only the part (space, object, avatar) related to the client in the space where the client participates. Also, (2) the model conversion function is a function that generates a pseudo three-dimensional cyberspace model to be sent to the client from the client's point of view. (3) The multi-user one control function is that multiple users are the same. This function is necessary for sharing space and communicating without contradiction.
さらに、 ④共有オブジェク ト管理機能は、 空間の中に存在するオブジェ ク トを管理する機能であり、 ⑤ログ機能は、 空間の中で行なわれるアバ夕 一の動きや、 オブジェク トの変化を記録、 管理し、 これを再現する機能で ある。 また、 ⑥データベース管理機能は、 空間 (S O M A空間) の構成要 素をデータベース 1 1 として管理する機能である。 図 4に示すように、 データべ一ス 1 1内には、 上述の機能を支援するた めに作成した各種のライブラリ一 1 6〜 1 9が予め格納されている。 サー バ基本制御ライブラリー 1 6は、 サーバ装置 1 のメイ ン部分を構成するた めに必要なライブラリーであり、 空間ライブラリー 1 7は、 サイバースべ —スの空間をあらわすライブラリ一である。 共通オブジェク トライブラリ 一 1 8は、 サイバースペースの中に存在するォブジヱク 卜のライブラリ一 であり、 マネージャ一ライブラリ一 1 9は、 サイバースペース内の秩序を 実現するために必要なライブラリ一である。  Furthermore, ④the shared object management function is a function to manage the objects existing in the space, and ⑤the log function is to record the movement of the avatar in the space and the changes of the objects. It is a function that manages and reproduces this. The database management function manages the components of the space (SOMA space) as a database 11. As shown in FIG. 4, various libraries 16 to 19 created to support the above-mentioned functions are stored in the database 11 in advance. The server basic control library 16 is a library required to configure the main part of the server device 1, and the space library 17 is a library representing the space of cyber space. . The common object library 118 is a library of objects existing in cyberspace, and the manager library 19 is a library necessary for realizing the order in cyberspace.
次に、 上記サーバ基本制御ライブラリー 1 6について説明する。 サーバ 装置 1 は、 そのサーバ装置 1で立ち上がつている空間、 空間に存在するォ ブジヱク ト、 アバ夕一 Aを管理し、 空間内の秩序を実現するマネージャ一 と連携しながら、 クライアント装置 3からの要求に応えるものであり、 そ のメイン部分を構成するために必要な機能を持たせたライブラリ一がこの サーバ基本制御ライブラリー 1 6である。 Next, the server basic control library 16 will be described. The server device 1 is located in the space where the server device 1 is standing. It manages the business and the avatar A and responds to the request from the client device 3 while cooperating with the manager who realizes the order in the space, and provides the functions necessary to configure the main part. The library that we have is the server basic control library 16.
このサーバ基本制御ライブラリー 1 6は、 図 6に示すように、 空間基本 制御機能部 2 2、 ォブジ Xク ト基本制御機能部 2 3、 アバ夕一基本制御機 能部 2 4、 近傍空間抽出機能部 2 5及びモデル変換機能部 2 6で構成され ている。  As shown in Fig. 6, the server basic control library 16 is composed of a basic space control function unit 22, a basic Xbox basic control function unit 23, a basic unit control function unit 24, and a neighborhood space extraction function. It consists of a function part 25 and a model conversion function part 26.
上記空間基本制御機能部 2 2は、 サイバースペースを構成する空間をサ —バ装置 1が管理するために必要な機能を備えたものであり、 オブジェク ト基本制御機能部 2 3は、 サイバースペースを構成するォブジヱク トをサ —バ装置 1が管理するために必要な機能を備えているものである。 また、 アバター基本制御機能部 2 4は、 サイバースペースに参加するアバター A をサーバ装置 1が管理するために必要な機能を備えており、 近傍空間抽出 機能部 2 5は、 クライアン ト装置 3に送る必要のある、 アバター Aの近傍 のォブジヱク トゃ、 他のアバター Aを選択する機能を備えているものであ る。 さらに、 モデル変換機能部 2 6は、 クライアント装置 3に送る必要の ある、 クライアン ト装置 3のユーザーの視点から見た空間、 オブジェク ト の広角静止画像を作成する機能を備えているものである。  The basic space control function unit 22 has the functions necessary for the server device 1 to manage the space constituting the cyber space, and the basic object control function unit 23 has the function of the cyber space. The server device 1 has functions necessary for the server device 1 to manage the configured objects. The avatar basic control function unit 24 has a function necessary for the server device 1 to manage the avatar A participating in the cyber space, and the neighborhood space extraction function unit 25 sends the avatar A to the client device 3. It has an object near the avatar A and a function to select another avatar A. Further, the model conversion function unit 26 has a function of creating a wide-angle still image of a space or an object which needs to be sent to the client device 3 and is viewed from the viewpoint of the user of the client device 3.
次に、 サーバ基本制御ライブラリー 1 6の各機能部 2 2〜2 6の詳細に ついて説明する。 サーバ基本制御ライブラリー 1 6の空間基本制御機能部 2 2は、 図 7に示すような構成となっており、 空間開始機能部 3 1、 空間 参加機能部 3 2、 空間退場機能部 3 3、 空間終了機能部 3 4、 空間属性設 定機能部 3 5、 空間属性問い合わせ機能部 3 6、 空間エリア問い合わせ機 能部 3 7、 管理者認証機能部 3 8、 及びユーザ—認証機能部 3 9で構成さ れている。 上記空間開始機能部 3 1の働きは、 空間を立ち上げることであり、 空間 は管理資格を持ったユーザ一が立ち上げるようになつている。 図 8に示す ように、 クライアント装置 3からのイベントによって動作が始まり、 ある クライアン ト装置 3からの空間立ち上げ要求 (ステップ S 1 ) によってサ —バ装置 1が呼ばれ、 サーバ装置 1側では、 ステップ S 2に示すように立 ち上げを要求したユーザ一が管理資格を持っているか否かをパスヮ一ドで チエツクする。 ステップ S 3で該ユーザーが管理資格を有している場合に は、 ステップ S 4に移行して、 指定されたディ レク トリに格納されている 空間デ一夕によって空間 (S O M A空間) を立ち上げる。 Next, the details of the functional units 22 to 26 of the server basic control library 16 will be described. The basic space control function unit 22 of the server basic control library 16 has a configuration as shown in Fig. 7, and the space start function unit 31, the space participation function unit 32, the space exit function unit 33, Space end function 34, space attribute setting function 35, space attribute inquiry function 36, space area inquiry function 37, administrator authentication function 38, and user-authentication function 39 It is configured. The function of the space start function section 31 is to start up a space, and the space is designed to be started up by a user who has management qualifications. As shown in FIG. 8, the operation is started by an event from the client device 3, the server device 1 is called by a space start request (step S 1) from a certain client device 3, and on the server device 1 side, As shown in step S2, a check is made with a passcode to determine whether the user who has requested startup has administrative qualifications. If the user has the management qualification in step S3, the process proceeds to step S4, and the space (SOMA space) is set up according to the space stored in the designated directory. .
図 7に示す空間参加機能部 3 2は、 立ち上がつている空間にユーザーを 参加させる機能を備えているものであり、 図 9に示すように、 あるクライ アン ト装置 3からのイベントによって駆動される。 すなわち、 あるユーザ —のクライアン ト装置 3から、 ステップ S I 1 に示すように空間参加要求 がサーバ装置 1へ送られる。 サーバ装置 1 は、 ステップ S 1 2に示すよう に、 指定された空間が立ち上がっているかどうかを調べると共に、 参加を 要求したユーザーが参加資格を持っているかどうかをパスヮードでチェッ クをする。  The space participation function unit 32 shown in FIG. 7 has a function to allow the user to participate in the space where the user is standing up, and is driven by an event from a certain client device 3 as shown in FIG. Is done. That is, a space participation request is sent from a certain client apparatus 3 to the server apparatus 1 as shown in step SI 1. As shown in step S12, the server device 1 checks whether the designated space is up and checks with a password whether the user who has requested participation has participation qualification.
このチ ックの結果、 参加資格があれば (ステップ S 1 3 ) 、 ステップ S 1 4に示すように空間にユーザーを参加させる。 また、 サーバ装置 1か らクライアント装置 3へ、 参加した空間の空間モデル及び制御モデルのデ —夕を送る (ステップ S 1 5 ) 。  As a result of this check, if there is eligibility to participate (step S13), the user is allowed to participate in the space as shown in step S14. Further, the server device 1 sends a data of the space model and the control model of the participating space to the client device 3 (step S15).
図 7に示す空間退場機能部 3 3は、 空間に参加しているユーザーを空間 から退場させるものであり、 図 1 0に示すように、 退場しようするユーザ —のクライアント装置 3からのイベントにより駆動される。 すなわち、 現 在空間に参加しているユーザーが退場する場合には、 そのユーザーのクラ イアント装置 3から空間退場要求がサーバ装置 1へ送られ (ステップ S 2 1 ) 、 サーバ装置 1では、 ステップ S 2 2で退場要求有りとして、 ステツ プ S 2 3に示すように空間から要求のあったユーザーを退場させる。 そし て、 サーバ装置 1 は、 空間から退場した旨を要求があったユーザーのクラ イア ン ト装置 3に送って通知し (ステップ S 2 4 ) 、 空間退場要求を送つ たクライアン ト装置 3はその旨を受信する (ステップ S 2 5 ) 。 The space exit function section 33 shown in FIG. 7 is for letting the user participating in the space exit the space, and is driven by an event from the client device 3 of the user who wants to exit as shown in FIG. Is done. That is, when a user participating in the current space leaves, a space exit request is sent from the user's client device 3 to the server device 1 (step S2). 1) The server device 1 determines that there is an exit request in step S22, and exits the user who has made a request from the space as shown in step S23. Then, the server device 1 sends a notification that the user has left the space to the client device 3 of the user who has requested the notification (step S24), and the client device 3 that has sent the space exit request returns to the client device 3. The fact is received (step S25).
図 7における空間終了機能部 3 4は、 立ち上がつている空間を終了させ るものであり、 管理ユーザ一からのイベン トにより駆動される。 図 1 1 は この空間を終了する場合のフローチヤ一トを示し、 管理資格を持ったユー ザ一からのクライアント装置 3から空間終了要求がサーバ装置 1へ送られ る (ステップ S 3 1 ) 。 サーバ装置 1 は、 空間終了要求を受けてステップ S 3 2においてユーザ一が管理資格を持っているかどうかをパスヮードで チェックする。 チェックの結果、 管理資格を持っている場合には、 ステツ プ S 3 3で参加者全員に退場を指示する信号を各クライアン ト装置 3へ送 り、 ステップ S 3 4で空間を閉じる。  The space end function unit 34 in FIG. 7 is for terminating the rising space, and is driven by an event from the management user. FIG. 11 shows a flowchart for ending this space, and a space ending request is sent from the client device 3 having the management qualification to the server device 1 from the client device 3 (step S31). Upon receiving the space end request, the server device 1 checks in step S32 whether the user has a management qualification with a password. As a result of the check, if the user has the management qualification, a signal for instructing all participants to leave is sent to each client device 3 in step S33, and the space is closed in step S34.
次に、 図 7に示す空間属性設定機能部 3 5は、 空間が持つ属性の設定を 行なう ものであり、 属性としては壁の色などがある。  Next, the space attribute setting function unit 35 shown in FIG. 7 is for setting the attributes of the space, and the attributes include the color of the wall.
また、 空間属性問い合わせ機能部 3 6は、 空間が持つ属性の問い合わせ に応答する機能を有するものであり、 クライアント装置 3からの要求によ り駆動される。 属性としては、 壁の色などである。  The space attribute inquiry function unit 36 has a function of responding to an inquiry about the attribute of the space, and is driven by a request from the client device 3. Attributes include the color of the wall.
さらに、 空間エリア問い合わせ機能部 3 7は、 空間が持つエリアの情報 の問い合わせに応答する機能を備えているものであり、 クライアン ト装置 3からの要求によって呼ばれると、 空間オブジェク トで定義してあるエリ ァの情報を要求元のクライアン ト装置 3へ返送する。  Further, the space area inquiry function unit 37 has a function of responding to an inquiry about information on an area held by the space, and is defined by a space object when called by a request from the client device 3. The area information is returned to the requesting client device 3.
図 7に示す空間基本制御機能部 2 2の管理者認証機能部 3 8は、 ユーザ —が管理者かどうかの認証を行なう機能を備えているものであり、 図 8や 図 1 1 に示す空間の立ち上げ、 あるいは空間の終了の処理中に呼ばれて駆 動される。 この管理者認証機能部 3 8の動作は、 図 8及び図 1 1 に示す空 間の立ち上げや、 空間の終了を行なうユーザーが管理資格を持っているか どうかを送信されてきたパスヮ一ドでチェックを行なうものである。 The administrator authentication function unit 38 of the basic space control function unit 22 shown in FIG. 7 has a function of authenticating whether or not the user is an administrator. The space shown in FIG. 8 and FIG. During the startup of the space or the end of the space Be moved. The operation of the administrator authentication function unit 38 is performed by the pass-word sent as to whether the user who starts up the space or ends the space shown in FIGS. 8 and 11 has the management qualification. Check is performed.
また、 ユーザー認証機能部 3 9は、 ユーザーの認証を行なうものであり 、 空間参加処理中に呼ばれて駆動される。 このユーザ一認証機能部 3 9の 動作は、 図 9に示す空間への参加を申請したユーザ一が、 参加資格を持つ ているかどうかをパスヮードでチェックを行なうものである。  The user authentication function unit 39 performs user authentication, and is called and driven during the space participation process. The operation of the user authentication function section 39 checks with a password whether the user who has applied for participation in the space shown in FIG. 9 has the participation qualification.
図 1 2は、 図 6に示すサーバ基本制御ライブラリ一 1 6の中のオブジェ ク 卜基本制御機能部 2 3の機能的なプロック図を示し、 ォブジェク ト追加 機能部 4 2、 オブジェク ト削除機能部 4 3、 オブジェク ト属性設定機能部 4 4、 ォブジヱク ト属性問い合わせ機能部 4 5、 及びォブジヱク ト操作機 能部 4 6等で構成されている。  FIG. 12 shows a functional block diagram of the object basic control function part 23 in the server basic control library 16 shown in FIG. 6, and includes an object addition function part 42 and an object deletion function part. 43, an object attribute setting function unit 44, an object attribute inquiry function unit 45, and an object operation function unit 46.
上記オブジェク ト追加機能部 4 2は、 空間内にあるオブジェク トをサ一 バ装置 1の管理下に追加する機能を備えており、 上述の空間の立ち上げ処 理中に空間を構成するために呼ばれたり、 あるいは、 あるクライアント装 置 3からの要求によって呼ばれたりした場合のィベントによって駆動され このオブジェク ト追加機能部 4 2の動作は、 サーバ装置 1が空間に存在 しているオブジェク トを管理できるように登録を行なうものであり、 必要 なマネージャー (後述する位置マネ一ジャー、 セキュリティマネージャ一 など) にも登録を行なう。  The object addition function section 42 has a function of adding an object in the space under the control of the server device 1 and is configured to configure the space during the space start-up process described above. The object addition function unit 42 is driven by an event when the server device 1 is called or when called by a request from a certain client device 3. It is registered so that it can be managed, and it is also registered with necessary managers (such as the location manager and security manager described later).
図 1 2に示すオブジェク ト削除機能部 4 3は、 空間内にあるオブジェク トをサーバ装置 1 の管理下から削除する機能を有するものであり、 空間終 了処理中あるいは、 クライアン ト装置 3からの要求によって駆動される。 このオブジェク ト削除機能部 4 3の動作は、 サーバ装置 1 に登録されて いるォブジ ク トを削除するものであり、 また、 必要なマネ一ジャーの機 能としても削除する。 The object deletion function unit 43 shown in FIG. 12 has a function of deleting an object in the space from the control of the server device 1. The object deletion function unit 43 is in the process of terminating the space or from the client device 3. Driven by request. The operation of this object deletion function unit 43 is registered in the server 1 This is to delete the objects that have been deleted, and also delete them as necessary manager functions.
次に、 図 1 2に示すォブジ ク ト厲性設定機能部 4 について説明する と、 このオブジェク ト厲性設定機能部 4 4は、 オブジェク トが持つ属性の 設定を行なうものであり、 クライアン ト装置 3からの要求によって駆動さ れ  Next, the object property setting function section 4 shown in FIG. 12 will be described. The object property setting function section 44 sets attributes of the object, Driven by request from 3
オブジェク ト属性設定機能部 4 4の動作は、 マネージャーに対して、 属 性設定変更が許されているかを問い合わせた後、 オブジェク 卜の属性を設 定する。 この属性としては、 名前、 色、 オブジェク ト固有の状態などがあ 。  The operation of the object attribute setting function unit 44 sets the attribute of the object after asking the manager whether the attribute setting change is permitted. These attributes include name, color, and object-specific state.
図 1 2に示すォブジヱク ト属性問い合わせ機能部 4 5は、 上記のォブジ ェク ト属性設定機能部 4 4で設定したォブジェク 卜が持つ属性の問い合わ せに応答するものであり、 クライアン ト装置 3からの要求によって駆動さ れる。  The object attribute inquiry function unit 45 shown in FIG. 12 responds to the inquiry about the attribute of the object set in the object attribute setting function unit 44 described above. Driven by request from
このォブジヱク ト厲性問い合わせ機能部 4 5の動作は、 マネージャーに 対して、 属性の問い合わせが許されているかを問い合わせた後、 オブジェ ク 卜の属性を要求してきたクライアン ト装置 3に返送する。 属性としては 、 名前、 色、 ォブジェク ト固有の伏態などである。  The operation of the object property inquiry function unit 45 inquires of the manager whether or not the attribute inquiry is permitted, and then returns the object attribute to the client device 3 which has requested the attribute. Attributes include name, color, object-specific obscureness, and the like.
次に、 オブジェク ト操作機能部 4 6は、 マネージャーに登録されている ォブジェク トの操作を行なうものであり、 クライアント装置 3からの要求 によって駆動される。 また、 サーバ装置 1からも駆動される。  Next, the object operation function unit 46 operates an object registered in the manager, and is driven by a request from the client device 3. It is also driven from the server device 1.
このォブジヱク ト操作機能部 4 6の動作は、 マネ一ジャーに対して、 そ の操作が許されているかを問い合わせた後、 オブジェク トのメッツ ドを呼 び出す。  The operation of the object operation function part 46 calls the manager of the object after inquiring the manager whether the operation is permitted.
図 1 3は、 図 6に示すサーバ基本制御ライブラリー 1 6の中のアバター 基本制御機能部 2 4の機能的なブロック図を示し、 アバ夕一追加機能部 5 0、 アバター削除機能部 5 1、 アバター制御停止機能部 5 2、 アバター制 御停止解除機能部 5 3、 アバ夕一属性設定機能部 5 4、 及びアバター属性 問い合わせ機能部 5 5等で構成されている。 FIG. 13 shows a functional block diagram of the avatar basic control function unit 24 in the server basic control library 16 shown in FIG. 0, avatar deletion function 51, avatar control stop function 52, avatar control stop release function 53, avatar attribute setting function 54, avatar attribute inquiry function 55, etc. I have.
上記アバター追加機能部 5 0は、 空間に参加したアバ夕一 Aをサーバ装 置 1の管理下に追加する機能を有するものであり、 クライアント装置 3か らの空間参加要求によって駆動される。  The avatar addition function section 50 has a function of adding the avatar A that has joined the space under the management of the server device 1, and is driven by a space participation request from the client device 3.
このアバター追加機能部 5 0の動作は、 サーバ装置 1が空間に参加して いるアバ夕一 Aを管理できるように登録を行なうものであり、 マネージャ 一の機能としても登録を行なう。  The operation of the avatar addition function unit 50 is for registering the server device 1 so as to manage the avatar A participating in the space, and also performs the registration as a function of the manager.
また、 図 1 3に示すアバ夕一削除機能部 5 1 は、 空間から退場したアバ ター Aをサーバ装置 1の管理下から削除するものであり、 クライアン ト装 置 3からの空間退場要求により駆動される。  The avatar deletion function unit 51 shown in FIG. 13 deletes the avatar A who has left the space from the control of the server device 1 and is driven by a space exit request from the client device 3. Is done.
アバター削除機能部 5 1の動作は、 サーバ装置 1に登録されているアバ 夕一 Aを削除するものであり、 マネ一ジャーからも削除する。  The operation of the avatar deletion function unit 51 is to delete the avatar A registered in the server device 1 and also delete it from the manager.
さらに、 図 1 3に示すアバ夕一制御停止機能部 5 2は、 アバター Aの制 御を停止するものであり、 サーバ装置 1 によって呼ばれて駆動される。 こ のアバター制御停止機能部 5 2の動作は、 アバター Aの状態を制御停止状 態に変更し、 クライアント装置 3からの制御ができないようにするもので める。  Further, an avatar control stop function unit 52 shown in FIG. 13 stops control of the avatar A, and is called and driven by the server device 1. The operation of the avatar control stop function section 52 changes the state of the avatar A to the control stop state so that control from the client device 3 cannot be performed.
アバター制御停止解除機能部 5 3は、 アバター制御停止機能部 5 2によ つてアバ夕一 Aの制御を停止したアバ夕一の制御を再開するものであり、 サーバ装置 1によって呼ばれて駆動される。 このアバ夕一制御停止解除機 能部 5 3の動作は、 アバ夕一 Aの状態を制御可能状態に変更し、 クライア ン ト装置 3からの制御を可能にするものである。  The avatar control stop release function unit 53 restarts the control of the avatar A, which has stopped the control of the avatar A by the avatar control stop function unit 52, and is called and driven by the server device 1. You. The operation of the avatar control stop canceling function unit 53 changes the state of the avatar A to a controllable state and enables control from the client device 3.
次に、 図 1 3に示すアバ夕一属性設定機能部 5 4は、 アバター Aの属性 を設定するものであり、 クライアン ト装置 3からの要求によって駆動され る。 このアバター属性設定機能部 5 4の動作は、 マネージャ一に対して、 属性設定変更が許されているかどうかを問い合わせた後、 アバター Aの属 性を設定する。 この属性としては、 名前や姿 (gi f ファイル) などである ο Next, the avatar attribute setting function unit 54 shown in FIG. 13 sets the attribute of the avatar A, and is driven by a request from the client device 3. You. The operation of the avatar attribute setting function unit 54 sets the attribute of the avatar A after inquiring of the manager whether the attribute setting change is permitted. These attributes include name and appearance (gif file), etc. ο
アバター属性問い合わせ機能部 5 5は、 アバター Aの属性の問い合わせ に応答するものであり、 クライアン ト装置 3からの要求によって駆動され る。 この了バター属性問い合わせ機能部 5 5の動作は、 マネージャーに対 して、 属性の問い合わせが許されているかを問い合わせた後、 アバター A の属性を要求してきたクライアント装置 3に返すものである。 この属性と しては、 名前や姿 (g i f ファイル) などである。  The avatar attribute inquiry function unit 55 responds to an inquiry about the attribute of the avatar A, and is driven by a request from the client device 3. The operation of the butter attribute inquiring function unit 55 is to inquire of the manager whether the inquiring of the attribute is permitted, and then return to the client device 3 which has requested the attribute of the avatar A. These attributes include name and appearance (gif file).
図 1 4は、 図 6に示す近傍空間抽出機能部 2 5の機能的なブロック図を 示し、 この近傍空間抽出機能部 2 5は、 クライアン ト装置 3が参加してい る空間の中で、 そのクライアン ト装置 3 (ユーザー) に関係のある部分 ( 空間、 ォブジヱク ト、 アバ夕一 A ) だけを切り出す機能を備えている。  FIG. 14 shows a functional block diagram of the neighborhood space extraction function unit 25 shown in FIG. 6, and the neighborhood space extraction function unit 25 is located in the space where the client device 3 participates. It has a function to cut out only the part (space, object, Ava Yu A) related to the client device 3 (user).
この近傍空間抽出機能部 2 5は、 近傍オブジェク ト抽出機能部 5 7にて 構成されている。 そして、 近傍ォブジェク ト抽出機能部 5 7は、 クライア ン ト装置 3に送る、 アバ夕一 Aのそばにあるオブジェク トや、 他のアバ夕 一 Aを選択するものである。  The neighborhood space extraction function unit 25 is constituted by a neighborhood object extraction function unit 57. Then, the nearby object extraction function unit 57 selects an object to be sent to the client device 3 near the avatar A or another avatar A.
図 1 5は上記近傍オブジェク ト抽出機能部 5 7の制御フロー図を示し、 クライアン ト装置 3から視界更新要求がサーバ装置 1へ送られ (ステップ S 4 1 ) 、 サーバ装置 1では、 ステップ S 4 2で視界更新有りとして、 ス テツプ S 4 3に進む。 そして、 クライアント装置 3の視界を更新する際に 、 アバター Aのそばにあって、 アバター Aに影響を与えるオブジェク トを 選択し (ステップ S 4 3 ) 、 さらに、 ステップ S 4 4で選択したオブジェ ク トをクライアント装置 3へ送る。  FIG. 15 shows a control flow diagram of the neighborhood object extraction function unit 57. A view update request is sent from the client device 3 to the server device 1 (step S41), and the server device 1 executes step S4. In step 2, it is determined that the view is updated, and the process proceeds to step S43. When the field of view of the client device 3 is updated, an object that is located near the avatar A and affects the avatar A is selected (step S43), and the object selected in step S44 is further selected. To the client device 3.
図 1 6は、 図 6に示すモデル変換機能部 2 6の機能的なブロック図を示 し、 このモデル変換機能部 2 6は、 クライアント装置 3のユーザ一の視点 から見た、 そのクライアント装置 3に送付する擬似 3次元サイバースべ一 スモデルを生成する機能を備えているものである。 FIG. 16 shows a functional block diagram of the model conversion function unit 26 shown in FIG. The model conversion function unit 26 has a function of generating a pseudo three-dimensional cyber base model to be sent to the client device 3 from the viewpoint of the user of the client device 3.
このモデル変換機能部 2 6は、 広角静止画像作成機能部 5 9にて構成さ れている。 そして、 この広角静止画像作成機能部 5 9は、 クライアン ト装 置 3のユーザーの視点から見た空間、 オブジェク トの広角静止画像を作成 するものである。  The model conversion function unit 26 is composed of a wide-angle still image creation function unit 59. The wide-angle still image creation function unit 59 creates a wide-angle still image of a space or object viewed from the viewpoint of the user of the client device 3.
図 1 7は上記広角静止画像作成機能部 5 9の制御フロー図を示し、 クラ イアン 卜装置 3から視界更新要求がサーバ装置 1へ送られ (ステップ S 5 1 ) 、 サーバ装置 1では、 ステップ S 5 2で視界更新有りとして、 ステツ プ S 5 3に進む。 そして、 クライアント装置 3の視界を更新する際に、 ク ライアン ト装置 3の視点から見える空間全体の広角静止画像を作成し (ス テツプ S 5 3 ) 、 ステップ S 5 4で作成した広角静止画像を要求のあった クライアント装置 3へ送付する。  FIG. 17 shows a control flow diagram of the wide-angle still image creation function unit 59. A view update request is sent from the client device 3 to the server device 1 (step S51). In step 52, it is determined that the view is updated, and the process proceeds to step S53. Then, when updating the field of view of the client device 3, a wide-angle still image of the entire space visible from the viewpoint of the client device 3 is created (step S53), and the wide-angle still image created in step S54 is created. It is sent to the requested client device 3.
図 1 8は、 図 4に示すデータベース 1 1内に格納されている空間ライブ ラ リー 1 7の機能的なプロック図を示すものであり、 この空間ライブラリ — 1 7は、 S O M Aモデルに基づくサイバースペースを構築するのに必要 な空間を実現するためのクラスライブラリ一である。 空間ライブラリ一 1 7に格納される空間 (Space)は、 V R M L 1 . 0で記述できる 3次元空間 を、 高水準で記述したものに、 空間が持つ機能を埋め込んだものである。 この空間ライブラリー 1 7は、 図 1 8に示すように、 オープン空間機能 部 6 1 と、 ルーム空間機能部 6 2とで構成されている。 オープン空間機能 部 6 1 において、 地面のみが存在しており、 無限に広がっている空間が持 つ属性は、 地面の色、 背景がある。 また、 ルーム空間機能部 6 2において は、 四方及び上方が壁で囲まれており、 その外には出ることができないよ うになつている。 そして、 この空間が持つ属性は、 部屋の大きさ (幅、 奥 行き、 高さ) 、 壁の色がある。 Fig. 18 shows a functional block diagram of the spatial library 17 stored in the database 11 shown in Fig. 4. This spatial library — 17 is a cyberspace based on the SOMA model. It is one of the class libraries for realizing the space required to construct the. The space stored in the space library 17 is a high-level description of the three-dimensional space that can be described by VRML 1.0, with the functions of the space embedded. As shown in FIG. 18, the space library 17 includes an open space function unit 61 and a room space function unit 62. In the open space function unit 61, only the ground exists, and the attributes of the space that extends infinitely include the ground color and the background. Also, in the room space function part 62, the four sides and the upper part are surrounded by walls, and it is impossible to get out of it. It's swelling. The attributes of this space include the size of the room (width, depth, height) and the color of the walls.
図 1 9は、 図 4に示すデータベース 1 1内に格納されている共通ォブジ ェク トライブラリー 1 8の機能的なプロック図を示し、 共通ォブジヱク ト ライブラリー 1 8は、 ブラッ トフォーム上で共通に利用することを目的と して予め用意しているオブジェク 卜のライブラリ一群である。  FIG. 19 shows a functional block diagram of the common object library 18 stored in the database 11 shown in FIG. 4, and the common object library 18 is shared on the platform. This is a group of object libraries prepared in advance for the purpose of use.
この共通オブジェク トライブラリー 1 8は、 図 1 9に示すように、 ビデ ォォブジェク ト 6 5、 ビデオカメラオブジェク ト 6 6、 黒板ォブジェク ト 6 7、 マイク ' スピーカオブジェク ト 6 8、 チャッ トオブジェク ト 6 9、 机、 椅子、 書棚、 口ッカ一等のオフィスォブジヱク ト 7 0、 H T M Lォブ ジェク ト 7 1、 及びコンピュータオブジェク ト 7 2等で構成されている。 なお、 ここでは、 例として上記の 8つのォブジェク ト 6 5〜 7 2を用 意しているが、 これらに限られるものではなく、 サイバースペースに必要 なオブジェク トを更に加えるようにしても良い。  As shown in Fig. 19, the common object library 18 has a video object 65, a video camera object 66, a blackboard object 67, a microphone 'speaker object 68, and a chat object 69. It consists of office objects 70, such as desks, chairs, bookcases, and mouthpieces, HTML objects 71, and computer objects 72. Here, the above-mentioned eight objects 65 to 72 are provided as an example, but the present invention is not limited to these, and objects necessary for cyberspace may be further added.
また、 これらのォブジヱク ト 6 5〜7 2は、 S O M A空間を物理的に制 約したり、 また、 クライアン ト装置 3 (ユーザ一) 同士のコミュニケーシ ョンの道具として直接操作されるオブジェク トである。  Further, these objects 65 to 72 are objects that are physically operated to directly restrict the SOMA space or as a communication tool between the client devices 3 (one user). is there.
以下、 具体的に各オブジェク トについて説明する。 ビデオォブジヱク ト 6 5は、 予め用意された M P E G (Mot i on P i cture Expert s Group)形式の 動画像を再生する機能を有しているものであり、 図 2 0に示すような構成 となっている。  Hereinafter, each object will be specifically described. The video object 65 has a function of reproducing a moving image in a previously prepared MPEG (Motion Picture Experts Group) format, and has a configuration as shown in FIG. I have.
すなわち、 このビデオオブジェク ト 6 5は、 再生準備機能部 7 6、 再生 開始機能部 7 7、 一時停止機能部 7 8、 停止機能部 7 9、 終了機能部 8 0 、 途中参加機能部 8 1、 及び退場機能部 8 2等で構成されている。  That is, the video object 65 is composed of a playback preparation function section 76, a playback start function section 77, a pause function section 78, a stop function section 79, an end function section 80, a midway participation function section 81, And the exit function section.
再生準備機能部 7 6は、 あるクライアント装置 3からの使用開始指示を イベン トとして駆動されるものであり、 図 2 1 に示すように、 クライアン ト装置 3から使用開始要求がサーバ装置 1へ送られる (ステップ S 6 1 ) 。 サーバ装置 1は、 該クライアン 卜装置 3から指定されたビデオオブジェ ク トを各クライアント装置 3に M P E G形式ファイルで送信し (ステップ S 6 2 ) 、 クライアン ト装置 3側でビデオを再生するための準備ができる ようにする。 そして、 クライアン ト装置 3側の処理としては、 M P E G再 生のためのウインドウを起動する (ステップ S 6 3 ) 。 The playback preparation function unit 76 receives a use start instruction from a certain client device 3. It is driven as an event, and a use start request is sent from the client device 3 to the server device 1 as shown in FIG. 21 (step S61). The server device 1 transmits the video object specified by the client device 3 to each client device 3 in an MPEG format file (step S62), and prepares for the client device 3 to play back the video. To be able to Then, as processing on the client device 3 side, a window for MPEG playback is started (step S63).
再生開始機能部 7 7は、 クライアント装置 3からの再生開始指示をィべ ン トとして駆動されるものであり、 図 2 1 に示すように、 ステップ S 6 3 でウインドウを起動したクライアント装置 3から再生開始要求がサーバ装 置 1へ送られる (ステップ S 6 4 ) 。 サーバ装置 1側では、 クライアン ト 装置 3からの再生開始の指示を受け取り、 各クライアン ト装置 3へ再生開 始の指示を送る (ステップ S 6 5 ) 。 そして、 再生開始の指示をサーバ装 置 1から受け取ったクライアント装置 3は、 M P E G画像の再生を開始す る (ステップ S 6 6 ) 。  The playback start function unit 77 is driven by using a playback start instruction from the client device 3 as an event. As shown in FIG. 21, the client device 3 that has started the window in step S63, A playback start request is sent to server device 1 (step S64). The server device 1 receives the playback start instruction from the client device 3 and sends a playback start instruction to each client device 3 (step S65). Then, the client device 3 which has received the instruction to start the reproduction from the server device 1 starts the reproduction of the MPEG image (step S66).
図 2 0に示すビデオォブジヱク ト 6 5内の一時停止機能部 7 8は、 クラ イアン ト装置 3からの一時停止の要求により画像の再生を一時的に停止さ せるものである。 図 2 2に示すように、 クライアント装置 3がステップ S 7 1で画像を再生中に、 サーバ装置 1へ一時停止要求を送る (ステップ S 7 2 ) 。 あるクライアント装置 3から一時停止の指示を受け取ったサーバ 装置 1 は、 ステップ S 7 3で各クライアン ト装置 3に一時停止の指示を送 ο  The pause function unit 78 in the video object 65 shown in FIG. 20 is for temporarily stopping the reproduction of an image in response to a pause request from the client device 3. As shown in FIG. 22, the client device 3 sends a pause request to the server device 1 while reproducing the image in step S71 (step S72). The server device 1 that has received the suspension instruction from a certain client device 3 sends a suspension instruction to each client device 3 in step S73.
そして、 各クライアント装置 3は、 ステップ S 7 3で M P E G画像の再 生を一時停止する。 このあと、 ステップ S 7 6で示すサーバ装置 1からの 再生開始指示がなければ一時停止の状態を維持し、 サーバ装置 1から再生 開始の指示を受けた場合にはステップ S 7 5からステップ S 7 7に進み、 続きの画像を再生する。 Then, in step S73, each client device 3 temporarily stops playing the MPEG image. Thereafter, if there is no reproduction start instruction from the server device 1 shown in step S76, the paused state is maintained, and if the reproduction start instruction is received from the server device 1, steps S75 to S7 are executed. Go to 7, Play the next image.
図 2 0に示す停止機能部 7 9は、 クライアント装置 3で再生している画 像の停止を行なうものであり、 図 2 3に示すように、 クライアン ト装置 3 からの停止指示要求がサーバ装置 1へ送られる (ステップ S 8 1 ) 。 サ一 バ装置 1 は、 あるクライアント装置 3からの停止の指示を受け取り、 各ク ライアン ト装置 3へ停止の指示を送る (ステップ S 8 2 ) 。  The stop function unit 79 shown in FIG. 20 is for stopping an image being played back on the client device 3, and as shown in FIG. 23, a stop instruction request from the client device 3 is sent to the server device. It is sent to 1 (step S81). The server apparatus 1 receives a stop instruction from a certain client apparatus 3 and sends a stop instruction to each client apparatus 3 (step S82).
各クライアン ト装置 3は、 サーバ装置 1からの停止指示を受け取り次第 、 M P E G画像の停止を行なう (ステップ S 8 3 ) 。 このあと、 ステップ S 8 で示すサーバ装置 1から再生開始指示を受け取らなければ、 画像の 停止を続行し、 サーバ装置 1から再生開始指示を受け取った場合には、 ス テツプ S 8 5からステップ S 8 6に移行して、 最初から画像を再生する。 終了機能部 8 0は、 クライアント装置 3のウィン ドウを終了させるもの であり、 図 2 4に示すように、 あるクライアン ト装置 3から終了要求をサ —バ装置 1へ送る (ステップ S 9 1 ) 。 サーバ装置 1 は、 あるクライアン ト装置 3から終了の指示を受信し、 各クライアン ト装置 3に M P E G再生 のウィン ドウを閉じるための指示を送る (ステップ S 9 2 ) 。  Upon receiving the stop instruction from the server device 1, each client device 3 stops the MPEG image (step S83). Thereafter, if the reproduction start instruction is not received from the server device 1 shown in step S8, the stop of the image is continued, and if the reproduction start instruction is received from the server device 1, the steps S85 to S8 are executed. Go to step 6 and play the image from the beginning. The termination function unit 80 terminates the window of the client device 3, and sends a termination request from a certain client device 3 to the server device 1 as shown in FIG. 24 (step S91). . The server device 1 receives an end instruction from a certain client device 3 and sends an instruction to close the MPEG playback window to each client device 3 (step S92).
サーバ装置 1から終了指示を受信した各クライアント装置 3は、 M P E G再生のためのウインドウを終了する (ステップ S 9 3 ) 。  Each client device 3 that has received the end instruction from the server device 1 ends the window for MPEG playback (step S93).
ビデオォブジヱク ト 6 5の途中参加機能部 8 1 においては、 あるクライ アン ト装置 3 (ユーザ—) が新規に参加する信号をサーバ装置 1が受信し たことでィベン 卜として駆動される。 このィベントにより動作送信するク ライアン トテーブルにクライアント装置 3 (ユーザー) を追加し、 クライ アン ト装置 3のビデオォブジヱク トに M P E G画像と、 再生開始位置を送 る  The midway participation function unit 81 of the video object 65 is driven as an event when the server device 1 receives a signal to which a certain client device 3 (user) newly participates. The client device 3 (user) is added to the client table to be transmitted by this event, and the MPEG image and the playback start position are sent to the video object of the client device 3.
新規に参加したクライアン ト装置 3は、 M P E G再生のためのウイン ド ゥを作成し、 上記と同様に M P E G画像を再生する。 The newly joined client device 3 is a window for MPEG playback. Create ゥ and play the MPEG image in the same way as above.
また、 退場機能部 8 2では、 クライアントが退場する場合にィベン 卜と して駆動され、 送信するクライアン トテーブルからクライアン ト装置 3を 削除する。 この場合、 クライアント装置 3側の処理は特にない。  Also, the exit function unit 82 is driven as an event when the client exits, and deletes the client device 3 from the client table to be transmitted. In this case, there is no particular processing on the client device 3 side.
次に、 図 1 9に示す共通オブジェク トライブラリー 1 8のビデオカメラ ォブジヱク ト 6 6について説明する。 このビデオ力メラォブジヱク ト 6 6 は、 クライアン ト装置 3側のビデオ力メラから撮像した画像を J P E G CJ oi n t Phot ographi c Exper t s Group)形式で保存し、 それを順次に表示する 機能を有し、 また録画した画像を再生する機能を有している。  Next, the video camera object 66 of the common object library 18 shown in FIG. 19 will be described. This video camera project 66 has a function of saving an image captured from the video camera on the client device 3 side in a JPEG Joint Photographic Expert Group (JPEG) format and displaying the images sequentially. It also has the function of playing back recorded images.
このビデオ力メラオブジェク ト 6 6は、 図 2 5に示すように、 カメラ準 備機能部 8 5、 カメラ画像配信機能部 8 6、 カメラ視覚変更機能部 8 7、 録画開始機能部 8 8、 録画停止機能部 8 9、 再生開始機能部 9 0、 再生一 時停止機能部 9 1、 再生停止機能部 9 2、 終了機能部 9 3、 途中参加機能 部 9 4、 及び退場機能部 9 5等で構成されている。  As shown in Fig. 25, this video camera object 66 has a camera preparation function 85, a camera image distribution function 86, a camera vision change function 87, a recording start function 88, a recording function Stop function section 89, playback start function section 90, playback pause function section 91, playback stop function section 92, end function section 93, midway participation function section 94, exit function section 95, etc. It is configured.
上記カメラ準備機能部 8 5は、 各クライアン ト装置 3に録画のためのゥ ィン ドウを表示させるものであり、 図 2 6に示すように、 クライアント装 置 3からのビデオカメラの使用開始要求をィベントとして駆動される。 す なわち、 クライアント装置 3から使用開始要求がサーバ装置 1へ送られる (ステップ S 1 0 0 ) 。 サーバ装置 1は、 クライアント装置 3から送られ た使用開始要求に基づき、 あるクライアント装置 3から指定されたビデオ 力メラオブジェク 卜が稼働可能かどうかをチヱックし、 稼働可能ならば、 各クライアント装置 3に録画再生のためのウインドウを表示するための指 示を送信する (ステップ S 1 0 1 ) 。  The camera preparation function unit 85 causes a window for recording to be displayed on each client device 3, and as shown in FIG. 26, a request to start using a video camera from the client device 3. Driven as an event. That is, a use start request is sent from the client device 3 to the server device 1 (step S100). The server device 1 checks whether or not the video camera object specified by a certain client device 3 is operable based on the use start request sent from the client device 3, and if it is operable, sends a message to each client device 3. An instruction to display a window for recording and playback is transmitted (step S101).
サーバ装置 1から指示を受けた各クライアント装置 3は、 錄画のための ウィンドウを表示し (ステップ S 1 0 2 ) 、 さらに、 ウィンドウを表示し た旨の通知を各クライアン ト装置 3からサーバ装置 1へ送信する (ステツ ブ S 1 0 3 ) 。 Each client device 3 receiving the instruction from the server device 1 displays a window for planning (step S102), and further notifies the client device 3 that the window has been displayed from each client device 3 to the server device. Send to 1 Bus S103).
カメラ画像配信機能部 8 6では、 クライアン ト装置 3からの画像受信信 号をィベントとして駆動されて、 動作する。 すなわち、 図 2 6のステツプ S 1 0 3で示すように、 各クライアント装置 3からウィンドウが表示でき た通知を受信し、 サーバ装置 1ではビデオ力メラから撮像した J P E G画 像を一定時間間隔で受信し、 図 2 7のステップ S 1 1 0に示すように、 ク ライアン ト装置 3から画像受信要求があった場合に、 この受信した J P E G画像を各クライアント装置 3へ一定時間間隔で送信する (ステップ S 1 1 1 ) 。 そして、 ステップ S 1 1 3に示すように、 あるクライアン ト装置 3から録画終了の通知がく るまでこの処理が繰り返される。  The camera image distribution function unit 86 operates by being driven by the image reception signal from the client device 3 as an event. That is, as shown in step S103 of FIG. 26, a notification that a window has been displayed is received from each client device 3, and the server device 1 receives a JPEG image captured from the video camera at fixed time intervals. Then, as shown in step S110 of FIG. 27, when there is an image reception request from the client device 3, the received JPEG image is transmitted to each client device 3 at a fixed time interval (step S110). S 1 1 1). Then, as shown in step S113, this process is repeated until a certain client device 3 notifies the end of recording.
—方、 サーバ装置 1から J P E G画像を受信した各クライアント装置 3 は、 ステップ S 1 1 2に示すように、 J P E G画像の表示が行なわれる。 図 2 5に示すカメラ視覚変更機能部 8 7は、 クライアント装置 3からの 視覚変更指示をィベントとして駆動されるものであり、 あるクライアン ト 装置 3からビデオカメラの視覚の変更の指示をサーバ装置 1側で受信し、 その内容に応じた視覚変更データをクライアン ト装置 3へ送信する。 視覚 変更データを受信したクライアント装置 3は、 そのデータに応じて付属し ているビデオカメラの視覚の変更制御が行なわれる。 この場合、 該クライ アント装置 3側の処理は特になく、 視覚の変更はサーバ装置 1側から直接 制御されるようになっている。  On the other hand, each client device 3 that has received the JPEG image from the server device 1 displays the JPEG image as shown in step S112. The camera visual change function unit 87 shown in FIG. 25 is driven by a visual change instruction from the client device 3 as an event. An instruction to change the visual sense of the video camera from a certain client device 3 is sent to the server device 1. Side, and transmits the visual change data corresponding to the content to the client device 3. Upon receiving the visual change data, the client device 3 controls the visual change of the attached video camera according to the data. In this case, there is no particular processing on the client device 3 side, and the change in the visual sense is directly controlled from the server device 1 side.
次に、 ビデオカメラォブジヱク ト 6 6の録画開始機能部 8 8の動作につ いて説明する。 この録画開始機能部 8 8は、 クライアント装置 3からのク ライアン ト装置 3からの録画開始指示をィベン トとして駆動されるもので あり、 図 2 8に示すように、 ステップ S 1 2 0で、 あるクライアント装置 3から録画開始要求がサーバ装置 1へ送られる。 サーバ装置 1は、 このク ライアント装置 3からの録画開始の指示を受信し、 ビデオカメラから撮像 した画像を J P E G形式で時系列的にサーバ装置 1 に保存する (ステップ S 1 2 1 ) o Next, the operation of the recording start function unit 88 of the video camera object 66 will be described. This recording start function unit 88 is driven by a recording start instruction from the client device 3 from the client device 3 as an event. As shown in FIG. 28, in step S120, A recording start request is sent from a certain client device 3 to the server device 1. Server device 1 Receiving a recording start instruction from the client device 3 and storing the images taken from the video camera in the server device 1 in chronological order in the JPEG format (step S122) o
そして、 ステップ S 1 2 2に示すように、 保存した J P E G画像を各ク ライアン ト装置 3へ送信する。 各クライアント装置 3側は、 受信した J P E G画像を表示する (ステップ S 1 2 3) 。  Then, as shown in step S122, the stored JPEG image is transmitted to each client device 3. Each client device 3 displays the received JPEG image (step S123).
また、 図 2 5に示す録画停止機能部 8 9は、 あるクライアント装置 3か らの録画停止指示をィベントとして駆動されるものであり、 図 2 8に示す ように、 あるクライアント装置 3から録画停止要求がサーバ装置 1へ送ら れ (ステップ S 1 2 4 ) 、 あるクライアント装置 3から録画停止の指示を 受け取ったサーバ装置 1 は、 ビデオ力メラから撮影した画像の保存を停止 する (ステップ S 1 2 5) 。  The recording stop function unit 89 shown in FIG. 25 is driven by a recording stop instruction from a certain client device 3 as an event, and as shown in FIG. The request is sent to the server device 1 (step S124), and the server device 1 that has received the recording stop instruction from the certain client device 3 stops storing the image captured from the video camera (step S12). Five) .
なお、 この場合、 クライアント装置 3側の処理は特にない。  In this case, there is no particular processing on the client device 3 side.
さらに、 図 2 5に示すビデオカメラオブジェク ト 6 6の録画再生機能部 9 0は、 あるクライアント装置 3からの再生開始指示をィベントとして駆 動し、 動作する。 すなわち、 図 2 9に示すように、 ステップ S 1 3 1で、 あるクライアント装置 3から再生開始要求がサーバ装置 1へ送られ、 サー バ装置 1はこの再生開始の指示を受け取り、 各クライアント装置 3へ J P EG形式で時系列的に送信する (ステップ S 1 3 2) 。  Furthermore, the recording / playback function unit 90 of the video camera object 66 shown in FIG. 25 operates by driving a playback start instruction from a certain client device 3 as an event. That is, as shown in FIG. 29, in step S131, a playback start request is sent from a certain client device 3 to the server device 1, and the server device 1 receives this playback start instruction, and The data is transmitted in time series in the JPEG format (step S1 32).
サーバ装置 1から受信した各クライアント装置 3は、 J PE G画像を表 示する (ステップ S 1 3 3) 。  Each client device 3 received from the server device 1 displays the JPEG image (step S133).
また、 再生一時停止機能部 9 1では、 あるクライアント装置 3からの一 時停止指示をィベントとして駆動される。 すなわち、 図 2 9のステップ S 1 3 4において、 あるクライアント装置 3から一時停止要求がサーバ装置 1へ送られ、 この一時停止要求を受け取ったサーバ装置 1 は、 各クライア ント装置 3に一時停止の指示を送る (ステップ S 1 3 5 ) 。 そして、 一時停止の指示を受信した各クライアン ト装置 3は、 再生を一 時停止する (ステップ S 1 3 6 ) 。 また、 このあと、 ステップ S 1 3 7に 示すように再生開始指示をクライアン 卜装置 3からサーバ装置 1が受け取 つた場合には、 一時停止後の続きの画像をサーバ装置 1が各クライアント 装置 3へ送る (ステップ S 1 3 8 ) 。 各クライアン ト装置 3側は、 サーバ 装置 1から受信した J P E G画像を表示する (ステップ S 1 3 9 ) 。 The playback pause function unit 91 is driven by a pause instruction from a client device 3 as an event. That is, in step S134 of FIG. 29, a suspension request is sent from a certain client device 3 to the server device 1, and the server device 1 that has received the suspension request sends a suspension request to each client device 3. Send instructions (step S135). Then, each of the client devices 3 receiving the pause instruction pauses the reproduction (step S136). After that, when the server device 1 receives a reproduction start instruction from the client device 3 as shown in step S137, the server device 1 sends the continued image to the respective client devices 3 after the pause. Send it (Step S138). Each client device 3 displays the JPEG image received from the server device 1 (step S139).
次に、 図 2 5に示すビデオカメラォブジヱク ト 6 6の再生停止機能部 9 2及び終了機能部 9 3の動作について説明する。 再生俘止機能部 9 2は、 あるクライアン 卜装置 3からの停止指示をィベントとして駆動されるもの であり、 図 3 0に示すように、 あるクライアン ト装置 3から再生停止要求 がサーバ装置 1へ送られる (ステップ S 1 4 1 ) 。 このクライアン ト装置 3から停止の指示を受信したサーバ装置 1 は、 各クライアント装置 3に再 生停止の指示を送信する (ステップ S 1 4 2 ) 。 そして、 サーバ装置 1か ら停止の指示を受け取った各クライアント装置 3は、 再生を停止する (ス テツプ S 1 4 3 ) 。  Next, the operation of the playback stop function unit 92 and the end function unit 93 of the video camera object 66 shown in FIG. 25 will be described. The rehabilitation captive function section 92 is driven by a stop instruction from a certain client device 3 as an event. As shown in FIG. 30, a reactivation stop request from a certain client device 3 is sent to the server device 1. Sent (step S144). The server device 1 that has received the stop instruction from the client device 3 transmits a playback stop instruction to each client device 3 (step S144). Then, each of the client devices 3 which has received the stop instruction from the server device 1 stops the reproduction (step S144).
このあと、 ステップ S 1 4 に示すように、 あるクライアント装置 3か ら再生開始要求がサーバ装置 1 へ送られた場合には、 サーバ装置 1 は、 最 初からの画像を各クライアント装置 3へ送信する (ステップ S 1 4 5 ) 。 そして、 各クライアン ト装置 3は、 J P E G画像を表示する (ステップ S 1 6 ) o  Thereafter, as shown in step S14, when a reproduction start request is sent from a certain client device 3 to the server device 1, the server device 1 transmits the image from the beginning to each client device 3. Yes (step S 1 4 5). Then, each client device 3 displays a JPEG image (step S16) o
また、 終了機能部 9 3は、 あるクライアント装置 3からの終了指示をィ ベン トとして駆動、 動作するものであり、 図 3 0のステップ S 1 4 7に示 すように、 あるクライアン ト装置 3から終了要求がサーバ装置 1へ送られ ると、 終了の指示を受け取ったサーバ装置 1は、 各クライアン ト装置 3に 録画再生のためのウインドウを閉じるための指示を送る (ステップ S 1 4 8 ) o サーバ装置 1からウィン ドウを閉じるための ft示を受信した各クライア ント装置 3は、 録画再生のためのウィンドウを終了する (ステップ S 1 9 ) o The end function unit 93 is driven and operated by using an end instruction from a certain client device 3 as an event, and as shown in step S147 of FIG. 30, a certain client device 3 When a termination request is sent to the server device 1 from the server device 1, the server device 1 that has received the termination instruction sends an instruction to close the window for recording and playback to each client device 3 (Step S148) o Each of the client devices 3 receiving the ft indication for closing the window from the server device 1 closes the window for recording and playback (step S 19) o
次に、 図 2 5に示すビデオカメラォブジヱク ト 6 6の途中参加機能部 9 4について説明すると、 あるクライアント装置 3が新規に参加するという イベン トにて駆動される。 サーバ装置 1側は、 送信するクライアントテー ブルにクライアン トを追加し、 新規のクライアントのビデオカメラォブジ ェク 卜へ J P E G画像を送信する。 そして、 新規に参加したクライアン ト (クライアン ト装置 3 ) は、 上述と同様に録画のためのウィンドウを表示 し、 受信した J P E G画像を表示するようになっている。  Next, a description will be given of the mid-participating function unit 94 of the video camera object 66 shown in FIG. 25. The client device 3 is driven by an event of newly joining. The server device 1 adds a client to the client table to be transmitted, and transmits the JPEG image to the video camera object of the new client. Then, the newly participating client (client device 3) displays a window for recording in the same manner as described above, and displays the received JPEG image.
また、 退場機能部 9 5は、 クライアント (クライアン ト装置 3 ) が退場 するというイベントにて駆動されるものであり、 サーバ装置 1側は、 送信 するクライアン トテーブルからクライアントを削除する。 この場合、 退場 するクライアン ト側の処理は特にない。  The leaving function unit 95 is driven by an event that the client (client device 3) leaves, and the server device 1 deletes the client from the client table to be transmitted. In this case, there is no special processing on the client side to leave.
図 3 1 は、 図 1 9に示す共通オブジェク トライブラリー 1 8の中の黒板 オブジェク ト 6 7の機能的なブロック図を示すものであり、 この黒板ォブ ジェク ト 6 7は、 ペイント形式で、 文字、 絵、 図形を描画することができ るオブジェク トである。  FIG. 31 shows a functional block diagram of the blackboard object 67 in the common object library 18 shown in FIG. 19, and the blackboard object 67 is in a paint format. An object that can draw characters, pictures, and figures.
図 3 1に示すように、 この黒板ォブジ ク ト 6 7は、 黒板準備機能部 1 0 1、 描画開始指示機能部 1 0 2、 描画配信機能部 1 0 3、 描画終了配信 機能部 1 0 4、 黒板オブジェク ト終了機能部 1 0 5、 途中参加機能部 1 0 6、 及び退場機能部 1 0 7等で構成されている。  As shown in FIG. 31, the blackboard object 67 includes a blackboard preparation function unit 101, a drawing start instruction function unit 102, a drawing distribution function unit 103, and a drawing end distribution function unit 104. It consists of a blackboard object ending function unit 105, a halfway participation function unit 106, and a leaving function unit 107.
次に、 上記黒板準備機能部 1 0 1 について説明する。 この黒板準備機能 部 1 0 1 は、 あるクライアント装置 3からの使用開始要求をィベン 卜とし て駆動、 動作するものであり、 図 3 2のステップ S 1 5 1 に示すように、 あるクライアント装置 3から使用開始要求がサーバ装置 1へ送られる。 サ —バ装置 1 は、 黒板オブジェク トを使用することをクライアント装置 3か ら受信し、 指定された黒板オブジェク トの最終描画状態を各クライアン ト 装置 3に送信する (ステップ S 1 5 2 ) 。 Next, the blackboard preparation function unit 101 will be described. The blackboard preparation function unit 101 drives and operates a use start request from a certain client device 3 as an event. As shown in step S 151 of FIG. Sends a use start request to the server device 1. Sa —The server device 1 receives the use of the blackboard object from the client device 3 and transmits the final drawing state of the specified blackboard object to each client device 3 (step S 15 2).
各クライアント装置 3は、 黒板のためのウィンドウを表示し、 受信した 描画状態を表示する (ステップ S 1 5 3 ) 。 このとき、 クライアント装置 3は描画開始の指示だけができる状態にし、 描画のオブジェク トは使用不 可の状態にしておく。  Each client device 3 displays a window for the blackboard and displays the received drawing status (step S153). At this time, the client device 3 is set to a state in which only a drawing start instruction can be given, and a drawing object is set to a disabled state.
次に、 描画開始指示機能部 1 0 2においては、 図 3 2のステップ S 1 5 に示すように、 あるクライアント装置 3からの描画開始要求がサーバ装 置 1へ送られ、 サーバ装置 1では、 あるクライアント装置 3から描画開始 を受信すると共に、 他のクライアント装置 3へは描画不可の指示を送信す る (ステップ S 1 5 5 ) 。 そして、 描画開始要求を送信したクライアン ト 装置 3は、 描画のためのオブジェク トを使用可にし (ステップ S 1 5 6 ) 、 他のクライアン ト装置 3は描画開始を使用不可の状態にする (ステップ S 1 5 7 ) o  Next, in the drawing start instruction function unit 102, as shown in step S15 in FIG. 32, a drawing start request from a certain client device 3 is sent to the server device 1, and in the server device 1, A drawing start is received from a certain client device 3, and an instruction to disable drawing is transmitted to another client device 3 (step S155). Then, the client device 3 that has transmitted the drawing start request enables the object for drawing (step S156), and disables the drawing start of the other client devices 3 (step S156). S 1 5 7) o
黒板ォブジヱク ト 6 7の描画配信機能部 1 0 3は、 クライアン ト装置 3 からの描画画像の受信によって駆動されるものであり、 図 3 3のステップ S 1 6 1 に示すように、 クライアン ト装置 3から描画画像をサーバ装置 1 へ送信し、 サーバ装置 1側は、 描画可能のクライアン ト装置 3の描画状態 を一定間隔で受信し、 時系列的に保存する (ステップ S 1 6 2 ) 。 また、 サーバ装置 1 はステップ S 1 6 3に示すように、 他のクライアン 卜装置 3 へ描画状態を送信する。  The drawing distribution function unit 103 of the blackboard object 67 is driven by receiving a drawing image from the client device 3, and as shown in step S 161 of FIG. 33, the client device The drawing image is transmitted to the server device 1 from the server device 3, and the server device 1 receives the drawing state of the client device 3 capable of drawing at regular intervals and saves the drawing state in a time-series manner (step S1662). Further, the server device 1 transmits the drawing state to the other client devices 3 as shown in step S163.
他のクライアン ト装置 3は、 サーバ装置 1から受信した描画を表示する (ステップ S 1 6 4 ) 。  The other client device 3 displays the drawing received from the server device 1 (Step S164).
また、 描画終了配信機能部 1 0 4は、 あるクライアント装置 3からの描 画終了指示をィベントとして駆動し、 図 3 3のステップ S 1 6 5に示すよ うに、 あるクライアント装置 3から描画終了要求がサーバ装置 1へ送られ る。 該クライアント装置 3から描画終了要求を受信したサーバ装置 1は、 他のクライアント装置 3へ描画可能の指示を送信する (ステップ S 1 6 6Further, the drawing end distribution function unit 104 drives a drawing end instruction from a certain client device 3 as an event, as shown in step S165 of FIG. 33. As described above, a drawing end request is sent from a certain client device 3 to the server device 1. Upon receiving the drawing end request from the client device 3, the server device 1 transmits an instruction to enable drawing to the other client devices 3 (step S166)
) o ) o
サーバ装置 1から描画可能の指示を受信したクライアン 卜装置 3は、 描 画開始のに使用可となり、 描画のためのオブジェク トは使用不可になる。 さらに、 黒板ォブジヱク ト終了機能部 1 0 5は、 あるクライアント装置 3から終了要求がサーバ装置 1へ送られ (ステップ S 1 7 1 ) 、 駆動され る。 サーバ装置 1側では、 あるクライアント装置 3から終了の指示を受け 取り、 各クライアント装置 3に黒板オブジェク トのためのウィンドウを閉 じるための指示を送信する (ステップ S 1 7 2 ) 。  The client device 3 that has received the drawing enable instruction from the server device 1 becomes usable for starting drawing, and the object for drawing becomes unavailable. Further, the blackboard object termination function unit 105 is driven by a termination request sent from a certain client device 3 to the server device 1 (step S171). The server device 1 receives an end instruction from a certain client device 3 and transmits an instruction to close the window for the blackboard object to each client device 3 (step S 172).
サーバ装置 1から指示を受信した各クライアン ト装置 3は、 黒板ォブジ ヱク トのためのウィンドウを終了する (ステップ S 1 7 2 ) 。  Each client device 3 that has received the instruction from the server device 1 ends the window for the blackboard object (step S172).
次に、 黒板ォブジヱク ト 6 7の途中参加機能部 1 0 6は、 クライアン ト 装置 3 (クライアント) が新規に参加することでイベントが生じ、 動作さ れる。 送信するクライアントテーブルにクライアン トを追加し、 クライア ン 卜に黒板オブジェク トへ描画可能状態と、 描画画像を送信する。  Next, the midway participation function unit 106 of the blackboard object 67 is operated when a client device 3 (client) newly participates. The client is added to the client table to be transmitted, and the drawing state and the drawing image to the blackboard object are transmitted to the client.
クライアント装置 3側の処理としては、 黒板のためのウインドウを表示 し、 描画画像を表示する。 また、 使用可能状態をセッ 卜する。  As processing on the client device 3 side, a window for a blackboard is displayed, and a drawing image is displayed. Also set the usable state.
さらに、 退場機能部 1 0 7は、 クライアントが退場することで、 ィベン 卜が生じ、 動作される。 すなわち、 送信するクライアントテーブルからク ライアントを削除する。 なお、 クライアント装置 3側の処理は特にない。 図 1 9に示す共通ォブジヱク トライブラリー 1 8内のマイク ' スピーカ オブジェク ト 6 8の機能的なプロック図を図 3 5に示す。 このマイク - ス ピ一力オブジェク ト 6 8は、 マイクから録音した音声を保存し、 それを順 次に再生する機能を備え、 また、 録音した音声を再生する機能を併せ持つ ている。 Further, the exit function unit 107 is operated by the event that the client exits. That is, the client is deleted from the client table to be transmitted. There is no particular processing on the client device 3 side. A functional block diagram of the microphone's speaker object 68 in the common object library 18 shown in FIG. 19 is shown in FIG. This microphone- The speed object 68 has a function of storing the sound recorded from the microphone and reproducing the sound sequentially, and also has a function of reproducing the recorded sound.
このマイク · スピーカオブジェク 卜 6 8は、 図 3 5に示すように、 マイ ク準備機能部 1 1 1、 音声配信機能部 1 1 2、 録音開始機能部 1 1 3、 録 音停止機能部 1 1 4、 再生開始機能部 1 1 5、 再生一時停止機能部 1 1 6 、 停止機能部 1 1 7、 終了機能部 1 1 8、 途中参加機能部 1 1 9、 及び退 場機能部 1 2 0等で構成されている。  As shown in Fig. 35, the microphone / speaker object 68 includes a microphone preparation function unit 111, a voice distribution function unit 112, a recording start function unit 113, and a recording stop function unit 111. 4, Play start function 1 1 5, Play pause function 1 1 6, Stop function 1 1 7, End function 1 1 8, Participation function 1 1 9 and Exit function 1 2 0, etc. It is composed of
まず、 マイク準備機能部 1 1 1から説明すると、 あるクライアント装置 3からの使用開始指示により駆動される。 すなわち、 図 3 6に示すように 、 あるクライアン ト装置 3から使用開始要求がサーバ装置 1へ送られ (ス テツプ S 1 8 1 ) 、 サーバ装置 1側では、 あるクライアント装置 3から指 定されたマイクが稼働可能かどうかをチェックし、 稼働可能ならば、 その クライアン ト装置 3のマイクを使用可能にする (ステップ S 1 8 2 ) 。 ま た、 他のクライアント装置 3にはマイクを使用不可の指示を送信すると共 に、 他のクライアント装置 3のスピーカが使えるように指示を送信する ( ステップ S 1 8 3 ) 。  First, from the microphone preparation function unit 111, the microphone preparation function unit 111 is driven by a use start instruction from a certain client device 3. That is, as shown in FIG. 36, a use start request is sent from a certain client device 3 to the server device 1 (step S181), and on the server device 1 side, a request from a certain client device 3 is specified. It is checked whether or not the microphone is operable, and if operable, the microphone of the client device 3 is enabled (step S182). In addition, an instruction to disable the microphone is transmitted to the other client device 3 and an instruction is transmitted so that the speaker of the other client device 3 can be used (step S183).
サーバ装置 1へ使用開始要求を送ったクライアン ト装置 3は、 マイク稼 働の準備及びスピーカの準備をし (ステップ S 1 8 4 ) 、 これらの準備が できたことを該クライアント装置 3はサーバ装置 1 に送信する (ステップ S 1 8 5 ) o  The client device 3 that has sent the use start request to the server device 1 prepares for the microphone operation and the speaker (step S184), and confirms that these preparations have been completed. Send to 1 (Step S 1 8 5) o
図 3 5に示すマイク · スピーカォブジヱク ト 6 8の音声配信機能部 1 1 2は、 クライアント装置 3からの音声受信指示をィベントとして駆動され るものである。 図 3 7に示すように、 ステップ S 1 9 1でクライアン ト装 置 3から音声受信要求がサーバ装置 1へ送られ、 サーバ装置 1 は各クライ アン ト装置 3から録音した音声を一定時間間隔で受信し、 各クライアント 装置 3に送信する (ステップ S 1 9 2 ) 。 この処理は、 クライアン ト装置 3からの終了の通知があるまで繰り返される。 The voice distribution function unit 112 of the microphone / speaker object 68 shown in FIG. 35 is driven by using a voice reception instruction from the client device 3 as an event. As shown in FIG. 37, in step S191, a client device 3 sends a voice reception request to the server device 1, and the server device 1 transmits the voice recorded from each client device 3 at regular time intervals. Receive each client The data is transmitted to the device 3 (Step S192). This process is repeated until there is a notice of termination from the client device 3.
一方、 サーバ装置 1から音声を受信したクライアン ト装置 3は、 音声の 再生を行なうことになる (ステップ S 1 9 3 ) 。  On the other hand, the client device 3 that has received the audio from the server device 1 reproduces the audio (step S193).
図 3 8はマイク · スピーカオブジェク ト 6 8の録音開始機能部 1 1 3と 録音停止機能部 1 1 4の制御フロー図を示すものである。 録音開始機能部 1 1 3は、 クライアント装置 3からの錄音開始指示をイベントとして駆動 される。 ステップ S 2 0 1 に示すように、 クライアント装置 3から録音開 始要求がサーバ装置 1へ送られ、 サーバ装置 1 は、 あるクライアン ト装置 3から録音開始の指示を受信し、 送信された音声を時系列的にサーバ装置 1 に保存する (ステップ S 2 0 2 ) 。 また、 保存した音声を各クライアン ト装置 3に送信する (ステップ S 2 0 3 ) 。  FIG. 38 shows a control flow diagram of the recording start function unit 113 and the recording stop function unit 114 of the microphone / speaker object 68. The recording start function unit 113 is driven by a sound start instruction from the client device 3 as an event. As shown in step S201, a recording start request is sent from the client device 3 to the server device 1, and the server device 1 receives a recording start instruction from a certain client device 3, and receives the transmitted voice. The data is stored in the server device 1 in chronological order (step S202). Further, the stored voice is transmitted to each client device 3 (step S203).
サーバ装置 1から音声を受信した各クライアン ト装置 3は、 音声を再生 する (ステップ S 2 0 4 ) 。  Each client device 3 that has received the audio from the server device 1 reproduces the audio (step S204).
また、 録音停止機能部 1 1 4は、 クライアン ト装置 3からの録音停止指 示によりィベン トとして駆動される。 図 3 8のステップ S 2 0 5に示すよ うに、 あるクライアント装置 3から録音停止要求がサーバ装置 1へ送られ 、 サーバ装置 1は、 クライアン ト装置 3から録音停止の指示を受け取り、 音声の保存を停止する (ステップ S 2 0 6 ) 。  The recording stop function section 114 is driven as an event by a recording stop instruction from the client device 3. As shown in step S205 of FIG. 38, a recording stop request is sent from a certain client device 3 to the server device 1, and the server device 1 receives the recording stop instruction from the client device 3, and stores the voice. Is stopped (step S206).
この場合、 クライアント装置 3側の処理は、 特にない。  In this case, there is no particular processing on the client device 3 side.
図 3 9は、 マイク ·スピーカオブジェク ト 6 8の再生開始機能部 1 1 5 と再生一時停止機能部 1 1 6の制御動作を示すフロー図である。 再生開始 機能部 1 1 5は、 クライアン ト装置 3からの再生開始指示により駆動され るものであり、 図 3 9のステップ S 2 1 1に示すように、 あるクライアン ト装置 3から再生開始要求がサーバ装置 1へ送られる。 サーバ装置 1 はク ライアント装置 3からの再生開始の指示を受け取り、 各クライアント装置 3に音声を時系列的に送信する (ステップ S 2 1 2 ) 。 FIG. 39 is a flowchart showing a control operation of the reproduction start function unit 115 and the reproduction pause function unit 116 of the microphone / speaker object 68. The playback start function unit 115 is driven by a playback start instruction from the client device 3, and as shown in step S211 of FIG. 39, a playback start request is issued from a certain client device 3. Sent to server device 1. Server device 1 receives the instruction to start playback from client device 3 and sends it to each client device. The voice is transmitted in time series to 3 (step S2 1 2).
サーバ装置 1からの音声を受信した各クライアント装置 3は、 音声を再 生する (ステップ S 2 1 3 ) 。  Each of the client devices 3 receiving the voice from the server device 1 reproduces the voice (step S213).
また、 再生一時停止機能部 1 1 6は、 あるクライアン 卜装置 3からの再 生一時停止の指示を受け取ることで、 駆動される。 図 3 9のステップ S 2 1 4に示すように、 あるクライアント装置 3から再生一時停止要求がサー バ装置 1 へ送られ、 サーバ装置 1 は、 このクライアント装置 3からの再生 一時停止の指示を受け取り、 各クライアント装置 3に一時停止の指示を送 る (ステップ S 2 1 5 ) 。  The playback pause function section 116 is driven by receiving a playback pause instruction from a certain client device 3. As shown in step S2114 in FIG. 39, a playback pause request is sent from a certain client device 3 to the server device 1, and the server device 1 receives the playback pause instruction from the client device 3. Then, a pause instruction is sent to each client device 3 (step S215).
サーバ装置 1から一時停止の指示を受け取った各クライアント装置 3は 、 音声の再生を一時停止させる (ステップ S 2 1 6 ) 。  Each of the client devices 3 that has received the pause instruction from the server device 1 pauses the sound reproduction (step S216).
このあと、 ステップ S 2 1 7に示すように、 あるクライアン ト装置 3か ら再生開始要求がサーバ装置 1へ送られると、 再生開始指示を受信したサ ーバ装置 1 は、 続きの音声を各クライアント装置 3へ送信する (ステップ S 2 1 8 ) 。 そして、 サーバ装置 1から続きの音声を受け取った各クライ アン ト装置 3は、 続きの音声を再生し、 最終の音声を再生した後に、 音声 を停止させる (ステップ S 2 1 9 ) 。  Thereafter, as shown in step S217, when a playback start request is sent from a certain client device 3 to the server device 1, the server device 1 that has received the playback start instruction outputs the subsequent audio to each of the devices. The message is transmitted to the client device 3 (step S218). Then, each of the client devices 3 receiving the continuous audio from the server device 1 plays the continuous audio, stops the audio after playing the final audio (step S219).
図 3 5に示すマイク · スピーカオブジェク ト 6 8の停止機能部 1 1 7の 制御動作は図 4 0に示すようになつており、 この停止機能部 1 1 7は、 ク ライアント装置 3からの停止指示をィベントとして駆動されるようになつ ている。 図 4 0のステップ S 2 2 1 に示すように、 あるクライアン ト装置 3から停止要求がサーバ装置 1 へ送られ、 サーバ装置 1はクライアント装 置 3からの停止の指示を受信し、 各クライアン ト装置 3に停止の指示を送 る (ステップ S 2 2 2 ) 。 サーバ装置 1からの停止指示を受信した各クラ イアント装置 3は音声の停止を行なう (ステップ S 2 2 3 ) 。  The control operation of the stop function section 117 of the microphone / speaker object 68 shown in Fig. 35 is as shown in Fig. 40. This stop function section 117 stops the client device 3 from stopping. The instruction is driven as an event. As shown in step S2221 in FIG. 40, a stop request is sent from a certain client device 3 to the server device 1, and the server device 1 receives the stop instruction from the client device 3, and receives a stop instruction from each client device 3. A stop instruction is sent to the device 3 (step S222). Each of the client devices 3 receiving the stop instruction from the server device 1 stops the voice (step S223).
また、 このあと、 ステップ S 2 2 4に示すように、 あるクライアント装 置 3から再生開始要求がサーバ装置 1へ送られた場合には、 この再生開始 の指示を受けたサーバ装置 1は、 最初から音声を各クライアン ト装置 3へ 送信する (ステップ S 2 2 5 ) 。 そして、 各クライアント装置 3は、 サ一 バ装置 1からの音声を最初から受信し、 最終の音声を再生した後に停止さ せる (ステップ S 2 2 6 ) 。 After that, as shown in step S224, a client device When the playback start request is sent from the device 3 to the server device 1, the server device 1 that has received the playback start instruction transmits a sound to each client device 3 from the beginning (step S2 25). . Then, each client device 3 receives the sound from the server device 1 from the beginning, stops the reproduction after reproducing the final sound (step S226).
図 4 1 は、 マイク ' スピーカオブジェク ト 6 8の終了機能部 1 1 8の制 御動作を示すフロー図であり、 この終了機能部 1 1 8は、 クライアン ト装 置 3からの終了指示により駆動されるものである。 図 4 1のステップ S 2 2 7に示すように、 あるクライアン ト装置 3から終了要求がサーバ装置 1 へ送られ、 サーバ装置 1側では、 クライアント装置 3からの終了の指示を 受け取り、 マイク ·スピーカを閉じる指示を各クライアント装置 3へ送信 する (ステップ S 2 2 8 ) 。  FIG. 41 is a flowchart showing the control operation of the end function section 118 of the microphone 'speaker object 68. The end function section 118 is driven by an end instruction from the client device 3. Is what is done. As shown in step S227 of FIG. 41, a termination request is sent from a certain client device 3 to the server device 1, and the server device 1 receives the termination instruction from the client device 3, and receives a microphone / speaker. Is transmitted to each client device 3 (step S228).
サーバ装置 1から終了指示を受信した各クライアント装置 3は、 マイク の錄音停止、 スピーカの停止を行なう (ステップ S 2 2 9 ) 。  Each client device 3 that has received the end instruction from the server device 1 stops the sound of the microphone and the speaker (step S229).
次に、 図 3 5に示すマイク · スピーカオブジェク ト 6 8の途中参加機能 部 1 1 9は、 クライアント (クライアント装置 3 ) が新規に参加するのを イベントとして駆動されるものである。 新規のクライアント装置 3からの 参加希望要求を受け取ったサーバ装置 1 は、 送信するクライアントテープ ルにクライアントを追加し、 クライアント装置 3のスピーカオブジェク ト へ音声を送信する。  Next, the participant function unit 119 of the microphone / speaker object 68 shown in FIG. 35 is driven as an event that a client (client device 3) newly participates. The server device 1 that has received the request for participation from the new client device 3 adds the client to the client table to be transmitted, and transmits audio to the speaker object of the client device 3.
新規のクライアント装置 3は、 上述と同様にスピーカを準備して、 音声 の再生処理を行なう。  The new client device 3 prepares a speaker in the same manner as described above, and performs audio reproduction processing.
また、 マイク ' スピーカオブジェク ト 6 8の退場機能部 1 2 0は、 参加 しているクライアン ト (クライアント装置 3 ) が退場することで、 駆動さ れるものである。 あるクライアント装置 3から退場する旨の信号を受信し たサーバ装置 1 は、 送信するクライアントテーブルから退場するクライア ントを削除する。 The exit function section 120 of the microphone's speaker object 68 is driven by the exit of the participating client (client device 3). The server device 1 that has received the signal to exit from a certain client device 3 sends the exiting client table from the client table to be transmitted. Delete the event.
なお、 この場合、 退場するクライアン ト装置 3の処理は特にない。  Note that, in this case, there is no particular processing of the client device 3 that leaves.
図 4 2は、 図 1 9に示す共通オブジェク トライブラ リー 1 8の中のチヤ ッ トォブジヱク ト 6 9の機能的なブロック図を示すものである。 このチヤ ッ トオブジェク ト 6 9は、 テキストでクライアント (クライアン ト装置 3 ) 同士が通信する機能を有しているものである。  FIG. 42 shows a functional block diagram of the chat object 69 in the common object library 18 shown in FIG. The chat object 69 has a function of communicating between clients (client devices 3) by text.
このチヤッ トォブジヱク ト 6 9は、 図 4 2に示すように、 開始機能部 1 2 3、 テキスト配信機能部 1 2 4、 チヤッ トォブジェク ト終了機能部 1 2 5、 途中参加機能部 1 2 6、 及び退場機能部 1 2 7等で構成されている。 まず、 開始機能部 1 2 3から説明すると、 この開始機能部 1 2 3は、 ク ライアント装置 3からの使用開始指示をィベントとして駆動される。 図 4 3のステップ S 2 3 1 に示すように、 あるクライアント装置 3から使用開 始要求がサーバ装置 1へ送られ、 クライアント装置 3からの使用開始指示 を受信したサーバ装置 1側は、 各クライアント装置 3にチヤッ ト開始指示 を送信する (ステップ S 2 3 2 ) 。  As shown in FIG. 42, the chat object 69 includes a start function unit 123, a text distribution function unit 124, a chat object end function unit 125, a mid-participation function unit 126, and The exit function section consists of 127, etc. First, the start function unit 123 will be described. The start function unit 123 is driven by a use start instruction from the client device 3 as an event. As shown in step S 2 3 1 in FIG. 4 3, a use start request is sent from a certain client device 3 to the server device 1, and the server device 1 having received the use start instruction from the client device 3 sends the request to each client device 3. A chat start instruction is transmitted to the device 3 (step S232).
サーバ装置 1からチヤ ッ ト開始指示を受信した各クライアント装置 3は 、 チャ ッ トのためのウィン ドウを表示し、 テキスト入力表示可能にする ( ステップ S 2 3 3 ) o  Each client device 3 that has received the chat start instruction from the server device 1 displays a window for chatting and enables text input display (step S2 33) o
テキスト配信機能部 1 2 4は、 クライアント装置 3からのテキストを受 信することで駆動される。 図 4 3のステップ S 2 3 4に示すように、 ある クライアン ト装置 3からテキストがサーバ装置 1へ送信され、 サーバ装置 1側では、 あるクライアント装置 3からテキストを受信し、 この受信テキ ストを他のクライアン ト装置 3にクライアント名を付加して送信する (ス テツブ S 2 3 5 ) 。  The text distribution function unit 124 is driven by receiving text from the client device 3. As shown in step S2334 of FIG. 43, a text is transmitted from a certain client device 3 to the server device 1, and the server device 1 receives the text from a certain client device 3, and transmits the received text. The client name is added to the other client device 3 and transmitted (step S235).
そして、 サーバ装置 1からテキストを受信した他のクライアン ト装置 3 は、 ウィン ドウにテキストを表示する (ステップ S 2 3 6 ) 。 Then, the other client devices 3 that received the text from the server device 1 Displays text in a window (step S2336).
図 4 2に示すチヤッ トォブジェク ト 6 9のチヤッ トォブジェク ト終了機 能部 1 2 5は、 クライアント装置 3からのテキストが送信が無くなつたこ とで、 駆動され、 サーバ装置 1側はチヤッ トォブジェク トを終了する。 この場合、 クライアン ト装置 3側の処理は特にない。  The chat object ending function section 125 of the chat object 69 shown in Fig. 42 is driven by the fact that the text from the client device 3 is no longer transmitted, and the server device 1 executes the chat object. finish. In this case, there is no particular processing on the client device 3 side.
また、 チヤッ トォブジェク ト 6 9の途中参加機能部 1 2 6は、 クライア ン ト (クライアント装置 3 ) が新規に参加する旨の信号をサーバ装置 1側 が受信したことで駆動されるものである。 この場合、 サーバ装置 1側は、 送信するクライアン トテ一ブルにクライアン トを追加し、 クライアン トの チヤッ トォブジェク 卜へ最新のテキストを送信する。  The midway participation function section 126 of the chat object 69 is driven by the server device 1 receiving a signal indicating that a client (client device 3) newly participates. In this case, the server device 1 adds the client to the client table to be transmitted, and transmits the latest text to the client's chat object.
新規に参加したクライアント (クライアン ト装置 3 ) は、 チャッ トのゥ ィンドウを表示し、 サーバ装置 1側から送られてきたテキストを表示する ο  The newly joined client (client device 3) displays the window of the chat and displays the text sent from the server device 1 ο
また、 チヤッ トォブジェク ト 6 9の退場機能部 1 2 7は、 参加している クライアン ト (クライアント装置 3 ) が退場することで駆動され、 あるク ライアント装置 3から退場する旨の信号を受信したサーバ装置 1側は、 送 信するクライアントテーブルから退場するクライアントを削除する。  The exit function section 127 of the chat object 69 is driven by the participating client (client device 3) exiting, and receives a signal from the client device 3 to leave the server. The device 1 deletes the leaving client from the client table to be sent.
この場合の退場するクライアント装置 3側の処理は特にない。  In this case, there is no particular processing on the client device 3 side that leaves.
図 1 9に示す共通オブジェク トライブラリー 1 8内のオフィスオブジェ ク ト 7 0は、 空間に臨場感を持たせるための、 家具的なオブジェク トであ り、 それぞれ大きさ、 色などの属性を持つ。 また、 オフィスオブジェク ト 7 0は、 アバ夕一 Aが動く ことのできる空間を物理的に制約する機能を持 つている。  The office objects 70 in the common object library 18 shown in Fig. 19 are furniture-like objects that give a sense of realism to the space, and each has attributes such as size and color. . In addition, the office object 70 has a function of physically constraining the space in which Aba Yuichi A can move.
また、 H T M Lオブジェク ト 7 1 は、 H T M Lファイルを送信する機能 を持っているものであり、 クライアントが指定した H T M Lファイルを送 信する。 そして、 サーバ装置 1から受信したクライアント装置 3では、 受 信した H T M Lフアイルを表示するようになっている。 The HTML object 71 has a function of transmitting an HTML file, and transmits an HTML file specified by a client. Then, the client device 3 received from the server device 1 The HTML file you received is displayed.
さらに、 コンピュータオブジェク ト 7 2は、 コンピュータオブジェク ト のエミュレー夕機能を提供するものであり、 クライアント装置 3が指定し たコンピュータォブジヱク トの端末タイプとホスト名等の情報を送信する 機能を持っている。 クライアン ト装置 3側の処理として、 受信した端末夕 イブとホスト名等から指定したコンピュータのエミ ュレ一夕を表示するよ うになっている。  Further, the computer object 72 provides a function of emulating the computer object, and has a function of transmitting information such as the terminal type and host name of the computer object specified by the client device 3. have. As a process on the client device 3 side, an emulation of the computer specified from the received terminal event and the host name is displayed.
図 4 4は、 図 4に示すマネ一ジャーライブラリー 1 9の機能的なプロッ ク図を示しており、 このマネージャ一ライブラリー 1 9は、 空間内の秩序 を管理するためのマネージャーを存在させるために設けたものである。 個 々のマネージャ一は、 そのマネージャーの決められた情報を管理している 。 これらの情報は、 クライアント装置 3の要求に応じて、 サーバ装置 1か 問い合わせや設定を行なうようになっている。  FIG. 44 shows a functional block diagram of the manager library 19 shown in FIG. 4. The manager library 19 has a manager for managing the order in space. It is provided for the purpose. Each individual manager manages his or her assigned information. These information are queried or set from the server device 1 in response to a request from the client device 3.
図 4 4に示すように、 マネージャ一ライブラリー 1 9は、 位置マネージ ヤー機能部 1 3 0、 セキュリティマネージャー機能部 1 3 1、 及び履歴マ ネージャー機能部 1 3 2等で構成されている。  As shown in FIG. 44, the manager library 19 includes a location manager function unit 130, a security manager function unit 131, a history manager function unit 132, and the like.
位置マネージャー機能部 1 3 0は、 サイバースペース内での、 アバター Aゃォブジヱク 卜の位置を管理し、 ァバタ一 Aの移動による空間内の矛盾 を防ぐ機能を有しているものである。  The position manager function unit 130 has a function of managing the position of the avatar A object in the cyberspace and preventing inconsistency in the space due to the movement of the avatar A.
セキュリティマネージャ一機能部 1 3 1は、 サイバースペース内のォブ ジェク トゃアバター Aのセキュリティ (オブジェク 卜の利用制限や排他制 御) を管理するために必要な機能を有している。  The security manager one function unit 131 has the functions necessary to manage the security of the object Avatar A in cyberspace (object use restriction and exclusive control).
また、 履歴 (ログ) マネ一ジャー機能部 1 3 2は、 サイバースペース内 で起こった事象を記録し、 それを再現するために必要な機能を持たせてい る  In addition, the history (log) manager function section 13 records events that occurred in cyberspace, and has the necessary functions to reproduce them.
図 4 5は、 図 4 4に示すマネ一ジャーライブラリ一 1 9内の位置マネ一 ジャー機能部 1 3 0の機能的なブロック図を示している。 この位置マネー ジャー機能部 1 3 0は、 図示するように、 ォブジヱク ト追加機能部 1 3 5 、 ォブジヱク ト削除機能部 1 3 6、 オブジェク ト移動機能部 1 3 7、 ォブ ジェク ト位置問い合わせ機能部 1 3 8、 アバター追加機能部 1 3 9、 アバ ター削除機能部 1 4 0、 アバター移動機能部 1 4 1、 アバ夕一位置問い合 わせ機能部 1 4 2、 及びアバター移動衝突判定機能部 1 4 3等で構成され ている。 Figure 45 shows the location manager in the manager library 19 shown in Figure 44. 3 shows a functional block diagram of the jar function unit 130. FIG. As shown in the figure, the position manager function unit 130 has an object addition function unit 135, an object deletion function unit 1336, an object movement function unit 1337, and an object position inquiry function. 138, avatar addition function 139, avatar deletion function 140, avatar movement function 141, avatar position inquiry function 1442, and avatar movement collision judgment function It is composed of 1 4 3 mag.
位置マネージャー機能部 1 3 0のォブジヱク ト追加機能部 1 3 5は、 空 間内にあるォブジェク トをマネージャーの管理下に追加する機能を有して おり、 動作としては、 マネージャーが空間に存在しているオブジェク トの 位置情報を管理できるように登録を行なう。 そして、 オブジェク トのサー バ装置 1への追加要求によって駆動される。  The object addition function unit 135 of the position manager function unit 130 has a function of adding an object in the space under the management of the manager, and the operation is such that the manager exists in the space. Register so that the location information of the object can be managed. It is driven by a request to add an object to the server device 1.
オブジェク 卜追加機能部 1 3 6は、 空間内にあるオブジェク トをマネ一 ジャーの管理下から削除する機能を有しており、 動作としては、 マネージ ヤーに登録されているオブジェク トを削除するものである。 そして、 ォブ ジェク トのサーバ装置 1からの削除要求によって駆動される。  The object addition function unit 1336 has a function of deleting objects in the space from the management of the manager, and operates as a function of deleting objects registered in the manager. It is. Then, it is driven by a deletion request from the server device 1 of the object.
位置マネージャー機能部 1 3 0のォブジヱク 卜移動機能部 1 3 7は、 ォ ブジ Xタ トの位置情報を更新する機能を有しており、 動作としては、 マネ 一ジャーが管理している、 対応するオブジェク 卜の位置情報を更新するも のであり、 また、 オブジェク ト自身の位置情報も更新するものである。 そ して、 クライアン ト装置 3の要求やその他のィベン卜によって起きたォブ ジェ ク トの移動要求によって駆動される。  The object movement function part 1337 of the position manager function part 130 has a function to update the position information of the object X-tat, and the operation is performed by the manager. It updates the location information of the object to be updated, and also updates the location information of the object itself. It is driven by a request from the client device 3 or a request to move an object caused by another event.
ォブジヱク ト位置問い合わせ機能部 1 3 8は、 ォブジヱク 卜の位置情報 の問い合わせに応答する機能を有しており、 動作としては、 マネージャー が管理している、 対応するオブジェク トの位置情報を返すものである。 ま た、 クライアン ト装置 3の要求やその他のィベントによって起きたォブジ ェク 卜の移動要求によって駆動される。 The object position inquiry function unit 1338 has a function of responding to an inquiry about the position information of an object, and returns the position information of the corresponding object managed by the manager. is there. In addition, the obfuscation caused by client device 3 requests and other events It is driven by the movement request of the project.
位置マネージャ一機能部 1 3 0のアバター追加機能部 1 3 9は、 空間内 にあるアバター Aをマネ一ジャーの管理下に追加する機能を有しているも のであり、 動作としては、 マネ一ジャーが空間に存在しているアバター A の位置情報を管理できるように登錄を行なうものである。 また、 アバター Aのサーバ装置 1への追加要求によって駆動される。  The avatar addition function section 1339 of the location manager 1 function section 130 has a function of adding the avatar A in the space under the management of the manager. The registration is performed so that the jar can manage the location information of Avatar A existing in the space. It is also driven by an avatar A request to be added to the server device 1.
アバ夕一削除機能部 1 4 0は、 空間内にあるアバター Aをマネ一ジャー の管理下から削除する機能を有しており、 動作としては、 マネージャーに 登録されているアバター Aを削除するものである。 そして、 アバター Aの サーバ装置 1からの削除要求によって駆動される。  The avatar delete function section 140 has a function of deleting avatar A in the space from the management of the manager. The operation is to delete avatar A registered in the manager. It is. It is driven by a deletion request from the server device 1 of the avatar A.
位置マネ一ジャー機能部 1 3 0のアバ夕一移動機能部 1 4 1は、 アバ夕 — Aの位置情報を更新するものであり、 動作としては、 マネージャーが管 理している、 対応するアバ夕一 Aの位置情報を更新するものであり、 また 、 アバ夕一 A自身の位置情報も更新するものである。 そして、 クライアン ト装置 3の移動要求によって駆動される。  The location manager function section 130's avatar evening movement function section 14 4 1 updates the location information of the avatar — A. The operation is performed by the manager that manages the corresponding avatar. It updates the location information of Yuichi A, and also updates the location information of Abba Yuichi A itself. Then, it is driven by a movement request of the client device 3.
アバター位置問い合わせ機能部 1 4 2は、 アバター Aの位置情報の問い 合わせに応答するものであり、 動作としては、 マネージャーが管理してい る、 対応するアバ夕一 Aの位置を返すものである。 そして、 クライアント 装置 3の移動要求によって駆動される。  The avatar position inquiry function unit 142 responds to the inquiry about the position information of the avatar A. The operation returns the corresponding position of the avatar A, which is managed by the manager. Then, it is driven by the movement request of the client device 3.
さらに、 アバター移動衝突判定機能部 1 4 3は、 アバ夕一 Aの移動で衝 突が起こるかどうかを判定する機能を有しているものであり、 動作として は、 アバター Aの移動がォブジヱク トゃ他のアバター Aや空間の壁に衝突 しないかを、 マネージャーが管理している位置情報から判定するようにし ている。 そして、 クライアント装置 3の移動要求によって駆動される。 図 4 6は、 図 4 4に示すマネージャ一ライブラリー 1 9内のセキュリテ イマネージャー機能部 1 3 1の機能的なプロック図を示し、 このセキュリ ティマネージャー機能部 1 3 1 は、 ォブジヱク ト追加機能部 1 4 6、 ォブ ジェク 卜削除機能部 1 4 7、 アバター追加機能部 1 4 8、 アバター削除機 能部 1 4 9、 セキュリティ情報設定機能部 1 5 0、 セキュ リティ情報問い 合わせ機能部 1 5 1、 及びセキュリティチェック機能部 1 5 2等で構成さ れている。 Further, the avatar movement collision determination function unit 1443 has a function of determining whether or not a collision occurs when the avatar A moves, and the movement of the avatar A is an object.ゃ The manager determines whether it will collide with another avatar A or a wall in the space based on the location information managed by the manager. Then, it is driven by the movement request of the client device 3. FIG. 46 shows a functional block diagram of the security manager function unit 131 in the manager library 19 shown in FIG. 44. The security manager function part 13 1 is the object addition function part 14 6, the object deletion function part 14 7, the avatar addition function part 14 8, the avatar deletion function part 14 9, the security information setting function It consists of a part 150, a security information inquiry function part 151, and a security check function part 152.
まず、 オブジェク ト追加機能部 1 4 6から説明すると、 このオブジェク ト追加機能部 1 4 6は、 空間内にあるオブジェク トをマネージャーの管理 下に追加する機能を有しているものであり、 動作としては、 マネージャー が空間に存在しているオブジェク トのセキュリティ情報を管理できるよう に登録を行なうものである。 そして、 オブジェク トのサーバ装置 1への追 加要求によって駆動される。  First, the object adding function unit 146 will be described. The object adding function unit 146 has a function of adding an object in the space under the management of the manager. As a method, registration is performed so that managers can manage security information of objects existing in the space. Then, it is driven by an addition request of the object to the server device 1.
また、 オブジェク ト削除機能部 1 4 7は、 空間內にあるオブジェク 卜を マネ一ジャーの管理下から削除する機能を有しており、 動作としては、 マ ネージャーに登録されているオブジェク トを削除するものである。 そして 、 ォブジェク 卜のサーバ装置 1への削除要求によって駆動される。  Also, the object deletion function part 147 has a function of deleting an object in the space 內 from the management of the manager, and the operation is to delete the object registered in the manager. Is what you do. Then, the object is driven by a deletion request to the server device 1.
セキュリティマネージャ一機能部 1 3 1のアバター追加機能部 1 4 8は 、 空間内にあるアバター Aをマネージャーの管理下に追加する機能を有し ているものであり、 動作としては、 マネージャ一が空間に存在しているァ バター Aのセキュリティ情報を管理できるように登録を行なうものである 。 そして、 アバ夕一 Aのサーバ装置 1への追加要求によって駆動される。 また、 アバ夕一削除機能部 1 4 8は、 空間内にあるアバ夕一 Aをマネ一 ジャーの管理下から削除する機能を有しているものであり、 動作としては 、 マネ一ジャーに登録されているアバ夕一 Aを削除するものである。 そし て、 アバター Aのサーバ装置 1への削除要求によって駆動される。  The avatar addition function unit 148 of the security manager function unit 1 3 1 has a function of adding the avatar A in the space under the management of the manager. The registration is performed so that the security information of avatar A that exists in the company can be managed. Then, it is driven by an additional request to the server device 1 of Ava Yuichi A. In addition, the Ababa Yuichi deletion function section 148 has a function to delete Ababa Yuichi A in the space from the management of the manager, and the operation is registered with the manager. Aba Yuichi A is to delete A. Then, it is driven by a deletion request of the avatar A to the server device 1.
図 4 6に示すセキュリティマネ—ジャー機能部 1 3 1のセキュリティ情 報設定機能部 1 5 0は、 空間ゃォブジェク ト、 アバ夕一 Aのセキュリティ 情報を設定するという機能を備えているものであり、 動作としては、 対応 する空間やォブジヱク ト、 アバ夕一 Aのセキュリティ情報を設定する。 セ キユリティ情報としては、 「誰が操作可能か」 、 「いつ操作可能か」 、 「 どこで操作可能か」 などである。 そして、 空間の立ち上げ処理中に予め設 定された情報に基づく要求によって駆動される。 The security information of the security manager function section 13 1 shown in Figure 46 The information setting function section 150 has a function of setting the security information of the space object and the avatar A. The operation is performed in the corresponding space, object, and avatar A. Set security information. The security information includes "who can operate", "when can it operate", "where can it operate" and so on. Then, it is driven by a request based on preset information during the space start-up process.
セキュリティ情報問い合わせ機能部 1 5 1は、 空間ゃォブジェク ト、 ァ バタ一 Aのセキュリティ情報の問い合わせに応答するという機能を備えて いるものであり、 動作としては、 対応する空間やオブジェク ト、 アバ夕一 Aのセキュリティ情報を返すものである。 セキュリティ情報としては、 「 誰が操作可能か」 、 「いつ操作可能か」 、 「どこで操作可能か」 などであ る。 そして、 クライアン ト装置 3からの要求によって駆動される。  The security information inquiry function unit 151 has a function of responding to the inquiry about the security information of the space object and the avatar A. The operation is performed in the corresponding space, object, and server. It returns security information of A. The security information includes “who can operate”, “when can it be operated”, “where can it be operated” and so on. It is driven by a request from the client device 3.
セキュリティマネージャー機能部 1 3 1のセキュリティチエツク機能部 1 5 2は、 指定された操作が、 セキュリティ的に可能かどうかを調べる機 能を有しているものである。 このセキュリティチエツク機能部 1 5 2の動 作としては、 マネージャ一が管理しているセキュリティ情報を基に、 指定 された操作が可能かどうかを返すものである。 また、 チェックする内容は 、 ユーザ一、 時間、 場所などを元に判断するようにしている。 そして、 そ して、 クライアント装置 3からの要求によって駆動される。  The security check function section 152 of the security manager function section 131 has a function of checking whether or not the specified operation is possible in terms of security. The operation of the security check function unit 152 returns whether or not the specified operation is possible based on the security information managed by the manager. The content to be checked is determined based on the user, time, location, and the like. Then, it is driven by a request from the client device 3.
図 4 7は、 図 4 4に示すマネージヤーライブラリ一 1 9内の履歴マネー ジャー機能部 1 3 2の機能的なブロック図を示し、 ログ保存機能部 1 5 5 とログ読み込み機能部 1 5 6で構成されている。  FIG. 47 shows a functional block diagram of the history manager function part 13 2 in the manager library 19 shown in FIG. 44. The log storage function part 15 5 and the log reading function part 15 6 It is composed of
ログ保存機能部 1 5 5は、 空間 (S O M A空間) 内で起こったことをす ベて保存する機能を有しており、 動作としては、 アバ夕一 Aが行なった操 作、 アバター Aの移動によって発生したイベント、 その他で発生したィべ ン トをすベて保存するものである。 また、 そのイベントによって生じた空 間ゃォブジェク ト、 アバター Aの状態の変化も保存するようにしている。 その保存する内容は、 「どのようなイベントか」 、 「いつ発生したか」 、 「誰が発生させたか」 、 「それによつて何がどう変化したか」 等である そして、 このログ保存機能部 1 5 5は、 クライアン ト装置 3からの要求 やその他のィベン卜が起きた際に、 図 6に示すサーバ基本制御ライブラリ - 1 6内の空間基本制御機能部 2 2、 オブジェク ト基本制御機能部 2 3、 アバター基本制御機能部 2. 3における処理中での要求によって駆動される ようになっている。 The log storage function section 155 has a function to save everything that happened in the space (SOMA space). The operation was performed by Aba Yuichi A, and the avatar A was moved. It saves all events that have occurred and other events that have occurred. Also, the sky created by the event Interim objects and changes in the state of Avatar A are also saved. The contents to be saved are "What kind of event", "When it occurred", "Who caused it", "What changed and how?" 5 5 shows the basic space control function part 22 in the server basic control library 16 shown in Fig. 6 and the basic object control function part 2 when a request or other event from the client device 3 occurs. 3. The avatar basic control function section 2.3 is driven by a request during processing.
また、 ログ読み込み機能部 1 5 6は、 保存されているログ (履歴) を読 み出すという機能を備えているものであり、 動作としては、 過去に保存さ れているログを読みだし、 これを元に、 過去に空間で起きたことを再現す るものである。 また、 クライアント装置 3からの要求によって駆動される ようになっている。  The log reading function unit 156 has the function of reading stored logs (histories). The operation is to read logs stored in the past. It reproduces what happened in space in the past based on the data. Further, it is driven by a request from the client device 3.
次に、 本発明のシステムに用いているデータベース管理システムについ て説明する。 その前に、 従来のデータベース管理システムについて説明す ると、 マルチメディア時代を迎えたデ一夕ベース管理システムも、 マルチ メディァデータの管理が求められているが、 現在まで培われてきたデ一夕 ベース技術でこれを行なおうとすると、 次のような問題がある。  Next, a database management system used in the system of the present invention will be described. Before that, let me explain the conventional database management system. The multimedia management era, which has entered the multimedia era, is required to manage multimedia data. There are the following problems when trying to do this with the base technology.
アクセス単位の問題  Access unit issues
従来のデータベース管理システムでは、 デ一夕を、 ファイル (表) 、 レ コード (行) 、 フィールド (列 属性) という基本構造で捕らえ、 レコー ドをアクセスの中心に置いた技術となっている。 それぞれが、 表は検索の 対象ではなく措定の対象、 レコードは検索の対象、 フィールドは切り出し の対象となっている。 この方法で、 音声や動画を扱おうとすると、 データを 1つのフィールド の値として押し込むことになり、 音声、 画像、 長テキスト等を同時に含ん だレコードをアクセスすると、 大きなコスト (使用資源、 時間、 C P U時 間) がかかり、 効率が低下する。 In a conventional database management system, data is captured in the basic structure of files (tables), records (rows), and fields (column attributes), and records are placed at the center of access. In each case, tables are subject to predicate rather than search, records are subject to search, and fields are subject to extraction. If you try to handle audio and video in this way, you will have to push data as the value of one field, and if you access a record that contains audio, images, long text, etc. at the same time, a large cost (resource usage, time, CPU Time) and efficiency is reduced.
処理プログラムとアクセス法の問題  Problems with processing programs and access methods
音声、 静止画、 動画等は、 それ自身複雑な構造を持っており、 アプリケ ーシヨンプログラマが、 直接それらのデータの処理を行なうプログラムを 書くのは困難である。 したがって、 これらは既に用意されたプログラムを 呼び出して使うことになる。 これらのプログラムは、 低レベルのサブプロ グラムでも提供されているが、 多くの場合、 独立したプログラムとして、 提供され使用することが多い。 低レベルのサブプログラムから、 独自のィ ン夕ーフヱースを構築するのも大変だからである。 この傾向は、 マルチメ ディアデ一夕を扱うプログラムに顕著である。  Audio, still images, moving images, etc. have complicated structures themselves, and it is difficult for application programmers to write programs that directly process these data. Therefore, they call and use already prepared programs. These programs are also offered as low-level subprograms, but are often offered and used as stand-alone programs. It is difficult to build your own inf face from low-level subprograms. This tendency is remarkable in programs that deal with multimedia.
また、 これらのプログラムは、 O S COperat i ng Sys tem)ファイルを直接 読む形でデータを処理するようになっている。 従来のデータベース管理シ ステムは、 データのインテグリティやセキュリティ保持のため、 独自のデ 一夕アクセス法でしか、 データがアクセス出来ないので、 データベース管 理システムに格納されたデータを、 これらのプログラムで処理することは 出来ない。 こうして、 マルチメディアデ一夕に関しては、 従来のデータべ —ス管理システムに格納すると、 既存のプログラムが使えなくなるのであ る 0  In addition, these programs are designed to process data by directly reading OSC (peripheral system) files. Conventional database management systems can only access data using a proprietary data access method to maintain data integrity and security, so data stored in the database management system is processed by these programs. I can't. Thus, when storing multimedia data in a conventional database management system, existing programs cannot be used.
一方、 データベース管理システムを使わないで、 O Sの提供する標準の フアイル管理システムを直接使用すると、 次のような問題が起こる。 種類ごとに分類してディ レク トリにファイルを格納することになるカ^ On the other hand, if the standard file management system provided by OS is directly used without using a database management system, the following problems occur. Files that will be stored in directories by classifying them by type ^
1つのディ レク トリに多くのファイルをフラッ トに格納すると、 ファイル の取り出しに時間がかかる。 だからといって、 不必要な階層化を行なうと 、 パス指定が複雑になる。 Storing many files in a single directory on a flat file takes time to retrieve. But if you do unnecessary layering, The path specification becomes complicated.
ファイルに属性が付けられないため、 ファイルをその属性で検索できな い。  The attribute cannot be assigned to the file, so the file cannot be searched with that attribute.
ファイル間の整合性を保つのに、 ユーザ一がプログラムを開発しなけれ ばならない。  To maintain consistency between files, the user must develop the program.
ファイルの機密保護、 障害対策が弱い。  Weak file security and failure measures.
プログラムもデ一夕もファイルとしてしか認識されておらず、 データと プログラムの関連が管理されていない。  Both programs and data are recognized only as files, and the relationship between data and programs is not managed.
これらは、 データベース技術が生み出される要因となったものである。 しかし、 従来のデ一夕べ一ス技術では、 前記の問題を解決できない。 ここ で、 考えなければならないのは、 データベース技術が誕生した 1 9 6 0年 代と環境も要求も異なるということである。  These are the factors that led to the creation of database technology. However, the conventional technology cannot solve the above problem. What we need to consider here is that the environment and requirements are different from the 1960s when database technology was born.
コンピュー夕の性能、 ネッ トワークの性能は大きく変わり、 扱いたいデ 一夕は、 文字列や数値を中心とした人事や取引データではなく、 写真、 音 声、 動画、 フルテキストを含むマルチメディアデータである。 データべ一 ス技術が生まれた最も大きな契機は、 O Sにデータ管理が、 ファイル単位 で、 レコ一 ド単位のデータ管理を必要としたビジネスデ一夕処理の要求を 満たさなかったからである。 しかし、 マルチメディアデータは、 1つのフ アイルとして管理されてなんら問題はない。 むしろその方が都合がいい。 したがって、 我々のすべきことは、 O Sのディ レク トリの持つファイル 管理機能の長所を活かしながら、 上記の問題点を克服し、 データベース技 術と融合する方法を見つけ出すことである。  The performance of computers and the performance of networks have changed drastically, and the data we want to deal with is not HR or transaction data centered on character strings or numerical values, but rather multimedia data including photos, voices, videos, and full text. is there. The biggest opportunity for the creation of database technology was that data management in the OS did not meet the business data processing requirements that required data management on a record-by-file basis. However, there is no problem if the multimedia data is managed as one file. Rather it is more convenient. Therefore, what we need to do is to find a way to overcome the above problems and integrate it with database technology, while taking advantage of the file management capabilities of the OS directory.
ここで、 この問題の解決のための基本的な枠組み (パラダイム) を示す o  Here is the basic framework (paradigm) for solving this problem o
まず、 データ管理の単位を、 O Sのファイルとする。 o sのファイルには、 所有者、 作成 ·更新日付、 名前、 簡単な機密設定 等の属性が付いて管理されているが、 これにユーザーがそのファィルを効 率良く管理するためのいろいろな属性を付けることを許す。 First, let the unit of data management be an OS file. OS files are managed with attributes such as owner, creation / update date, name, simple confidentiality, etc., and various attributes that allow users to manage the file efficiently are added to this file. Allow to attach.
同一の構造と属性を持つファィルをグループ化し、 グループ名を付けて ひとまとまりのものとして管理する。  Files with the same structure and attributes are grouped together and given a group name to manage them as a group.
多くのフアイルを含むグループの中から、 欲しいフアイルをその属性値 の特徴から検索できるようにする。  From a group that includes many files, search for the desired file based on the characteristics of its attribute values.
グループ内のファイルは、 同一構造を持っているので、 それを処理する プログラム群もひとまとまりに出来る。 これも合わせて管理することによ り、 データとプログラムの関係を明確にすることができる。  Since the files in a group have the same structure, programs that process it can be grouped together. By managing this together, the relationship between data and programs can be clarified.
類似の属性やプログラムが多く存在するグループ間では、 その共通の厲 性、 プログラムだけをとつて、 別のグループとしておき、 その共通グルー ブとの関係を記述しておけば、 属性やプログラムが冗長になるのが避けら れ、 グループの後の拡張も容易である。  If there are groups with many similar attributes and programs, only the common characteristics and programs are taken as a separate group, and if the relationship with the common group is described, the attributes and programs are redundant. And it is easy to expand after the group.
セキュリティ、 インテグリティ、 トランザクションの管理、 障害回復機 能などの従来から築かれてきたデータベース技術を加えて高いシステムの 信頼性を確保する。  High system reliability is ensured by adding traditional database technologies such as security, integrity, transaction management, and disaster recovery functions.
このパラダイムは、 オブジェク ト指向のパラダイムと非常に近いため、 ォブジ Xク ト指向の多くの長所や特徴を取り入れることができる。 ォブジ ェク ト指向の継承 · カプセル化 ·多態 · メッセージバッシングといった特 徵を加えることにより、 データとそれを扱うソフトウエアの再利用性の向 上、 セキュリティの強化、 ユーザーイン夕一フヱ一スの向上等を図ってい るものである。  This paradigm is so close to the object-oriented paradigm that it can incorporate many of the advantages and features of object-oriented X-axis. By adding features such as object-oriented inheritance, encapsulation, polymorphism, and message bashing, it improves the reusability of data and the software that handles it, enhances security, and enhances user experience. The aim is to improve the quality of services.
図 4 8は、 図 4に示すクライアント ·サーバ交信機能部 1 3の機能的な ブロック図を示し、 このクライアント ·サーバ交信機能部 1 3は、 キュー 作成機能部 1 6 0、 テーブル作成機能部 1 6 1、 プロ トコルデータ処理機 能部 1 6 2、 参照テーブル追加 ·削除機能部 1 6 3、 及びキュー管理機能 部 1 6 4等で構成されている。 FIG. 48 shows a functional block diagram of the client / server communication function unit 13 shown in FIG. 4. The client / server communication function unit 13 has a queue creation function unit 160 and a table creation function unit 1. 6 1, Protocol data processing machine No. 162, reference table addition / deletion function 163, and queue management function 1664.
このクライアン ト ·サーバ交信機能部 1 3は、 クライアン ト装置 3側と のプロ トコルをやりとりし、 クライアント装置 3との相互連絡 ·役割分担 を実現する機能を持たせている。  The client / server communication function unit 13 has a function of exchanging a protocol with the client device 3 and realizing mutual communication and role sharing with the client device 3.
サーバ装置 1は、 クライアント装置 3からのプロ トコルデータを受け取 り、 それらを解析して、 サーバ装置 1 のオブジェク トへ信号を送信したり 、 また、 クライアント装置 3へ信号を返したりする機能を持っている。 ま た、 クライアント装置 3からの要求によっては、 リアルタイムでリブライ を返さなければならないもの、 一連の動作の順序を守って返さなければな らないもの、 いつリプライを返してもよいものがあり、 それらを区別して 制御する機能をサーバ装置 1 に持たせているものである。  The server device 1 has a function of receiving the protocol data from the client device 3, analyzing them, transmitting a signal to the object of the server device 1, and returning a signal to the client device 3. ing. In addition, depending on the request from the client device 3, there are those that must return a live response in real time, those that must return in a sequence of operations, and those that may return a reply at any time. The server device 1 has a function to control by distinguishing between them.
次に、 図 4 8に示すサーバ装置 1のクライアント 'サーバ交信機能部 1 3の各機能部 1 6 0〜 1 6 4について説明する。 キュー作成機能部 1 6 0 は、 サーバ装置 1の起動時に、 クライアン ト装置 3あるいはサーバ装置 1 からの信号を受信し、 信号をストックするためのキュー (Q U E U E ) を 作成するものである。 このキューの大きさは、 パラメータで変えられるよ うになつている。  Next, the functional units 160 to 164 of the client's server communication function unit 13 of the server device 1 shown in FIG. 48 will be described. The queue creation function section 160 receives a signal from the client device 3 or the server device 1 when the server device 1 is started, and creates a queue (QUEUE) for stocking the signal. The size of this queue can be changed by a parameter.
テーブル作成機能部 1 6 1は、 サーバ装置 1 の起動時に、 接続すべき他 のサーバ装置をサーチし、 接続サーバ装置とその対応空間名の参照テープ ルを作成するものである。  The table creation function section 161 searches for another server device to be connected when the server device 1 is started, and creates a reference table of the connected server device and its corresponding space name.
クライアン ト 'サーバ交信機能部 1 3のプロ トコルデータ処理機能部 1 6 2は、 キュー (Q U E U E ) に溜められたプロ トコルデータを処理する 機能を持っているものであり、 キューにプロ トコルデータがある場合、 そ のプロ トコルを 1件取り出し、 それを解釈し、 自身のサーバ装置 1のォブ ジェク 卜へ信号を送信したり、 他のサーバ装置へ送信したり、 クライアン ト装置 3へ信号を送信する機能を持っているものである。 The protocol data processing function section 162 of the client's server communication function section 13 has a function of processing the protocol data stored in the queue (QUEUE), and the protocol data is stored in the queue. In some cases, it extracts one protocol, interprets it, sends a signal to its own server device 1 object, sends it to another server device, or It has a function of transmitting a signal to the remote control device 3.
参照テーブル追加 '削除機能部 1 6 3は、 クライアン ト (クライアン ト 装置 3 ) の新規参入あるいは退場時のクライアン トの追加、 削除を行なう ものであり、 サーバ装置 1 に新規にクライアントが新規参入した場合、 ク ライアント名と I P (Internet Protocol) Ύ ドレスを高速に検索するため に、 クライアン ト参照テーブルを作成し、 随時追加 ' 削除する機能を持つ ている。  The reference table addition / deletion function part 16 3 is for adding or deleting a client (client device 3) when entering or leaving, and a new client newly enters the server device 1. In this case, it has a function to create a client reference table and to add / delete it as needed in order to search for the client name and IP (Internet Protocol) address at high speed.
図 4 8に示すキュー管理機能部 1 6 4は、 キュー (Q U E U E ) が一杯 になっているのに、 プロ トコルデ一夕を受信した場合、 そのプロトコルの 処理ができないことを、 送信元にリプライし、 送信元にその処理ができな いことを通知する機能を持っている。  The queue management function block 164 shown in Fig. 48, when the queue (QUEUE) is full, but receives a protocol overnight, replies to the source that the protocol cannot be processed. It has a function to notify the sender that processing cannot be performed.
また、 キュー (Q U E U E ) の中のプロ トコルデータのデ一夕の種類に よって、 処理するプロ トコルデ一夕を制御するようになっている。 リアル タイムで処理するデータの場合は、 それを最優先で処理し、 一連の動作が 必要となるものは、 その動作のすべてが揃ってから順次処理するようにし ている。 それ以外の処理はあいた時間に処理する機能を持たせている。 なお、 プロ トコルが持つべき属性としては、 以下のようなものがある。 送信元名 (クライアント装置、 あるいはサーバ装置) 、 送信先名 (クライ アント装置、 あるいはサーバ装置) 、 空間名、 オブジェク ト名、 オペレー シヨ ン名、 オペラン ド名、 タイムスタンプ処理区分、 リアルタイム区分、 リプライ、 デッ ドライン相対順区分、 相対順グループ、 グループ内順序、 一般区分、 これらの属性を持つことにより、 上記キュー管理機能部 1 6 4 の管理機能で、 プロ トコルの送受信の制御を行なうようにしている。  Further, the protocol to be processed is controlled according to the type of protocol data in the queue (QUEUE). In the case of data that is processed in real time, it is processed with the highest priority, and if a series of operations is required, it is processed sequentially after all the operations are completed. Other processing is provided with a function of processing at an available time. The attributes that the protocol should have are as follows. Source name (client device or server device), destination name (client device or server device), space name, object name, operation name, operand name, time stamp processing category, real-time category, reply By having these attributes, such as deadline relative order division, relative order group, intra-group order, and general division, the management function of the queue management function unit 164 controls transmission and reception of protocols. I have.
クライアン ト装置 3の構成  Configuration of client device 3
図 4 9はクライアント装置 3のブロック図を示しており、 このクライァ ント装置 3は、 一般的なパソコンであり、 例えば、 W I N D OW S 9 5を 搭載した低価格なパソコンである。 FIG. 49 shows a block diagram of the client device 3. The client device 3 is a general personal computer. It is a low-cost personal computer.
クライアン ト装置 3は、 マイク 1 7 0、 マウス 1 7 1、 キーボード 1 7 2、 ビデオ力メラ 1 7 3、 左右のスピーカ 1 7 4、 1 7 5、 I ZOイン夕 ーフヱース 1 6 9、 〇1¾丁等の表示部 1 7 6、 各種のプログラム、 データ を格納するメモリ 1 7 8、 例えば、 I N S 6 4回線等のネッ トワーク 2を 介してサーバ装置 1 と交信を行なうサーバ ' クライアント交信機能部 1 7 7、 全体の制御 ·演算を行なう制御 ·演算部 1 7 9等で構成されている。 また、 図 5 0は、 メモリ 1 7 8に格納されているプログラム群、 ォブジ ェク ト群の機能的なプロック図を示し、 ィベント制御部 1 8 1、 背景表示 部 1 8 2、 オブジェク ト ·アバ夕一表示部 1 8 3、 アバ夕一制御部 1 8 4 、 位置制御マネージャ一 1 8 5、 オブジェク ト 'マネージャー 1 8 6、 マ ィク ·オブジェク ト 1 8 7、 スピー力 ·オブジェク ト 1 8 8、 ビデオカメ ラ 'オブジェク ト 1 8 9等がメモリ 1 7 8に格納されている。  The client device 3 includes a microphone 170, a mouse 171, a keyboard 172, a video camera 1723, left and right speakers 174, 175, IZO interface 1769, {1} Display section 176 of a block, etc., memory 178 for storing various programs and data, for example, a server that communicates with the server 1 via a network 2 such as INS 6 4 lines, etc.'Client communication function section 1 77, Overall control · Control for performing calculations · Computing section 179 etc. FIG. 50 shows a functional block diagram of a group of programs and a group of objects stored in the memory 178. The event control unit 181, the background display unit 182, the object Abba evening display section 1 8 3, Ababa evening 1 control section 1 84, Position control manager 1 85, Object's manager 1 86, Magic object 1 87, Speed force object 1 88, video camera's object 189, etc. are stored in the memory 178.
次に、 ィベン ト制御部 1 8 1 について説明すると、 このィベント制御部 1 8 1は、 イベント 'ループを持ち、 ユーザ一のマウス 1 7 1、 キーボ一 ド 1 7 2からの入力によるィベント及びサーバ · クライアント交信機能部 1 7 7から受け取ったイベントに対応する操作を行なうものであり、 それ らのイベン トは、 対応するローカル .マネージャ一 (クライアント装置 3 側のマネージャ一) に割り振られ実行される。 ローカル 'マネージャーを 統括する制御部となるものである。  Next, the event control section 18 1 will be described. The event control section 18 1 has an event loop, an event and a server by an input from the user's mouse 17 1 and keyboard 17 2. · Performs operations corresponding to events received from the client communication function unit 177. These events are allocated to the corresponding local manager (the manager on the client device 3 side) and executed. . It is the control section that controls the local manager.
アバター制御部 1 8 4は、 アバター Aの動作を実行するものであり、 位 置制御マネージャー i 8 5にその動作が実行可能かどうかを問い合わせ、 可能であればォブジェク ト ·アバター表示部 1 8 3を呼び出して実行する 。 また、 その動作をサーバ装置 1へ伝えるようになつている。 メソッ ドと しては以下のようになっている。 メ ソッ ド The avatar control unit 18 4 executes the operation of the avatar A, inquires of the position control manager i 85 whether the operation can be executed, and if possible, the object / avatar display unit 18 3 Call and execute. In addition, the operation is transmitted to the server device 1. The method is as follows. Method
①一時停止 : アバター Aの動作を一時停止させる。  (1) Pause: Pauses the operation of avatar A.
②動作再開 :一時停止の状態のアバター Aの動きを再開する。  ②Resume operation: Resume the movement of avatar A in the paused state.
③強制終了 : アバター Aの動作を強制的に終了させる。  (3) Forced termination: Avatar A operation is forcibly terminated.
④描画更新: ァバタ一 Aの描画 (再描画) を行なう。  ④Drawing update: Performs avatar A drawing (redrawing).
⑤パターン変更:アバ夕一 Aの基本動作 (歩く、 座る) を視覚化するに 当たり、 何通りかのパターンを保持する必要があるが、 動作の変更に対応 するためにそのパターンの変更を行なう。  ⑤Pattern change: To visualize the basic movement (walking, sitting) of Aba Yuichi A, it is necessary to hold several patterns, but change the pattern to accommodate the change in movement. .
⑥削除 : アバター Aのイメージ (パターン) を破棄する。  ⑥Delete: Discard the avatar A image (pattern).
⑦位置報告: アバター Aの位置を報告する。  ⑦Location report: Report the location of Avatar A.
⑧その他: 実際の行動メソッ ド (歩く、 座る、 挙手、 e t c . ) 位置制御マネ一ジャー 1 8 5は、 アバター Aの移動範囲を他のマネージ ヤーと連絡し合って制御するものである。 メソッ ドとしては以下のように よって ヽる。  ⑧Other: Actual action method (walk, sit, raise hand, etc.) The position control manager 1885 controls the moving range of avatar A by communicating with other managers. The method is as follows.
メ ソッ ド  Method
①登録: アバター Aやオブジェク トをそのジオメ ト リ (座標) と共に登 録する。  (1) Registration: Register avatar A and the object along with its geometry (coordinates).
②削除: アバ夕一 Aやオブジェク トを削除する。  ② Delete: Yuichi Aba and the object are deleted.
③変更: アバター Aやオブジェク トのジオメ トリを変更する。  ③ Change: Change the geometry of avatar A or the object.
④許可要求 : アバター Aの移動要求に対して許可を与えるかどうかを返 答する。  (4) Permission request: Returns whether permission is given for avatar A's movement request.
オブジェク ト 'マネージャ一 1 8 6は、 ローカル 'マネージャ一群に対 してアバ夕一 Aが制御するのに可能かどうかを判断するものである。 メソ ッ ドとしては以下のようになつている。  The object 'manager-186' determines whether a group of local 'managers' can be controlled by Aba Yuichi A. The method is as follows.
メ ソッ ド  Method
①登録 : オブジェク トの登録を行なう。 ②削除: ォブジェク トを削除する。 ①Registration: Register the object. (2) Delete: Delete the object.
③変更: オブジェク 卜の状態を変更する。  ③ Change: Change the state of the object.
④アバ夕一登録 :指定したォブジヱク トを操作できるアバ夕一 Aを登録 する。 ⑤アバ夕一削除: 指定したオブジェク トを操作できるアバターの 登録を取り消す。  登録 Aba Yuichi Registration: Register Aba Yuichi A that can operate the specified object.削除 Delete avatar: Cancel registration of avatar that can operate the specified object.
⑥許可要求:ォブジェク 卜の操作に対してアバ夕一が行なえる動作を返 答する。  (4) Permission request: Returns an operation that can be performed by Ababa Yuichi in response to object operation.
マイク ·オブジェク ト 1 8 7は、 マイク 1 7 0から受け取った音声ファ ィルをサーバ · クライアント交信機能部 1 7 7を介してサーバ装置 1へ伝 えるものであり、 メソッ ドとしては以下のようになつている。  The microphone object 187 transmits the voice file received from the microphone 170 to the server device 1 via the server-client communication function unit 177, and the method is as follows. It has become.
メソッ K  Method K
①ハードの接続状況: マイク 1 7 0が使用可能であるかを返答する。 (1) Hardware connection status: Returns whether microphone 170 is usable.
②実行: マイク 1 7 0からの音声をファイルに落とすようにする。(2) Execute: The sound from the microphone 170 is dropped to a file.
③終了 : マイク 1 7 0からの入力を終了する。 (3) Exit: Terminates input from the microphone 170.
スピーカ ·ォブジヱク ト 1 8 8は、 サーバ装置 1から受け取った音声フ アイルを再生するものであり、 メソッ ドとしては以下のようになつている メソッ K  The speaker object 188 is for reproducing the audio file received from the server device 1, and the method is as follows.
①ハードの接続状況: スピーカ (音源ボード) が使用可能であるかを返 答する。  (1) Hardware connection status: Returns whether the speaker (sound source board) is usable.
②実行:音声ファイルを受け取り再生するようにする。  (2) Execute: Receive and play back audio files.
③音量制御:音の大きさを制御する。  ③ Volume control: Control the volume of the sound.
④中断:再生を中断する。  ④Pause: Stop playback.
⑤再開 :再生を再開する。  ⑤Resume : Resume playback.
⑥終了 :再生を終了する。  ⑥End: End playback.
ビデオ力メラ ·ォブジヱク ト 1 8 9は、 テレビ会議形式の会議を行なう 際に、 定期時間毎に、 ビデオカメラ 1 7 3からユーザーの映像を静止画と して、 サーバ · クライアン ト交信機能部 1 7 7を介してサーバ装置 1へ伝 えるものであり、 メソッ ドとしては以下のようになっている。 Video Power Memo Object 189 Holds Video Conference Style Meetings In this case, at regular time intervals, the video of the user from the video camera 173 is transmitted as a still image to the server device 1 via the server-client communication function unit 177, and is used as a method. Is as follows.
メソッ ド  Method
①ハードの接続状況: ビデオカメラ 1 7 3が使用可能であるかを返答す  ①Hardware connection status: Respond whether video camera 1 7 3 is usable
②実行 : ビデオカメラ 1 7 3からの画像をファイルに落とすようにする (2) Execute: Drop the image from video camera 1 7 3 into a file
③タイ ミ ング制御: ビデオカメラ 1 7 3からの画像をどれぐらいの頻度 で取り込むかを指定する。 (3) Timing control: Specify how often images from video camera 1 73 are taken.
④終了 : ビデオカメラ 1 7 3からの入力を終了する。  ④Exit: Terminates the input from video camera 1 7 3.
サイバースペースの動作  Cyberspace in action
次に、 本システムの全体の制御動作について説明する。 なお、 本システ ムにおけるそれぞれのォブジヱク ト群、 機能部群の詳紬は上述したので、 ィベン 卜によって生じる制御内容の詳細は省略する。  Next, the overall control operation of the present system will be described. Since the details of each object group and functional group in this system have been described above, the details of the control generated by the event will be omitted.
① 空間の立ち上げとュニザ一の参加—  ① Launch of the space and participation of UNIZA
上述のようにして定義されたサイバースペースの種々のデ一夕は、 サー バ装置 1側ですベて予め格納、 保持されている。 予め決められている空間 管理者によりサイバースペースが立ち上げられると (サーバ基本制御ライ ブラリー 1 6、 空間基本制御機能部 2 2 ) 、 一人、 あるいは複数のユーザ 一はクライアン ト装置 3によりネッ トワーク 2を介してそのサイバースべ ースに参加することができる (空間基本制御機能部 2 2 ) 。  Various data of the cyberspace defined as described above are stored and held in advance on the server device 1 side. When cyberspace is started up by a predetermined space manager (Basic Control Library 16 and Basic Control Function 22), one or more users are connected to the network 2 by the client device 3. You can participate in the cyber space through (Spatial Basic Control Function Unit 22).
サーバ装置 1 は、 サイバースペースに参加を希望したユーザーの認証を 行ない (空間基本制御機能部 2 2、 ユーザー認証機能部 3 9 ) 、 その認証 の後、 そのユーザーの視点から見た空間の様子を示すデー夕をクライアン ト装置 3へ送信する。 参加するユーザーは、 その空間における位置情報を サーバ装置 1へ送るので、 そのユーザーの位置からの視点に対応した静止 画をサーバ装置 1からクライアント装置 3へ送信される (近傍空間抽出機 能部 2 5、 モデル変換機能部 2 6 ) 。 The server device 1 authenticates the user who wants to participate in cyberspace (the basic space control function section 22 and the user authentication function section 39), and after the authentication, the state of the space viewed from the user's point of view. The client transmits the indicated date and time to the client device 3. Participating users can use location information Since the image is sent to the server device 1, a still image corresponding to the viewpoint from the position of the user is transmitted from the server device 1 to the client device 3 (neighboring space extraction function unit 25, model conversion function unit 26).
サーバ装置 1からクライアント装置 3へ送信されるデータは、 上記の背 景となる静止画、 各オブジェク トの形状を示す静止画と位置情報、 参加了 バター Aの体型 ·姿勢パラメータ値群と頭部 ·服装画像データと位置情報 、 空間とオブジェク トの属性値群と機能群などである (図 5参照) 。  The data transmitted from the server device 1 to the client device 3 includes the above-described still image as the background, a still image indicating the shape of each object and position information, the participation of the butter A, the body type, posture parameter values, and the head. · Clothing image data and location information, space and object attribute values and function groups (see Fig. 5).
② 空間の視覚化  ② Visualization of space
サーバ装置 1から空間データを受信したクライアン ト装置 3は、 図 5に 示すようにサイバースペースを視覚化する (イベント制御部 1 8 1、 背景 表示部 1 8 2、 制御 ·演算手段 1 7 9、 表示部 1 7 6 ) 。 その方法は、 先 ず空間の背景を示す遠近法による静止画上に、 オブジェク トや自己、 ある いは他人のアバター Aの姿を示す静止画を、 その配置の奥行きの深さに応 じて縮小し (オブジェク ト · アバター表示部 1 8 3による遠方画像縮小機 能) 、 深い方から順に背景画に上書きしていく (オブジェク ト ' ァバタ一 表示部 1 8 3による前方画像上書き機能) 。  The client device 3 that has received the spatial data from the server device 1 visualizes the cyberspace as shown in FIG. 5 (event control section 181, background display section 182, control / calculation means 179, Display section 1 7 6). The method is based on the perspective image showing the background of the space, and the still image showing the avatar A of the object, the self, or the other person, according to the depth of the arrangement. The image is reduced (far-field image reduction function using the object / avatar display section 183) and overwritten on the background image in order from the deepest one (the forward image overwrite function using the object / avatar display section 183).
ユーザーは、 自分の代理人であるアバター Aを通じて行動 (移動) する ものであり、 アバ夕一 Aは図 5に示すように 3次元キャラクタ一として空 間の中にいる。 アバター Aの移動は、 アバター制御部 1 8 4、 位置制御マ ネージャー 1 8 5により制御 '管理されながら行なわれ、 他のアバ夕一や 柱、 壁などのオブジェク トが存在する場合には、 移動は不可と規制される (衝突制御機能) 。  The user acts (moves) through his / her agent, Avatar A. As shown in Fig. 5, Ava Yuichi A is in the space as a three-dimensional character. The movement of avatar A is controlled and managed by the avatar control section 184 and the position control manager 185, and if there are other objects such as avatars, pillars, walls, etc. Is regulated as impossible (collision control function).
ユーザーは、 例えば、 マウス 1 7 1を用いてアバター Aを移動させるよ うになつており、 ユーザーがマウス 1 7 1 を例えば左ボタンを押しながら 左右に動かすと、 アバ夕一 Aは左右に歩く。 マウス 1 7 1の左ボタンを押 しながら前後に動かすとアバター Aは前後に動く。 この場合、 アバター A が後方に動く と遠近法によりアバター Aは小さくなり、 前方に来るとアバ ター Aは大きくなる (図 5参照) 。 For example, the user moves the avatar A using the mouse 171, and when the user moves the mouse 171 left and right while pressing the left button, for example, Ava Yuichi A walks left and right. Avatar A moves back and forth if you move it back and forth while holding down the left button of mouse 17 1. In this case, Avatar A When A moves backward, Avatar A becomes smaller due to perspective, and when it comes forward, Avatar A becomes larger (see Fig. 5).
また、 マウス 1 7 1の右ボタンを押しながら上下左右に動かすと、 アバ ター Aの首が上下左右に回り、 見る方向が変わる。  If you move the mouse up and down and left and right while holding down the right button of the mouse 171, the avatar A's neck turns up and down and left and right, and the viewing direction changes.
マウス 1 7 1の左ボタンのダブルクリ ックによりその視点 (アバ夕一 A の空間内での位置と見ている方向) のデータがサーバ装置 1へ送られ、 サ ーバ装置 1側でその視点に対する空間の見え方が静止画として合成され、 この静止画データがサーバ装置 1からクライアント装置 3へ送信されて、 クライアン ト装置 3の画面に表示される。 すなわち、 本システムにおける サイバースペースでの S O M A空間における歩行は、 上記の方法で実現し ているものであり、 この方法あるいはシステムを 「 3次元キャラクター移 動 +停止時視野合成」 と呼んでいる。  Mouse 17 1 Double-clicking the left button of the mouse sends the data of the viewpoint (the position in the space of Aba Yuichi A and the viewing direction) to the server 1 and the server 1 The appearance of the space with respect to is synthesized as a still image, and the still image data is transmitted from the server device 1 to the client device 3 and displayed on the screen of the client device 3. In other words, the walking in SOMA space in cyberspace in this system is realized by the above-mentioned method, and this method or system is called “3D character movement + stop-time view synthesis”.
この方法あるいはシステムの特徴は、 クライアン ト装置 3側の負荷が少 ないことであり、 サーバ装置 1側は、 高性能グラフィ ックスコンピュータ を使用しているので、 高品質な静止画をユーザーの視点に応じて合成し、 その静止画データをクライアント装置 3へ容易に送ることができる。  The feature of this method or system is that the load on the client device 3 is small, and the server device 1 uses a high-performance graphics computer, so that high-quality still images can be viewed from the user's viewpoint. The still image data can be easily sent to the client device 3.
また、 サイバースペースのショ ッ ピングモールや、 仮想美術館は、 V R M Lで行なっている 「動的視点移動」 をスムーズに行なうより、 立ち止ま つた時の画像の品質が重要であり、 本発明の方がクライアント装置 3側と しては、 低価格なパフコンなどでサイバースペースに参加ができるので、 非常に有利となる。  Also, in shopping malls and cyber museums in cyberspace, the quality of images when stopping is more important than the smooth “dynamic viewpoint movement” performed by VRML. The client device 3 is very advantageous because it can participate in cyberspace with a low-cost puff con or the like.
また、 アバ夕一 Aの移動に際しては、 他のアバ夕一 Aやオブジェク トの 相互の位置の衝突を検出し、 移動を制御しており (アバ夕一制御部 1 8 4 、 位置制御マネージャー 1 8 5 ) 、 これにより 2次元の静止画を用いて 3 次元空間の視覚的遠近感を模倣することができる。  When moving Ababa Yuichi A, collision between other Abba Yuichi A and objects is detected and the movement is controlled (Aba Yuichi Control Section 184, Position Control Manager 1 8 5) This makes it possible to imitate the visual perspective of a three-dimensional space using a two-dimensional still image.
③ 音声によるコミ ュニケーション ユーザーがマイク 1 7 0を介して声を発すると、 その音声データをクラ イアント装置 3からサーバ装置 1へ送信し、 サーバ装置 1 は共に受信した アバター Aの位置関係データとともにすべてのユーザ一の音声データを実 時間で各クライアント装置 3へ送信する。 ③ Communication by voice When the user utters a voice through the microphone 170, the voice data is transmitted from the client device 3 to the server device 1, and the server device 1 transmits the voice data of all the users together with the avatar A positional relationship data received together. The data is transmitted to each client device 3 in real time.
サーバ装置 1からこれらのデータを受信したクライアント装置 3は、 当 該ァバタ一 Aと他のアバターと空間内で距離に応じてアバ夕一の音声の音 量を落とし、 右寄りの位置にいるアバ夕一の音声は、 右側の音量を左側よ り少し大きく、 且つ早く到達させて再生し、 これにより 3次元空間の音声 的模倣を行なうようにしている (スピーカ · オブジェク ト 1 8 8 ) 。  The client device 3, which has received these data from the server device 1, drops the volume of the avatar A's voice according to the distance between the avatar A and the other avatars in the space, and the avatar A located at the right side position. The first sound is reproduced with the right side volume slightly higher than the left side and reached earlier, thereby reproducing the sound in a three-dimensional space (speaker object 188).
すなわち、 図 5 1 に示すように、 他のクライアント装置 3からサーバ装 置 1を介して音声入力がある場合に (ステップ S 2 4 1 ) 、 サーバ装置 1 から送られてくる音源であるアバターの位置情報に基づいて空間内での自 己と当該他のアバ夕一との距離を計算する (ステップ S 2 4 2 ) 。 そして 、 ステップ S 2 4 3に示すように、 自己と他のアバ夕一との距離に応じて 再生させる音量を減衰させる (音声距離減衰機能) 。  That is, as shown in FIG. 51, when there is a voice input from another client device 3 via the server device 1 (step S 2 4 1), the avatar, which is the sound source sent from the server device 1, is input. Based on the position information, the distance between itself and the other avatar in the space is calculated (step S2422). Then, as shown in step S243, the sound volume to be reproduced is attenuated according to the distance between the user and another avatar (voice distance attenuating function).
また、 サーバ装置 1からの位置情報により他のアバターの方向を検出し (ステップ S 2 4 4 ) 、 他のアバターが例えば、 右側にいる場合にはステ ップ S 2 4 5及びステップ S 2 4 6に示すように、 左側の音声出力を時間 的に少し遅延させて右側の音声出力を早く再生させる (方向音声合成機能 ) 。 これにより 3次元空間の音声的模倣を行なう ( 3次元音声合成,再生  Further, the direction of another avatar is detected based on the position information from the server device 1 (step S2444), and if another avatar is on the right side, for example, steps S245 and S24 are performed. As shown in Fig. 6, the audio output on the left is slightly delayed in time, and the audio output on the right is reproduced quickly (directional audio synthesis function). By doing this, we can imitate speech in a 3D space (3D speech synthesis and playback
④ 空間内での活動 活動 Activities in the space
アバターが移動したり、 姿勢を変えたり、 オブジェク トを操作するなど の活動を行なうと、 それがィベントとして空間内の秩序を乱す恐れがない かを検査するためにサーバ装置 1へ問い合わされる (アバ夕一制御部 1 8 4、 位置制御マネージャー 1 8 5による活動結果報告機能) 。 サーバ装置 1は、 マネージャ一の定義にしたがってそれを検査し (マネ 一ジャーライブラリー 1 9による活動可能性検査機能) 、 可能ならばその 行動を許可すると同時に、 他のクライアント装置 3にそれを知らせる (マ ネージャーライブラリ一 1 9による活動反映機能) 。 これにより、 矛盾の ないコ ミ ュニケーションをするための制御を行なうことができる (共通空 間制御機能) 。 When the avatar moves, changes its posture, or performs an operation such as manipulating an object, the avatar is queried to the server device 1 to check whether the avatar does not disturb the order in the space as an event (ababa). Evening control section 18 4, activity result reporting function by position control manager 18 5). The server device 1 checks it according to the definition of the manager 1 (activity check function by the manager library 19), permits the action if possible, and notifies the other client devices 3 at the same time. (Activity reflection function by Manager Library 19). As a result, it is possible to perform control for communication without contradiction (common space control function).
⑤ 履歴機貪 I  履 歴 History I
アバ夕一群が空間内で活動した履歴を保存し、 後でこれを任意の角度か ら再現することができるようになつている (履歴マネージャー機能部 1 3 2による活動履歴保存 ·再現機能) 。  The history of Aba Yuichi's activities in the space is saved, and this can be reproduced later from any angle (Activity history storage / reproduction function by the history manager function unit 132).
このように本発明では、 サイバースペースを、 空間、 オブジェク ト、 ァ バターの 3つの要素に、 一定の規則や制限の機能を持たせたネガティブ · プログラ ミ ングによるマネージャーという要素を加えることで、 高度な機 能を持つサイバースペースを容易に構成することができる。  As described above, in the present invention, cyberspace is advanced by adding an element called a negative programming manager having a function of certain rules and restrictions to three elements of space, an object, and an avatar. Cyberspace with various functions can be easily configured.
また、 ネガティブ · プログラミ ングによるマネージャーの導入は、 サイ バースペースの構築の生産性を高め、 開発の成功率を向上させるのに重要 な役割を果しているものである。 これに加え、 サイバースペースを構成す る空間ゃォブジヱク トのライブラリ一をサーバ装置 1側の空間資源管理シ ステムで管理することでも、 その効果を高めている。  In addition, the introduction of managers through negative programming plays an important role in increasing the productivity of cyberspace construction and increasing the success rate of development. In addition, the effect is enhanced by managing a library of space objects that make up cyberspace with the space resource management system on the server device 1 side.
さらに、 クライアント装置 3側に空間ゃォブジヱク トの 3次元モデルを 持ち込まず、 強力なグラフィ ックサーバで作成した 2次元静止画をベース にした 3次元空間の模倣をクライアン ト装置 3側で行なうことで、 低速の パソコンで、 高品質な画像で表現された空間に参加することができるもの である。 また、 V R M Lや、 J a V a言語はクライアント装置 3側で 3次 元空間の視覚化 (レンダリ ング) を行なっているため、 画像の品質を上げ ようと思うと、 クライアン ト装置 3に高い性能を要求することになるとい う欠陥を、 本発明では、 高性能のサーバ装置 1 にレンダリ ングを行なわせ ることで改善している。 Furthermore, without bringing a 3D model of the space object to the client device 3 side, the client device 3 can imitate a 3D space based on a 2D still image created by a powerful graphics server. It is a low-speed personal computer that allows you to participate in a space represented by high-quality images. In VRML and the Java language, visualization (rendering) of the three-dimensional space is performed on the client device 3 side, so if the quality of the image is to be improved, the client device 3 has high performance. Will require In the present invention, such defects are improved by rendering the high-performance server device 1 for rendering.
また、 3次元音声合成 ·再生機能で、 臨場感あるコミュニケーションを 実現できるものであり、 この点でも、 従来の方法にはなかった高度な空間 を実現することができるものである。  In addition, the 3D speech synthesis / reproduction function can realize realistic communication, and in this regard, it can also realize a sophisticated space that was not possible with conventional methods.
なお、 サーバ装置 1、 クライアント装置 3での各種のオブジェク ト群に おける手順や、 システム全体の手順をプログラムとして格納したフロッ ピ 一ディスクにも本発明の範囲に含まれるものである。  The procedure of various object groups in the server device 1 and the client device 3 and a floppy disk storing the procedure of the entire system as a program are also included in the scope of the present invention.
ところで、 本発明のサイバースペースの応用として以下のようなものに 適用できる。 すなわち、 画質の高精細性、 マルチユーザー性、 音声による リアルタイム会話機能、 及びマネージャ一による空間秩序維持機能の特徴 を活かしたネッ トワークを介した共同作業や、 コ ミュニケーショ ンとして は、 織物や工業製品等のデザイン開発がある。 これらの作業は、 デザイン の対象となる物がどれだけ現実味を帯びているかが非常に重要であり、 ま たそれを互いに指さしながらコミュニケーションをすることが不可欠であ ? o  By the way, the present invention can be applied to the following as an application of cyberspace. In other words, in collaboration with a network that takes advantage of the features of high-definition image quality, multi-user characteristics, real-time conversation function by voice, and the function of maintaining spatial order by a manager, and communication, textiles and industrial products There is design development such as. In these tasks, it is very important how realistic the design target is, and it is essential to communicate while pointing to each other.
このような伏况はメ一カーから消費者に製品の操作を教えたり、 故障診 断の支援や整備の方法を指示したりする場合にも有効である。 更に、 商品 販売においてもその商品をどれだけ実際のものに近くディスプレーできる かが重要である。 遠隔会議、 遠隔講義等のネッ トワークを介したコ ミュニ ケーシヨンは、 リアリティのある空間や物を共有して、 音声で行なうとと もに、 発言のタイ ミ ングなどの制御が重要である。 このような機能空間が 相互に連結し、 ネッ トワーク上にオフィス、 企業、 美術館等も実現できる ものである。  Such a situation is also effective when a manufacturer teaches a consumer how to operate a product, or when a fault diagnosis is supported or a maintenance method is instructed. Furthermore, it is important for the sale of goods to be able to display the goods as close to the real thing as possible. Communication via networks such as teleconferencing and distance lectures involves sharing a space or object with reality and voice, and it is important to control the timing of remarks. Such functional spaces are interconnected, and offices, companies, museums, etc. can be realized on the network.
また、 本発明のサイバースペースによって、 在宅動務、 在宅学習が可能 になると、 物理的なオフィスを持たない会社や、 教室のない学校が可能に なるし、 直接その場に出向かなくても見れる美術館、 図書館、 博物館で出 来るものである。 ネッ トワーク上での情報交換やビジネスも現在よりも、 もつと広範囲に且つ安全に行なえるようになるものである。 In addition, if the cyberspace of the present invention enables home work and home study, companies that do not have a physical office or schools that do not have classrooms will be possible. In other words, you can find them at museums, libraries, and museums where you can see them without having to go there. Information exchange and business on the network will become more extensive and safer than now.
なお、 上記の説明において、 クライアン ト装置 3側のパソコンを、 例え ば、 Wi ndows を搭載しているパソコンについて例示したが、 これに限られ るものではなく、 本発明の基本的技術思想を Maci ntosh タイプの低価格な パソコンにも適用できることはもちろんである。  In the above description, the personal computer on the client device 3 side is exemplified, for example, a personal computer equipped with Windows. However, the present invention is not limited to this. Of course, it can also be applied to low-priced personal computers of the ntosh type.

Claims

請 求 の 範 面 Scope of claim
1. サーバ装置 ( 1 ) と、 1台あるいは複数台のクライアント装置 (3) とがコンピュータネッ トワーク上で相互に結ばれており、 このコンビユー タネッ トワーク上で形成される仮想社会としてのサイバースペースを実現 するためのサイバースペースの作成方法において、 上記サイバースペース は、 教室、 会議室などの箱型や大学、 町などのオープン型等の 3次元空間 の形状や性質を表すデータとしての空間 (S) と、 この空間 (S) 内に任 意に配置されて特有の属性群や機能群を持った物としてのォブジェク ト ( 0) と、 上記空間 (S) 内に参加して活動するユーザ一の代理人として視 覚化されたキャラクタ一としてのアバター (A) と、 上記オブジェク ト ( 0) やアバ夕一 (A) が備えている機能を一定の条件下で発揮させないよ うにして上記空間 (S) 内の秩序を維持する制御機能としてのマネージャ 一 (M) との 4つの要素でモデル化され、 サーバ装置 ( 1 ) は、 上記空間1. A server device (1) and one or more client devices (3) are interconnected on a computer network, and a cyberspace as a virtual society formed on this computer network is established. In the method of creating a cyberspace for realization, the above-mentioned cyberspace is a space as data representing the shape and properties of a three-dimensional space such as a box type such as a classroom or a conference room, or an open type such as a university or a town. And an object (0) arbitrarily placed in this space (S) and having a specific attribute group and function group, and a user who participates and operates in the space (S). The avatar (A) as a character visualized as an agent and the functions provided by the object (0) and Aba Yuichi (A) must not be exercised under certain conditions. Modeled in four elements of the manager one (M) of a control function for maintaining order in the space (S), the server apparatus (1), said space
(S) 、 オブジェク ト (0) 、 マネ一ジャー (M) 及びアバター (A) の つの要素で記述されたサイバースペース構築用のデータを保持するデ一 夕保持機能 ( 1 1 ) と、 このデータ保持機能 ( 1 1 ) のデータを一人また は複数のユーザーが自己のクライアント装置 (3) からネッ トワーク (2 ) を介して共有するための共通空間制御機能 ( 1 0) ( 1 1 ) と、 ネッ ト ワーク (2) 上のクライアン ト装置 (3) とデータや信号の授受を行なう 交信機能 ( 1 3) とを備え、 クライアント装置 (3) は、 上記サーバ装置(S), an object (0), a manager (M), and an avatar (A). A common space control function (10) (11) for one or more users to share the data of the holding function (11) from their own client device (3) via the network (2); It has a communication function (13) for exchanging data and signals with a client device (3) on the network (2), and the client device (3) has the server device described above.
( 1 ) から送られてきたサイバースペース構築用のデータを受信して保持 するサイバースペースデータ受信機能 ( I 78) と、 このサイバースべ一 スデータ受信機能 ( 1 78) からデータを受け取って画面上に 2次元静止 画を視覚化させるサイバースペース視覚化機能と、 サーバ装置 ( 1 ) との データや信号の授受を行なう交信機能 ( 1 77) とを備え、 クライアン ト 装置 ( 3) からの要求によりサーバ装置 ( 1 ) から 2次元静止画を受け取 つて、 遠近法により 3次元空間模倣描画を行なうようにしていることを特 徵とするサイバースペースの作成方法。 The cyberspace data receiving function (I78), which receives and holds the data for building cyberspace sent from (1), and the data received from this cyberspace data receiving function (178) on the screen It has a cyberspace visualization function for visualizing two-dimensional still images and a communication function (177) for exchanging data and signals with the server device (1). A method for creating a cyberspace, which is characterized in that a two-dimensional still image is received from a server device (1) in response to a request from the device (3) and a three-dimensional imitation drawing is performed by a perspective method.
2. サーバ装置 ( 1 ) には、 サイバースペース構築用のデータを定義して 格納、 検索、 更新、 削除する空間資源管理機能 ( 1 1 ) を備えていること を特徴とする請求項 1記載のサイバースペースの作成方法。  2. The server device (1) is provided with a space resource management function (11) for defining, storing, retrieving, updating, and deleting data for building a cyberspace. How to create cyberspace.
3. サーバ装置 ( 1 ) には、 アバター (A) の活動履歴保存や再現機能 ( 3. The server device (1) has an avatar (A) activity history storage and reproduction function (
1 32) を備えていることを特徵とする請求項 1または請求項 2記載のサ ィバースペースの作成方法。 13. The method for creating a cyberspace according to claim 1 or claim 2, wherein the method comprises:
4. サーバ装置 ( 1 ) の上記共通空間制御機能 ( 1 0) ( 1 1 ) は、 サイ バースペースを構成する空間 (S) とォブジェク ト (0) を各ユーザーの 視点から見た 2次元静止画を生成する視界画像合成機能と、 各クライアン ト装置 (3) から送られてくるアバター (A) の活動の可能性をマネージ ヤー (M) の定義に基づいて検査する活動可能性検索機能と、 あるアバ夕 ― (A) の活動を各クライアント装置 (3) に反映させるためにクライア ン ト装置 (3) へ通知する活動反映機能とを備えていることを特徴とする 請求項 1〜請求項 3にいずれか記載のサイバースペースの作成方法。  4. The common space control function (10) (11) of the server device (1) is a two-dimensional stationary system that views the space (S) and the object (0) constituting the cyber space from the viewpoint of each user. A view image synthesizing function to generate images and an activity possibility search function to check the possibility of the activity of the avatar (A) sent from each client device (3) based on the definition of the manager (M) A function of notifying a client device (3) that the activity of (a) is reflected in each client device (3) so that the activity of (A) is reflected in each client device (3). The creation method of cyberspace described in any of Section 3.
5. サーバ装置 ( 1 ) の資源管理機能 ( 1 1 ) は、 管理する資源をその性 質やそれを処理するプログラム群を共有するものをクラスとして管理する クラス化機能と、 クラス化機能のクラス間の汎化■集約 ·その他の関連を 管理する関連管理機能と、 クラスの資源としてのインスタンスを性質から 高速検索 ·更新 ·消去を可能にするインスタンスアクセス機能と、 ォペレ —ティ ングシステムが持つ既存のプログラムをクラスのメ ソ ッ ドとして再 構成する既存機能統合機能を備えていることを特徴とする請求項 1〜請求 項 4にいずれか記載のサイバースペースの作成方法。  5. The resource management function (11) of the server device (1) is a classifying function that manages the resources to be managed as classes that share the characteristics and the programs that process them, and a class of the classifying function. Generalization / aggregation between the groups · A relation management function that manages other relations, an instance access function that enables high-speed search, update, and deletion of instances as class resources from their properties, and an existing operating system The cyberspace creation method according to any one of claims 1 to 4, further comprising an existing function integration function for reconfiguring the program as a class method.
6. クライアン ト装置 (3) のサイバースペース視覚化機能は、 空間 (S ) の背景を示す遠近法による広角静止画上にオブジェク ト (〇) やアバ夕 一 (A) の姿を示す静止画を、 その配置の奥行きの深さに応じた縮小を行 なう遠方画像縮小機能と、 深い方から順に背景画に上書きすることで 2次 元の静止画を使って 3次元空間の遠近感を模倣する前方画像上書き機能と を備えていることを特徴とする請求項 1〜請求項 5にいずれか記載のサイ バースペースの作成方法。 6. The cyberspace visualization function of the client device (3) A perspective image showing the object (〇) and the image of Ababa Yuichi (A) on a wide-angle perspective still image showing the background of (), and a reduction according to the depth of the arrangement. 2. The method according to claim 1, further comprising: a reduction function; and a forward image overwriting function of imitating perspective in a three-dimensional space using a two-dimensional still image by overwriting a background image in order from the deepest. A method for creating a cyberspace according to any one of claims 5 to 5.
7. クライアン ト装置 ( 3 ) のサイバースペース視覚化機能は、 アバ夕一 (A) ゃォブジェク ト (0) の相互の位置の衝突を検出してアバター (A 7. The cyberspace visualization function of the client device (3) detects the collision of the avatar (A) with the position of the avatar (A) and the object (0).
) の移動を制御する衝突制御機能を備えていることを特徴とする請求項 1 〜請求項 6にいずれか記載のサイバースペースの作成方法。 7. The method for creating cyberspace according to claim 1, further comprising a collision control function for controlling movement of the cyberspace.
8. クライアン ト装置 ( 3) には、 音の発生位置とアバター (A) との位 置関係により発生音を 3次元的に合成 ·再生させる 3次元音声合成 ·再生 機能を備え、 この 3次元音声合成 ·再生機能は、 自己のアバター (A) と 他のアバ夕一 (A) と空間 (S) 内で距離に応じてァバタ一 (A) の音声 の音量の大小を制御する音声距離減衰機能と、 右側にいるアバ夕一 (A) の音声を左耳より右耳に早く到達させる方向音声合成機能とを備えている ことを特徴とする請求項 1〜請求項 7にいずれか記載のサイバースペース の作成方法。  8. The client device (3) has a three-dimensional speech synthesis and playback function that synthesizes and reproduces the generated sound three-dimensionally according to the positional relationship between the sound generation position and the avatar (A). The voice synthesis and playback function controls the sound volume of the avatar (A) and other avatars (A) according to the distance in the space (S) with the avatar (A) and the other avatar (A). 8. The cyber device according to any one of claims 1 to 7, comprising a function and a directional speech synthesis function for causing the sound of Aba Yuichi (A) on the right side to reach the right ear earlier than the left ear. How to create a space.
9. サーバ装置 ( 1 ) と、 1台あるいは複数台のクライアン ト装置 ( 3) とがコンピュータネッ トワーク上で相互に結ばれており、 このコンビユ ー 夕ネッ トワーク上で形成される仮想社会としてのサイバースペースを実現 するためのサイバースペースの作成方法において、 上記サイバースペース は、 教室、 会議室などの箱型や大学、 町などのオープン型等の 3次元空間 の形状や性質を表すデ一夕としての空間 (S) と、 この空間 (S) 内に任 意に配置されて特有の属性群や機能群を持った物としてのオブジェク ト ( 0) と、 上記空間 (S) 内に参加して活動するユーザーの代理人として視 覚化されたキャラクターとしてのアバ夕一 (A) と、 上記オブジェク 卜 (9. The server device (1) and one or more client devices (3) are interconnected on a computer network, and a virtual society formed on this convenience network is established. In the method of creating cyberspace for realizing cyberspace, the above-mentioned cyberspace is used as a data representing the shape and properties of a three-dimensional space such as a box type such as a classroom or a conference room, or an open type such as a university or a town. Space (S), an object (0) that is arbitrarily placed in this space (S) and has a specific set of attributes and functions, and a participant in the space (S) See as a delegate for active users Ava Yuichi (A) as a masqueraded character and the above object (
〇) やアバター (A) が備えている機能を一定の条件下で発揮させないよ うにして上記空間 (S) 内の秩序を維持する制御手段としてのマネージャ ― (M) との 4つの要素でモデル化され、 サーバ装置 ( 1 ) は、 上記空間 (S) 、 オブジェク ト (◦) 、 マネージャ一 (M) 及びアバター (A) の 4つの要素で記述されたサイバースペース構築用のデータを保持するデ一 タ保持手段 ( 1 1 ) と、 このデ一夕保持手段 ( 1 1 ) のデータを一人また は複数のユーザーが自己のクライアント装置 (3) からネッ トワーク (2 ) を介して共有するための共通空間制御手段 ( 1 0) ( 1 1 ) と、 ネッ ト ワーク (2) 上のクライアント装置 (3) とデータや信号の授受を行なう 交信手段 ( 1 3) とを備え、 クライアン ト装置 (3) は、 上記サーバ装置 ( 1 ) から送られてきたサイバースペース構築用のデータを受信して保持 するサイバースペースデ一夕受信手段 ( 1 78) と、 このサイバースべ一 スデータ受信手段 ( 1 7 8) から 2次元静止画データを受け取って画面上 に遠近法により 3次元空間模倣描画を行なうサイバースペース視覚化手段 と、 サーバ装置 ( 1 ) とのデータや信号の授受を行なう交信手段 ( 1 77 ) とを備えていることを特徴とするサイバースペースの作成装置。 Ii) A manager as a control means to maintain the order in the space (S) by preventing the functions of the avatar (A) from being performed under certain conditions. The server device (1) is modeled and holds data for building cyberspace described by four elements: the space (S), the object (◦), the manager (M), and the avatar (A). The data holding means (11) and the data of the data holding means (11) are shared by one or more users from their own client device (3) via the network (2). And a communication device (13) for transmitting and receiving data and signals to and from a client device (3) on a network (2). 3) is sent from the server (1) above. Cyberspace data receiving means (178) that receives and holds the data for building cyberspace, and two-dimensional still image data received from the cyberspace data receiving means (178) on the screen. Cyberspace characterized by comprising cyberspace visualization means for performing three-dimensional space imitation drawing by perspective and communication means (177) for exchanging data and signals with the server device (1). Making equipment.
1 0. サーバ装置 ( 1 ) には、 サイバースペース構築用のデータを定義し て格納、 検索、 更新、 削除する空間資源管理手段 ( 1 1 ) を備えているこ とを特徴とする請求項 9記載のサイバースペースの作成装置。  10. The server device (1) is provided with space resource management means (11) for defining, storing, searching, updating, and deleting data for building cyberspace. Creation device of the described cyberspace.
1 に サーバ装置 ( 1 ) には、 アバター (A) の活動履歴保存や再現手段 ( 1 3 2) を備えていることを特徴とする請求項 9または請求項 1 0記載 のサイバースペースの作成装置。  10. The cyberspace creation apparatus according to claim 9 or claim 10, wherein the server device (1) is provided with means for storing and reproducing the activity history of the avatar (A). .
1 2. サーバ装置 ( 1 ) の上記共通空間制御手段 ( 1 0) ( 1 1 ) は、 サ ィバ一スペースを構成する空間 (S) とォブジェク 卜 (〇) を各ユーザー の視点から見た 2次元静止画を生成する視界画像合成手段と、 各クライア ン ト装置 (3) から送られてくるアバター (A) の活動の可能性をマネー ジャー (M) の定義に基づいて検査する活動可能性検索手段と、 あるアバ 夕一 (A) の活動を各クライアント装置 (3) に反映させるためにクライ アン ト装置 (3) へ通知する活動反映手段とを備えていることを特徴とす る請求項 9〜請求項 1 1にいずれか記載のサイバースペースの作成装置。 1 2. The common space control means (10) (11) of the server device (1) uses the space (S) and the object (〇) constituting the server space as viewed from each user's viewpoint. View image synthesizing means for generating a two-dimensional still image; An activity possibility search means that checks the possibility of the activity of the avatar (A) sent from the client device (3) based on the definition of the manager (M). The cyberspace according to any one of claims 9 to 11, further comprising: activity reflecting means for notifying the client device (3) so that the information is reflected on each client device (3). Making equipment.
1 3. サーバ装置 ( 1 ) の資源管理手段 ( 1 1 ) は、 管理する資源をその 性質やそれを処理するプログラム群を共有するものをクラスとして管理す るクラス化手段と、 クラス化手段のクラス間の汎化 ·集約 ·その他の関連 を管理する関連管理手段と、 クラスの資源としてのィンスタンスを性質か ら高速検索 ·更新 ·消去を可能にするィンスタンスアクセス手段と、 オペ レ一ティ ングシステムが持つ既存のプログラムをクラスのメ ソッ ドとして 再構成する既存機能統合手段を備えていることを特徴とする請求項 9〜請 求項 1 2にいずれか記載のサイバースペースの作成装置。 1 3. The resource management means (11) of the server device (1) consists of a classifying means for managing the resources to be managed as classes that share the properties and programs that process them, and a classifying means for the classifying means. Related management means for managing generalization, aggregation, and other associations between classes, and instance access means for enabling high-speed search, update, and deletion of instances as class resources, and operating The cyberspace creation apparatus according to any one of claims 9 to 12, further comprising an existing function integration means for reconfiguring an existing program of the system as a class method.
1 4. クライアン ト装置 (3) のサイバースペース視覚化手段は、 空間 ( S) の背景を示す遠近法による広角静止画上にオブジェク ト (0) やアバ 夕— (A) の姿を示す静止画を、 その配置の奥行きの深さに応じた縮小を 行なう遠方画像縮小手段と、 深い方から順に背景画に上書きすることで 2 次元の静止画を使って 3次元空間の遠近感を模倣する前方画像上書き手段 とを備えていることを特徴とする請求項 9〜請求項 1 3にいずれか記載の サイバースペースの作成装置。  1 4. The cyberspace visualization means of the client device (3) is based on a perspective wide-angle still image showing the background of the space (S), and a static image showing the object (0) and the avatar (A). A distant image reduction unit that reduces the image according to the depth of the arrangement, and a two-dimensional still image is used to imitate perspective in a three-dimensional space by overwriting the background image in order from the deepest one The cyberspace creation device according to any one of claims 9 to 13, further comprising a front image overwriting means.
1 5. クライアン ト装置 (3) のサイバースペース視覚化手段は、 アバ夕 一 (A) やオブジェク ト (0) の相互の位置の衝突を検出してアバ夕一 ( A) の移動を制御する衝突制御手段を備えていることを特徴とする請求項 1 5. The cyberspace visualization means of the client device (3) controls the movement of the Ababa Yuichi (A) by detecting the collision of the Abba Yuichi (A) and the object (0) with each other. Claims characterized by comprising collision control means.
9〜請求項 1 4にいずれか記載のサイバースペースの作成装置。 The cyberspace creation device according to any one of claims 9 to 14.
1 6. クライアン ト装置 (3) には、 音の発生位置とアバター (A) との 位置関係により発生音を 3次元的に合成 ·再生させる 3次元音声合成 ·再 生手段を備え、 この 3次元音声合成 ·再生手段は、 自己のアバター (A ) と他のアバ夕一 (A ) と空間 (S ) 内で距離に応じてアバター (A ) の音 声の音量の大小を制御する音声距離減衰手段と、 右側にいるアバター (A ) の音声を左耳より右耳に早く到達させる方向音声合成手段とを備えてい る二とを特徴とする請求項 9〜請求項 1 5にいずれか記載のサイバースべ ースの作成装置。 1 6. The client device (3) has a sound generation position and an avatar (A). Equipped with three-dimensional speech synthesis and playback means that synthesizes and reproduces the generated sound three-dimensionally according to the positional relationship. Distance attenuation means for controlling the volume of the sound of the avatar (A) according to the distance in the space and the space (S), and the direction in which the sound of the avatar (A) on the right reaches the right ear earlier than the left ear The cyberbase creation apparatus according to any one of claims 9 to 15, further comprising a speech synthesis unit.
PCT/JP1997/002273 1996-06-28 1997-06-27 Server space forming method and apparatus WO1998000812A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP8/169423 1996-06-28
JP16942396A JPH1021215A (en) 1996-06-28 1996-06-28 Method and device for generating cyber space

Publications (1)

Publication Number Publication Date
WO1998000812A1 true WO1998000812A1 (en) 1998-01-08

Family

ID=15886326

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1997/002273 WO1998000812A1 (en) 1996-06-28 1997-06-27 Server space forming method and apparatus

Country Status (2)

Country Link
JP (1) JPH1021215A (en)
WO (1) WO1998000812A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2477793A (en) * 2010-02-15 2011-08-17 Sony Corp A method of creating a stereoscopic image in a client device
CN105631597A (en) * 2015-12-31 2016-06-01 中国南方电网有限责任公司 Construction method for transformer substation three-dimensional visual platform

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000270305A (en) * 1999-03-12 2000-09-29 Kansai Tlo Kk Multi-point conference system
JP5039922B2 (en) 2008-03-21 2012-10-03 インターナショナル・ビジネス・マシーンズ・コーポレーション Image drawing system, image drawing server, image drawing method, and computer program
JP5100494B2 (en) * 2008-05-08 2012-12-19 株式会社エヌ・ティ・ティ・ドコモ Virtual space providing apparatus, program, and virtual space providing system
JP6187054B2 (en) * 2013-09-03 2017-08-30 ソニー株式会社 Information processing apparatus, information processing method, and program
JP7228338B2 (en) * 2018-05-22 2023-02-24 株式会社 ディー・エヌ・エー System, method and program for distributing videos
JPWO2020203999A1 (en) * 2019-04-01 2020-10-08
WO2024009784A1 (en) * 2022-07-05 2024-01-11 ソニーグループ株式会社 Spatial information management device, spatial information management system, spatial information management method, and recording medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0887605A (en) * 1994-09-20 1996-04-02 Sony Corp Simulation system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0887605A (en) * 1994-09-20 1996-04-02 Sony Corp Simulation system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FUJITSU, May 1996, Vol. 47, No. 3, SUGAWARA, KENJI, "CyberSpace: Fujitsu Habitat II", pages 240-246. *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2477793A (en) * 2010-02-15 2011-08-17 Sony Corp A method of creating a stereoscopic image in a client device
US8965043B2 (en) 2010-02-15 2015-02-24 Sony Corporation Method, client device and server
CN105631597A (en) * 2015-12-31 2016-06-01 中国南方电网有限责任公司 Construction method for transformer substation three-dimensional visual platform

Also Published As

Publication number Publication date
JPH1021215A (en) 1998-01-23

Similar Documents

Publication Publication Date Title
Churchill et al. Collaborative virtual environments: digital places and spaces for interaction
Greenhalgh Large scale collaborative virtual environments
USRE46309E1 (en) Application sharing
KR102219367B1 (en) Method, apparatus, and system of online virtual 3d exhibition
Leigh et al. A review of tele-immersive applications in the CAVE research network
Normand et al. The COVEN project: Exploring applicative, technical, and usage dimensions of collaborative virtual environments
US7809789B2 (en) Multi-user animation coupled to bulletin board
Leigh et al. Supporting transcontinental collaborative work in persistent virtual environments
KR20120050980A (en) Spatial interfaces for realtime networked communications
CN103095828A (en) Web three dimensional (3D) synchronous conference system based on rendering cloud and method of achieving synchronization
Xu et al. A flexible context architecture for a multi-user GUI
KR20120118019A (en) Web browser interface for spatial communication environments
Saar VIRTUS: A collaborative multi-user platform
WO1998000812A1 (en) Server space forming method and apparatus
Dai et al. Virtual spaces-VR projection system technologies and applications
Joslin et al. Trends in networked collaborative virtual environments
Snowdon et al. Inhabited information spaces: living with your data
Shen et al. Agent-aided collaborative virtual environments over HLA/RTI
JP2001167031A (en) Device and method for providing information
Suzuki et al. Virtual real-time 3D object sharing for supporting distance education and training
Frecon DIVE: Communication architecture and programming model
WO2012053001A2 (en) Virtual office environment
Nutt et al. Software support for a virtual planning room
TWI799195B (en) Method and system for implementing third-person perspective with a virtual object
McCahill et al. User interfaces for places and things in croquet learning spaces

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA CN KR SG US VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA