U.S. Pat. No. 8,189,813
AN AUDIO SYSTEM AND METHOD FOR EFFECTIVELY REPRODUCING SOUND IN ACCORDANCE WITH THE DISTANCE BETWEEN A SOURCE AND A POSITION WHERE THE SOUND IS HEARD IN VIRTUAL SPACE
AssigneeKonami Digital Entertainment Co Ltd
Issue DateSeptember 26, 2008
Illustrative Figure
Abstract
In a sound processing apparatus, a storage unit stores, for example, a distance range in which sound uttered from a sound source is varied as information showing an area associated with the sound source. A determination unit determines the distance between the sound source and an attended point which is a position in which the sound uttered from the sound source is heard, and determines whether or not the attended point is in the distance range stored in the storage unit. A varying unit varies the sound when the attended point is in the distance range. A reproducing unit reproduces the sound varied by the varying unit.
Description
DESCRIPTION OF REFERENCE NUMERALS 100: information processing device101: CPU102: ROM103: RAM104: interface105: controller106: external memory107: image processor108: DVD-ROM drive109: NIC110: sound processor200: sound processing apparatus201: storage unit202: determination unit203: varying unit204: reproducing unit301: sound source302: attended point BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below. While the following describes embodiments in which the present invention is adapted to a game information processing device for the ease of understanding, the embodiments to be described below are written for explanation and not to limit the scope of the invention. Therefore, those skilled in the art can employ embodiments in which the individual elements or all the elements are replaced with equivalent ones, and which are also encompassed in the scope of the invention. Embodiment 1 FIG. 1is a schematic diagram showing an overview of configurations of a typical information processing device which performs functions of the sound processing apparatus of the present invention by executing a program. Hereinafter, the configurations are described by referring to this drawing. An information processing device100comprises a CPU (Central Processing Unit)101, a ROM (Read Only Memory)102, a RAM (Random Access Memory)103, an interface104, a controller105, an external memory106, an image processor107, a DVD-ROM (Digital Versatile Disc-Read Only Memory) drive108, an NIC (Network Interface Card)109, and a sound processor110. As a DVD-ROM storing a program and data for a game is loaded onto the DVD-ROM drive108and the information processing device100is powered on, the program is executed to realize the sound processing apparatus of the present embodiment. The CPU101controls the general operation of the information processing device100and is connected to individual components, and exchanges control signals and data therewith. Further, by using an ALU (Arithmetic Logic Unit) (not shown), the CPU101can perform arithmetic operations such as addition, subtraction, multiplication, division, etc., ...
DESCRIPTION OF REFERENCE NUMERALS
100: information processing device101: CPU102: ROM103: RAM104: interface105: controller106: external memory107: image processor108: DVD-ROM drive109: NIC110: sound processor200: sound processing apparatus201: storage unit202: determination unit203: varying unit204: reproducing unit301: sound source302: attended point
BEST MODE FOR CARRYING OUT THE INVENTION
Embodiments of the present invention will be described below. While the following describes embodiments in which the present invention is adapted to a game information processing device for the ease of understanding, the embodiments to be described below are written for explanation and not to limit the scope of the invention. Therefore, those skilled in the art can employ embodiments in which the individual elements or all the elements are replaced with equivalent ones, and which are also encompassed in the scope of the invention.
Embodiment 1
FIG. 1is a schematic diagram showing an overview of configurations of a typical information processing device which performs functions of the sound processing apparatus of the present invention by executing a program. Hereinafter, the configurations are described by referring to this drawing.
An information processing device100comprises a CPU (Central Processing Unit)101, a ROM (Read Only Memory)102, a RAM (Random Access Memory)103, an interface104, a controller105, an external memory106, an image processor107, a DVD-ROM (Digital Versatile Disc-Read Only Memory) drive108, an NIC (Network Interface Card)109, and a sound processor110.
As a DVD-ROM storing a program and data for a game is loaded onto the DVD-ROM drive108and the information processing device100is powered on, the program is executed to realize the sound processing apparatus of the present embodiment.
The CPU101controls the general operation of the information processing device100and is connected to individual components, and exchanges control signals and data therewith. Further, by using an ALU (Arithmetic Logic Unit) (not shown), the CPU101can perform arithmetic operations such as addition, subtraction, multiplication, division, etc., bit operations such as bit addition, bit multiplication, bit inversion, bit shift, bit rotation, etc., on a storage area, or a register (not shown) which can be accessed at a high speed. Furthermore, the CPU101itself may be designed to be able to rapidly perform saturation operations such as addition, subtraction, multiplication, division, etc., for handling multimedia processor, vector operations such as trigonometric function, etc., or may realize these with a coprocessor.
An IPL (Initial Program Loader) which is executed immediately after power-on is stored in the ROM102. As the IPL is executed, the program stored in the DVD-ROM is read into the RAM103and is executed by the CPU101. Further, the RAM102stores a program and various data for an operating system necessary for controlling the general operation of the information processing device100.
The RAM103is for temporarily storing data and programs, and retains the program and data read from the DVD-ROM, and other data needed for progressing a game and chat communication. Further, the CPU101performs processes such as securing a variable area in the RAM103to work the ALU directly upon the values stored in the variable to perform operations, or storing the value stored in the RAM103in the register, performing operations on the register, and writing back the operation result to the memory, etc.
The controller105connected via the interface104receives an operation input which is made when a user plays a game such as a mah-jongg game, cards, etc.
The external memory106detachably connected via the interface104is rewritably stored data designating the play status (past performance, etc.) of a mah-jongg game, etc, data designating the progress status of the games, data of chat communication logs (records) in the case of network competition, and so on. As the user makes an instruction input via the controller105, these data can appropriately be recorded in the external memory106.
The program for realizing the game and the image data and sound data accompanying the game are stored in the DVD-ROM to be loaded into the DVD-ROM drive108. Under the control of the CPU101, the DVD-ROM drive108performs a process of reading from the DVD-ROM loaded therein to read a necessary program and data, and these are temporarily stored in the RAM103or the like.
The image processor107processes data read from the DVD-ROM by means of the CPU101and an image operation processor (not shown) comprised in the image processor107, and then records the data in a frame memory (not shown) in the image processor107. The image information recorded in the frame memory is converted into a video signal at a predetermined synchronous timing, which is in turn output to a monitor (not shown) connected to the image processor107. Thereby, image displays of various types are available.
The image operation processor can enable fast execution of an overlay operation of a two-dimensional image, a transparent operation such as alpha blending, and various kinds of saturation operations.
It is also possible to enable fast execution of an operation of rendering polygon information which is arranged in virtual three-dimensional space and to which various kinds of texture information are added, by using a Z buffer method to acquire a rendered image with a downward view of a polygon toward a predetermined sight line, arranged within the virtual three-dimensional space, from the predetermined viewpoint position.
Further, the CPU101and the image operation processor cooperate to be able to write a string of characters as a two-dimensional image in the frame memory or on each polygon surface according to font information which defines the shapes of characters.
For example, by storing information such as images of mah-jongg tiles and images of playing cards in the DVD-ROM and by loading the information into the frame memory, it is possible to display an image of a presently holding tile or presently holding card.
The NIC109serves to connect the information processing device100to a computer communication network (not shown) such as the Internet or the like. Such the NIC109is pursuant to the 10 BASE-T/100 BASE-T standard which is used when configuring a LAN (Local Area Network), or an analog modem for connecting to the Internet using a telephone circuit, an ISDN (Integrated Services Digital Network) modem, an ADSL (Asymmetric Digital Subscriber Line) modem, a cable modem for connecting to the Internet using a cable television circuit, or the like, and an interface (not shown) which intervenes between the CPU101and any one of such the modems.
The sound processor110converts sound data read from the DVD-ROM into an analog sound signal and outputs the converted sound signal from a speaker (not shown) connected thereto. Further, under the control of the CPU101, the sound processor110reads sound data of an effect sound to be produced during the progress of a game and outputs sounds from a speaker.
In a case where the sound data recorded on the DVD-ROM is MIDI data, the sound processor110refers to the sound source data included in the data, and converts the MIDI data into PCM data. Further, in a case where the sound data is compressed sound data of an ADPCM (Adaptive Differential Pulse Code Modulation) format or Ogg Vorbis format, etc., the sound processor110decompresses the data, converting it to PCM data. The PCM data is D/A (Digital/Analog) data converted at a timing corresponding to the sampling frequency of the data and output to the speaker, thereby enabling sound outputting.
In addition, the information processing device100may be configured to achieve the same functions as the ROM102, the RAM103, the external memory106, and the DVD-ROM which is to be loaded onto the DVD-ROM drive108or the like by using a large-capacity external storage device, such as a hard disk.
Next, processing to be performed by the sound processing apparatus200of the embodiment is described.
FIG. 2is a schematic diagram showing an overview of configurations of the sound processing apparatus200of the present invention. The sound processing apparatus200includes a storage unit201, a determination unit202, a varying unit203, and a reproducing unit204.
FIG. 3is a diagram showing a positional relation between a sound source301placed in three-dimensional virtual space and an attended point which the sound uttered from the sound source301reaches. The sound source301is a character object which can move in the virtual space and outputs sounds or effect sounds at a predetermined timing during the progress of a game. The sound processing apparatus200starts to reproduce predetermined sound data so that sound from the sound source301is heard during the progress of the game, or stops the reproduction of the sound data so that sound from the sound source301is not heard. The attended point302is a position, in a typical case, where a user character object is placed. Thus, a user of the sound processing apparatus200can hear the sound uttered from the sound source301in the position of the user character object placed in the virtual space.
The sound processing apparatus200makes lower volume of sound, uttered from the sound source301in the position of the user character object placed in virtual space, lower as the distance between the sound source301and attended point is larger. Further, as described later, the sound processing apparatus200exercises control so as to effectively reproduce sound by performing processing (hereinafter “sound controlling processing) of controlling sound uttered from the sound source301based on information showing an area preset for each character object serving as the sound source301and on the distance L.
The storage unit201stores information showing an area associated with the sound source301placed in virtual space. The storage unit201stores information showing, for example, a range of the distance between the sound source301and the attended point302to be associated with the sound source301. According to this embodiment, the information is recorded, in advance, in the DVD-ROM loaded into the DVD-ROM drive108.
Moreover, the CPU101and the DVD-ROM drive108work in cooperation to function as the storage unit201.
More specifically, for example, the storage unit201stores a reference distance to define an area associated with the sound source301as the unit of a virtual distance in virtual space. In the case shown in the drawing, the storage unit201stores information showing that sound is reproduced when the distance between the sound source301(engine of a running vehicle object) and the attended point (user character object hearing the engine sound of the running vehicle object) is in a range of 0 to 100 meters associated with sound to be reproduced “engine sound of a vehicle”. In other word, the storage unit201stores information showing that the reproduction by the reproducing unit204is stopped when the distance between the sound source301and the attended point302exceeds 100 meters. Thus, the storage unit201stores information showing a distance range corresponding to each of sound sources301or each of sounds to be produced.
Alternatively, the storage unit201, as shown inFIG. 4B, may be configured to store a reference distance as the unit of a virtual distance in virtual space in a manner to be associated with a file name of sound data. In the case shown in the drawing, the storage unit201may store information that sound associated with sound data (for example, engine sound of a running vehicle object) having a file name “onsei01.wav” is reproduced when the distance between the sound source301(for example, a running vehicle object) and the attended point302(for example, a user character object hearing an engine sound of the running vehicle object) is in the range of 0 to 100 meters. Thus, the storage unit201may be configured to store each individual distance range corresponding to each sound data.
Further, in a case where sound is to be reproduced regardless of a position of the sound source301in virtual space (regardless of a distance between the sound source301and the attended point302), the information to be stored in the storage unit201, as shown inFIG. 4C, may be set by using a value Linf being large enough to be substantially considered as infinite as a distance range for the reproduction.
The storage unit201, for example, may assign an intrinsic number to each of effect sounds and store a reference distance to be associated with the intrinsic number. Moreover, the reference distance may be stored in a manner to be associated with each sound source301or each kind of character objects also being able to serve as the sound source301.
The reference distance to be stored in the storage unit201and to be associated with the sound source301is not limited to the above-described information designating the distance range between the sound source301and the attended point302. For example, the storage unit201may store an area where sound is transmitted, direction where sound is transmitted, or transmission speed of sound obtained by taking into consideration shielding of sound or reflection of sound caused by an obstacle. Thereby, sound effect providing reality can be obtained effectively.
Further, a specified format of sound data to record information showing a distance range for reproduction may be defined. This enables the management of data to be stored in the storage unit201to be simplified. Moreover, when sound data using the specified format is to be reproduced, control can be exercised so that production is performed by sound control processing of the present invention described later and so that the sound control processing of the present invention is not performed by other format.
The storage unit201may be configured to store these information into other storage medium such as a ROM102or external memory106.
Further, the storage unit201may be realized as a program having, in advance, data showing a range of a distance between the sound source301and the attended point302.
The determination unit202calculates a distance in accordance with coordinates value of the sound source301placed in virtual space and coordinates value of the attended point301of sound to be uttered from the sound source301to determine whether or not the attended point302is contained in the distance range stored in the storage unit201. In the case where a plurality of sound sources301is placed in the virtual space, the determination unit202calculates a distance between the sound source301and the attended point302for sound to be uttered from the sound source301to determine whether or not the attended point302is contained in the distance range stored in the storage unit201. The determination unit202inputs the determination result to the varying unit203.
Moreover, the CPU101and image processor107work in cooperation to function as the determination unit202.
Here, each of the coordinate values is expressed by using a coordinates system being generally available. For example, the virtual space is expressed by an orthogonal coordinate system using an orthogonal coordinate system having orthogonal three axes or a spherical coordinate system such as spherical coordinates using one radius vector and two angles of deviation. Coordinate calculation may be performed by separately setting a global coordinate system (world coordinate system) expressing entire virtual space and local coordinate system (body coordinate system) for each character object.
The varying unit203varies sound to be uttered from the sound source301in accordance with the distance between the sound source301and the attended point302calculated by the determination unit202. That is, the varying unit203calculates sound volume corresponding to the distance obtained by the determination unit202at predetermined timing when an effect sound or the like is uttered from the sound source301during the progress of a game.
Moreover, the varying unit203performs its function by cooperative operations with the CPU101and sound processor110.
Any format of sound data can be employed. The sound processing apparatus200can read a predetermined program for sound reproduction corresponding to the format from the DVD-ROM, ROM102, and etc., storing the program in advance for execution and sound data can be reproduced.
More specifically, for example, the varying unit203lowers volume of the sound uttered from the sound source301obtained at the attended point302as the distance between the sound source301and the attended point302is larger as shown inFIG. 5A. When the distance between the sound source301and the attended point302is larger than a predetermined threshold value Lth, the varying unit203keeps the volume of the sound from the sound source301to be close to the predetermined threshold value (range between Vc_low and Vc_high).
Also, for example, the varying unit203lowers the volume of the sound from the sound source301obtained at the attended point302as the distance between the sound source301and the attended point302is larger as shown inFIG. 5B. When the distance between the sound source301and the attended point302is large in degree that sound uttered from the sound source301is not heard, the varying unit203keeps the volume at a predetermined minimum level. Typically, the varying unit203keeps the volume at a level being zero or being near to zero. Thus, the varying unit203varies the volume if the distance is within the area510and does not vary the volume if the distance is within the area520.
The reproducing unit204reproduces the sound varied by the varying unit203. That is, the reproducing unit204obtains sound data corresponding to the sound uttered from the sound source301, decodes the sound data using a specified program corresponding to the sound data, and reproduces sounds whose volume has been varied by the varying unit203.
The timing of reading the sound data should be before the reproduction of the sound data is started by the reproducing unit204. The present invention can be applied in the case of stream reproduction of sound data being stored in an information recording medium such as a DVD-ROM.
For example, it is presumed that the sound from the sound source301which is obtained at the attended point302has been varied by the varying unit203as shown inFIG. 5A. The reproducing unit204gradually lowers volume of sound when the distance between the sound source301and the attended point302is between the value 0 and a threshold value Lth. On the other hand, the distance between the sound source301and the attended point302exceeds the threshold value Lth, and the sound volume is kept in a range of a predetermined level being near to the volume value Vc. Thereby, the volume of the sound to be reproduced by the reproducing unit204becomes constant at a level being near the volume Vc.
Further, for example, it is presumed that the sound from the sound source301which is obtained at the attended point302has been varied by the varying unit203as shown inFIG. 5B. The reproducing unit204keeps volume value to zero when the distance between the sound source301and attended point302exceeds the threshold value Lth. This allows the reproducing unit204to exercise control so that the sound uttered from the sound source301is not heard by the user. Moreover, inFIG. 5AandFIG. 5B, the change of the volume is shown as a linear change, however, the volume is not limited to those in the drawings and may be set arbitrarily. It is desirable that the volume is monotonously lowered in a manner to correspond to the distance.
Next, sound control processing to be performed by the CPU101or the like of this embodiment of the present invention is described by using a flowchart inFIG. 6. In the description below, an example is used in which sound (for example, engine sound) uttered from a vehicle object (character object) running in virtual space is heard at the position of a user character object placed similarly in virtual space.
First, the determination unit202calculates the distance between a character object being the sound source301and a user character object being the attended point302(step S601).
Next, the determination unit202determines whether or not the attended point302is contained in a predetermined area (step S602). For example, the determination unit202obtains the information showing a distance range corresponding to the running vehicle object serving as the sound source301from the storage unit201, and determines whether or not the distance calculated in step S601is contained in the distance range. However, the information being stored in the storage unit201and showing a predetermined area is not limited to the information showing the distance range from the attended point302. For example, the information may be the information showing an area considered with the shielding of sounds or the reflection of sounds caused by an obstacle.
In the case where the attended point302is not contained in a predetermined area (step S602; NO), the determination unit202terminates the sound control processing. That is, in this case, the sound to be uttered from the sound source301is not reproduced. If the sound uttered from the sound source301is being reproduced, the reproducing unit204stops the reproduction.
In the case where the attended point302is contained in the predetermined area (step S602; YES), the varying unit203determines whether or not the distance calculated in the step S601is larger than the predetermined threshold value Lth (step S603).
In the case where the obtained distance is larger than the predetermined threshold value Lth (step S603; YES), the varying unit203keeps volume of sound (engine sound of the running vehicle object) to be uttered from the sound source301within a predetermined volume range (step S604).
On the other hand, in the case where the obtained distance is smaller than the predetermined threshold value Lth (step S603; NO), the varying unit203obtains sound data corresponding to the sound uttered from the sound source301(step S605). Moreover, in the case where the same sound data has been reproduced immediately before being obtained in step S605and has been left as cache data in the RAM103or a like, this step can be omitted.
Further, the varying unit203varies the volume based on the distance obtained in step S601(step S606). For example, the varying unit203varies so as to lower the volume the more as the distance between the sound source301and the attended point302is larger.
Furthermore, the reproducing unit204reproduces the sound varied in steps S604or S606and outputs the reproduced sound (step S607).
Thus, the sound processing apparatus200varies sound to be uttered from the sound source301based on the area corresponding to the sound source301stored in the storage unit201. That is, the sound processing apparatus200can effectively reproduce sound being heard at the attended point302by varying the sound volume corresponding to the distance between the sound source301and the attended point302hearing the sound in virtual space.
Moreover, according to this embodiment of the present invention, the sound processing apparatus200reproduces sound by varying the sound for each sound source301, however, can exercise control using the above-described sound control processing as to whether or not the sound is reproduced for each kind of the sound sources301(for example, enemy character or ally character). In this case, for example, the storage unit201further stores attribute information (for example, the information as to whether a character is an enemy or an ally, as to whether or not sound is reproduced by providing priority, etc.) of the sound source301in a manner to be associated with the sound source301, and the varying unit203may exert control as to whether or not the sound is reproduced using the above-described sound control processing based on the above attribute information. Or, control as to whether or not the above sound control processing is performed is exerted based on a kind or a file format of sound data.
Embodiment 2
Next, another embodiment of the present invention is described. In this embodiment, the varying unit203and reproducing unit204stops the processing of the sound uttered from the sound source301when the distance between the sound source301and the attended point302is larger than a predetermined reference distance Lc. Moreover, other configurations of the sound processing apparatus200of this embodiment are the same as those in the above described embodiment and their descriptions are omitted accordingly. Hereinafter, detailed descriptions are provided below.
The storage unit201stores an area in which sound is reproduced in a manner to be associated with the sound uttered from the sound source301. For example, the storage unit201stores such information as described inFIG. 4A. In the case shown inFIG. 4A, the storage unit201stores information showing which sound is reproduced when a distance between the sound source301(engine of a running vehicle object) and the attended point (user character object hearing the engine sound of the running vehicle object) is in a range of 0 to 100 meters in a manner in which sound to be produced is associated with sound to be reproduced. However, the distance is a virtual distance in virtual space. The storage unit201stores information showing each distance for each sound source301. This drawing is one example of the information to be stored in the storage unit201and the information may be changed in any manner for setting.
The varying unit203stops the processing of varying sound to be uttered from the sound source301when the distance between the sound source301and the attended point302is larger than a predetermined reference distance Lc. That is, in this case, the varying unit203does not vary volume of the sound.
The reproducing unit204does not perform the processing of reproducing the sound varied by the varying unit203when the distance between the sound source301and the attended point302is larger than a predetermined reference distance Lc. That is, in this case, the reproducing unit204does not reproduce the sound uttered from the sound source301. For example, it is presumed that the reproducing unit204reproduces an engine sound uttered from a vehicle object (sound source301) running in an area being near to the attended point302and the sound source301gradually goes away from the attended point302. In this situation, the reproducing unit204stops the reproduction of sound of an engine uttered from the vehicle object when the distance between the sound source301and attended point302is larger than a predetermined reference distance Lc.
FIG. 7Ais a diagram showing an example of volume of sound uttered from the sound source301in the sound control processing of this embodiment. The varying unit203obtains information showing an area (distance range inFIG. 7A) associated with the sound source301. When the attended point302is within this area and the distance is between 0 and Lth, the volume is lowered in a manner to correspond to the distance. Then, when the distance is larger than the threshold value Lth, the varying unit203keeps the volume of the sound to be close to the predetermined volume Vth. Further, when the distance between the sound source301and the attended point302is larger than the predetermined reference distance Lc, the reproducing unit204stops the reproduction of the sound. That is, the reproducing unit204reproduces sound from the sound source301in a case where the distance is within the area710, and does not reproduce sound from the sound source301in a case where the distance is within the area720.
This enables the sound processing apparatus200to effectively reproduce sound even if there is a hardware or software limitation on the number of sounds (number of reproducing trucks) being able to be simultaneously reproduced. That is, this avoid the state in which, since the reproducing truck is occupied due to the reproduction of sound being substantially not heard, other effect sound to be reproduced originally with a high volume is not correctly reproduced when the number of sounds to be simultaneously reproduced is increased. The sound processing apparatus200can effectively reproduce sound by exercising control as to whether sound is to be reproduced or not reproduced depending on the distance between the sound source301and the attended point302where the sound is heard in virtual space.
Moreover, the sound processing apparatus200, when the distance between the sound source301and the attended point302is larger than the predetermined reference distance, the processing of varying the sound uttered from the sound source301can be omitted. That is, in the conventional technology, a specified operation (for example, operation of considering influence by the reflection or shielding of sound) of varying sound based on the distance between the sound source301and the attended point302is performed, and sound is not reproduced if the volume obtained from the operation is lower than a predetermined level. However, according to the present invention, whether or not sound is reproduced can be determined without the specified operation and the processing of reproducing the sound can be simplified greatly.
The information stored in the storage unit201which shows an area associated with the sound source301may be used as the specified reference distance Lc. In this case, the information showing the area is the information showing a distance range in which sound uttered from the sound source301is reproduced. Owing to this, if the attended point302is not within the distance range associated with the sound source301, sound is not varied by the varying unit203and sound is not reproduced by the reproducing unit204, so the sound processing apparatus200is allowed to omit further the sound control processing.
FIG. 7Bshows an example of volume of sound to be uttered from the sound source301in a case the threshold value Lth to be used for the determination as to whether or not sound is varied by the varying unit203is made to coincide with the reference distance Lc to be used for the determination as to whether or not the sound is reproduced by the reproducing unit204. When the distance between the sound source301and the attended point302is within the specified reference distance Lc, the varying unit203varies the sound so that its volume is gradually lowered and the reproducing unit204reproduces the varied sound. Then, if the distance exceeds the reference distance Lc, the varying unit203does not vary the sound and the reproducing unit204does not reproduce the sound.
In addition, in a case where the distance between the sound source301and the attended point302is larger than the specified reference distance Lc, the sound to be uttered from the sound source301is not reproduced by the reproducing unit204and, therefore, the varying unit203may or may not vary the sound. In order to simplify the sound control processing, it is desirable that the varying unit203does not perform the processing of varying the sound.
Next, the sound control processing to be performed by the CPU101or a like of this embodiment of the present invention is explained by referring to the flowchart inFIG. 8.
First, the determination unit202calculates the distance between the sound source301and the attended point302(step S801).
Next, the determination unit202determines whether or not the attended point302is contained in the area stored in the storage unit201(step S802).
If the attended point302is not contained in the area (step S802; NO), the determination unit202terminates the sound control processing. In this case, sound uttered from the sound source301is not reproduced. In the case where sound uttered from the attended point302is being reproduced, the reproduction of sound is stopped by the reproducing unit204.
If the attended point302is contained in the area (step S802; YES), the varying unit203determines whether or not the distance calculated in step S801is larger than the predetermined reference distance Lc (step S803).
If the calculated distance is larger than the reference distance Lc (step S803; YES), the reproducing unit204stops the reproduction of the sound uttered from the sound source301.
If the calculated distance is equal to or less than the reference distance Lc (step S803; NO), the varying unit203determines whether or not the distance between the sound source301and the attended point302is larger than the predetermined threshold value Lth (step S805).
If the distance is larger than the threshold value Lth (step S805; YES), the varying unit203does not vary sound to be uttered from the sound source301.
On the other hand, if the distance is equal to or less than the threshold value Lth (step S805; NO), the varying unit203obtains sound data corresponding to the sound to be uttered from the sound source301(step S807).
Further, the varying unit203varies volume based on the distance calculated in step S801(step S808). For example, the varying unit203varies the volume to be lowered the more as the distance between the sound source301and the attended point302is larger.
Then, the reproducing unit204reproduces and outputs sound uttered from the sound source301(step S809).
Thus, the sound processing apparatus200reproduces sound if the sound source301is nearer than the predetermined reference distance Lc, and stops the reproduction of the sound if the sound source301is further than the predetermined reference distance Lc. This enables the sound processing apparatus200to effectively reproduce sound according to the distance between the sound source301and the attended point302hearing the sound in virtual space. There is no need for the sound processing apparatus200to perform the processing of varying sound if the distance between the sound source301and the attended point302is larger than the predetermined threshold value Lth. Furthermore, the sound processing apparatus200does not reproduce the sound if the distance between the sound source301and the attended point302is larger than the reference distance Lc. As a result, the sound control processing can be simplified greatly.
Embodiment 3
Next, another embodiment of the present invention will be described. In this embodiment, the varying unit203varies sound to be uttered from the sound source301to a predetermined minimum volume Vmin in a case where the distance between the sound source301and the attended point302is larger than the above-described predetermined threshold Lth. In addition, other configurations of the sound processing apparatus200of this embodiment are the same as those in above described embodiments and their duplicate descriptions are omitted accordingly. Hereinafter, detailed descriptions are provided below.
The storage unit201stores a distance range to vary sound to be associated with sound to be uttered from the sound source301in the unit of a virtual distance in virtual space. The storage unit201stores the information as shown inFIG. 9A. In the case shown in this drawing, the storage unit201stores information showing that sound is reproduced when a distance between the sound source301(engine of a running vehicle object) and the attended point302(user character object hearing the engine sound of the running vehicle object) is in a range of 0 to 100 meters associated with sound to be reproduced. The storage unit201stores information showing each individual distance range corresponding to each sound source310. This drawing is one example of the information to be stored in the storage unit201and the information may be changed in any manner for setting.
Alternatively, the storage unit201may be configured to store a distance range to vary sound represented in the unit of a virtual distance in virtual space in a manner to be associated with a file name of sound data to be reproduced as shown inFIG. 9B. In the case shown in this drawing, the storage unit201stores information showing that sound is reproduced if a distance between the sound source301(engine of a running vehicle object) and the attended point302(user character object hearing the engine sound of the running vehicle object) is in a range of 0 to 100 meters associated with sound data of a file name “onsei101.wav”. Thus, the storage unit201may store information individually showing the distance range for each sound data.
The varying unit203varies the sound uttered from the sound source301based on the distance between the sound source301calculated by the determination unit202and the attended point302. As shown inFIG. 10A, the varying unit203lowers the volume of the sound obtained at the attended point302as the distance between the sound source301and the attended point302is larger. And when the distance between the sound source301and the attended point302is larger than a predetermined threshold value Lth, the varying unit203sets the volume of the sound obtained at the attended point302to a predetermined minimum volume Vmin.
Alternatively, the varying unit203may keep the volume of the sound obtained at the attended point302within a predetermined volume range (between Vmin_low and Vmin_high) close to the minimum volume Vmin as shown inFIG. 10Bwhen the distance between the sound source301and the attended point302is larger than the predetermined threshold value Lth. In addition, inFIG. 10AandFIG. 10B, the change of the volume is shown as a linear change, however, the change of the volume is not limited to those in the drawings.
In this embodiment, unlike in the above embodiments, even when the distance between the sound source301and the attended point302is larger, the reproduction of the sound by the reproducing unit204is not stopped and the sound is reproduced with the volume being at least a predetermined minimum volume or more.
Thus, the sound processing apparatus200can reproduce effect sound with the optimum volume without exerting special control on the effect sound in the case where it is necessary that the effect sound is heard by a user from a viewpoint of contrivance even if the distance between the sound source301and the attended point302is sufficiently large in virtual space. Even if there is a hardware or software limitation on the number of sounds (number of reproducing trucks) that can be reproduced at the same time, effective reproduction of sound is made possible.
The storage unit201may store priority of reproduction in a manner to be associated with the sound source301in advance. If the priority for the sound source301is high, even if the distance between the sound source301and the attended point302is large, the reproduction does not need to be stopped. For example, in a racing game, by making the priority of engine sound of a vehicle set to be relatively high, even if there is a limitation on the number of reproducing trucks, the erroneous stop of the reproduction of the engine sound does not occur when other effect sound is reproduced.
Further, in the case where there is a plurality of sound sources301to which priority of reproduction is assigned in virtual space, a predetermined number (for example, the number of reproduction tracks) of sound sources301is extracted in high order of priority from these sound sources301and only the sound to be uttered from the extracted sound sources301may be varied or reproduced.
In addition, in this embodiment, in the step S604inFIG. 6described above, instead of the case where the varying unit203keeps volume within a predetermined volume range, the varying unit203may make the volume be a predetermined minimum volume. Other steps are the same as those in the above embodiments and details of the flow chart are omitted accordingly.
Embodiment 4
Next, another embodiment of the present invention is described. This embodiment differs from other embodiments in that sound control processing of sound to be uttered from a character object can be managed in a mass. Detailed descriptions are given below.
The storage unit201stores information showing a combination of specified character objects.
FIG. 11Ashows an example of configurations of the combination of the sound source301and possible character object. The set information, typically expressed by numbers, is information to identify the combination, however, any symbol, numeral, and code may be used. The storage unit201stores the combination of character objects in a manner to be associated with the set information. In this drawing, for example, the character objects OBJ (2) and OBJ (3) make up one set of the combination. The number of combinations stored in the storage unit201or the number of character objects contained in one combination is arbitrary.
FIG. 11Bshows an example of a reference distance defining an area to be associated with the sound source301which is stored in the storage unit201. The storage unit201stores sound to be uttered from a character object that can possibly serves as a sound source301, a reference distance defining an area to be associated with the sound source301, and a predetermined minimum volume in a manner to be associated with one another. For example, for the character objects OBJ (2) and OBJ (3), a common reference distance “D2min≦D≦D2max” is defined. Moreover, for the character objects OBJ (2) and OBJ (3), a common minimum volume V2is defined.
Thus, in this embodiment, instead of storing the reference distance and minimum volume, for each of sound sources301, associated with sound source301, the storage unit201stores the reference distance and minimum volume, for each of character objects, associated with character object contained in the combination shown inFIG. 11Ais associated with a common reference distance and common minimum volume. This enables a decrease in memory capacity used by the storage unit201.
In this embodiment, both the reference distance and minimum volume are defined as common data, however, either one of them may be defined as common data.
The determination unit202, as in the case of each of the above embodiments, calculates the distance between the sound source301and the attended point302based on coordinates value of the sound source301and coordinates value of the attended point302and determines whether or not the attended point302is contained in the distance range designated by the reference distance stored in the storage unit201.
The varying unit203varies the sound uttered from the sound source301based on the calculated distance between the sound source301and the attended point302by the determination unit202. That is, at a predetermined timing when effect sound or the like is to be uttered from the sound source301during the progress of a game, the varying unit203varies the sound to have volume corresponding to a distance calculated by the determination unit202. Further, if the distance obtained from the calculation is not within a range indicated by a reference distance, the varying unit203varies the sound to have a minimum volume stored in the storage unit201.
Then, the reproducing unit204reproduces the sound varied by the varying unit203.
In the case where there are a vehicle object running in a virtual space and a character object to be loaded on the vehicle object, it is possible to vary both the volume of the sound (for example, engine sound) uttered from the vehicle object and the volume of the sound (for example, sound of gunfire) uttered from the character object loaded on the vehicle object in a mass.
In the case where a plurality of sound sources301exists near to one another or where, even if not existing near to one another, a plurality of sound sources301exists in a position being the same distance from the attended point302, by combining, in advance, these sound sources301as one set, the volume can be changed similarly.
Thus, a sense of incongruity will not be given to the sound effects because only one of both sounds, which are to be reproduced together, is reproduced. That is, by defining the combination of the sound sources30, the volume of the sound can be easily increased or decreased, and the reproduction can be stopped or continued.
Embodiment 5
In this embodiment, the embodiments described above are combined.
As shown inFIG. 12A, the storage unit201may store a flag which designates whether the reproduction is to be stopped as in the case of the embodiment 2 or the reproduction is to be continued with the minimum volume as in the case of the embodiment 3 when the distance between the sound source301and the attended point302is larger than a predetermined value.
For example, the flag is set to “0” when control in the embodiment 2 is exerted, and the flag is to “1” when control in the embodiment 3 is exerted. The varying unit203and reproducing unit204may be so configured as to properly perform the sound control processing depending on the flag value.
As shown inFIG. 12B, the storage unit201may store the flag in a manner to be associated with a file name of sound data to be reproduced. Further, as shown inFIG. 12, even when the information to be stored is set by using a distance value Linf being large enough to be able to be substantially considered as infinite as a distance range for reproduction, the storage unit201may store the flag in a manner to be associated with a file name of sound data to be reproduced or with the sound source301.
Thus, the above embodiments may be easily combined. In addition, the sound control processing that can be properly performed by the flag is not limited to the contents of the above embodiments and it is needless to say that the flag can be used properly to combine the above embodiments with other embodiment or any other modified embodiment.
The present invention is not limited to the above embodiments, and various modifications and applications are possible. Additionally, combinations of the above embodiments are possible.
In the above embodiments, the sound source301is the moving vehicle object. However, the present invention is not limited thereto and, regardless of whether or not the object itself moves, any character object can be the sound source301. Moreover, in the above embodiments, the attended point302is placed in a place where the user character object is placed, however, the present invention is not limited thereto and the position may be a position of a virtual camera placed in virtual space and the attended point302may be the first person view point in virtual space.
In the above embodiments, the varying unit203varies volume of sound to be uttered from the sound source301, however, the present invention is not limited thereto. For example, the varying unit203may be configured to perform other sound control including control of an effect of reflecting sound, control of attenuating or amplifying specified frequency components in a case where the attended point302exists in an area associated with the sound source301. This enables the realization of sound effects that can provide more reality.
The varying unit203may perform sound control processing by considering eyes direction in the attended point302hearing sound in virtual space. For example, in the case where a directional vector toward the sound source301from the attended point302coincides with the eyes directional vector or is within a predetermined range of the vicinity of the eyes directional vector, the sound to be uttered from the sound source301can be varied so that its volume is made high. This enables the realization of contrivance providing more reality achieved by visual effects and sound effects.
Further, the storage unit201may set the same priority to specified character objects, and the varying unit203may equalize an amount of changes in the sound to be uttered from these character objects in a case where the character objects having the same priority serve as the sound source301. For example, by setting the same priority to the vehicle object running in virtual space and the character object loaded on the vehicle object, the volume of the sounds uttered from both can be raised or lowered to the same level.
For example, programs to activate the sound processing apparatus200as a whole or a part of the device may be saved for distribution in a computer-readable storage medium such as a memory card, CD-ROM, DVD, MO (Magnet Optical disk) or a like or the program may be installed in another computer to be used for execution of above processes.
Moreover, the above program may be stored in a disk device or the like installed in a server device on the Internet and may be superimposed on a carrier wave so as to be downloaded into a computer.
Note that the present application claims priority based on Japanese Patent Application No. 2006-085123, which is herein incorporated by reference.
INDUSTRIAL APPLICABILITY
As described above, according to the present invention, sound can be effectively reproduced according to the distance between the sound source and a position where sounds are heard in virtual space.
Claims
- A sound processing apparatus comprising: a storage unit which stores an area associated with a sound source placed in virtual space;a determination unit which determines, for the sound source, whether or not an attended point placed in the virtual space is contained in the area stored in the storage unit;a varying unit which varies sound to be uttered from the sound source in accordance with a distance between the sound source and the attended point when the attended point is determined as being contained in the area by the determination unit, and which sets the sound to a minimum value when the attended point is determined as being outside of the area by the determined unit;and a reproducing unit which reproduces the sound varied by the varying unit.
- A sound processing apparatus comprising: a storage unit which stores, for each of a plurality of sound sources placed in virtual space, a position of the sound source, a reference distance defining an area associated with the sound source, and a minimum volume of sound to be uttered from the sound source, and stores a position of an attended point placed in the virtual space;a determination unit which, for each of the plurality of sound sources, calculates a distance between the sound source and the attended point in accordance with the position of the sound source and the position of the attended point stored in the storage unit, and determines whether or not the attended point is contained in an area associated with the sound source based on whether or not the calculated distance is smaller than the reference distance of the sound source;a varying unit which varies volume of sound to be uttered from the sound source into one that is correlated in advance such that the larger the distance between the sound source and the attended point is, the smaller the volume of the sound is, when the attended point is determined by the determination unit as being contained in the area, and varies the volume of the sound so as to be the minimum volume when the attended point is determined as being not contained;and a reproducing unit which reproduces the sound varied by the varying unit.
- The sound processing apparatus according to claim 1 , wherein the storage unit further stores information designating a combination of a plurality of sound sources, and the varying unit varies respective volumes of respective sounds to be uttered from the sound sources designated by the combination, in parallel with each other.
- A sound processing method to be performed by a sound processing apparatus having a storage unit which stores an area associated with a sound source placed in virtual space, the sound processing method comprising the steps of: a determination step of determining, for the sound source, whether or not an attended point placed in the virtual space is contained in the area stored in the storage unit;a varying step of varying sound to be uttered from the sound source in accordance with the distance between the sound source and the attended point, when the attended point is determined by the determination step as being contained in the area, the carrying sound to be uttered from the sound source being set to a minimum value when the attended point is determined by the determination step as being outside of the area;and a reproducing step of reproducing the sound varied by the varying step.
- A sound processing method to be performed by a sound processing apparatus having a storage unit which stores, for each of a plurality of sound sources placed in virtual space, a position of the sound source, a reference distance defining an area associated with the sound source, and a minimum volume of sound to be uttered from the sound source and stores a position of an attended point placed in the virtual space, the sound processing method comprising the steps of: a determination step of, for each of the plurality of sound sources, calculating a distance between the sound source and the attended point in accordance with the position of the sound source and the position of the attended point stored in the storage unit, and determining whether or not the attended point is contained in the area associated with the sound source based on whether or not the calculated distance is smaller than the reference distance of the sound source;a varying step of varying volume of sound to be uttered from the sound source into one that is correlated in advance such that the larger the distance between the sound source and the attended point is, the smaller the volume of the sound is, when the attended point is determined by the determination step as being contained in the area, and varying the volume of the sound so as to be the minimum volume when the attended point is determined as being not contained;and a reproducing step of reproducing the sound varied by the varying step.
- A computer-readable information recording medium on which is recorded a program for controlling a computer to function as: a storage unit which stores an area associated with a sound source placed in virtual space;a determination unit which determines, for the sound source, whether or not an attended point placed in the virtual space is contained in the area stored in the storage unit;a varying unit which varies sound to be uttered from the sound source in accordance with a distance between the sound source and the attended point when the attended point is determined as being contained in the area by the determination unit, and which sets the sound to a minimum value when the attended point is determined as being outside of the area by the determined unit;and a reproducing unit which reproduces the sound varied by the varying unit.
- A computer-readable information recording medium on which is recorded a program for controlling a computer to function as: a storage unit which stores, for each of a plurality of sound sources placed in virtual space, a position of the sound source, a reference distance defining an area associated with the sound source, and a minimum volume of sound to be uttered from the sound source, and stores a position of an attended point placed in the virtual space;a determination unit which, for each of the plurality of sound sources, calculates a distance between the sound source and the attended point in accordance with the position of the sound source and the position of the attended point stored in the storage unit, and determines whether or not the attended point is contained in an area associated with the sound source based on whether or not the calculated distance is smaller than the reference distance of the sound source;a varying unit which varies volume of sound to be uttered from the sound source into one that is correlated in advance such that the larger the distance between the sound source and the attended point is, the smaller the volume of the sound is, when the attended point is determined by the determination unit as being contained in the area, and varies the volume of the sound so as to be the minimum volume when the attended point is determined as being not contained;and a reproducing unit which reproduces the sound varied by the varying unit.
- A program for controlling a computer to function as: a storage unit which stores an area associated with a sound source placed in virtual space;a determination unit which determines, for the sound source, whether or not an attended point placed in the virtual space is contained in the area stored in the storage unit;a varying unit which varies sound to be uttered from the sound source in accordance with a distance between the sound source and the attended point when the attended point is determined as being contained in the area by the determination unit, the sound to be uttered from the sound source being set to a minimum value when the attended point is determined by the determination unit as being outside of the area;and a reproducing unit which reproduces the sound varied by the varying unit.
- A program for controlling a computer to function as: a storage unit which stores, for each of a plurality of sound sources placed in virtual space, a position of the sound source, a reference distance defining an area associated with the sound source, and a minimum volume of sound to be uttered from the sound source, and stores a position of an attended point placed in the virtual space;a determination unit which, for each of the plurality of sound sources, calculates a distance between the sound source and the attended point in accordance with the position of the sound source and the position of the attended point stored in the storage unit, and determines whether or not the attended point is contained in an area associated with the sound source based on whether or not the calculated distance is smaller than the reference distance of the sound source;a varying unit which varies volume of sound to be uttered from the sound source into one that is correlated in advance such that the larger the distance between the sound source and the attended point is, the smaller the volume of the sound is, when the attended point is determined by the determination unit as being contained in the area, and varies the volume of the sound so as to be the minimum volume when the attended point is determined as being not contained;and a reproducing unit which reproduces the sound varied by the varying unit.
Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.