JP5051838B2 - Sound data generating apparatus and program - Google Patents
Sound data generating apparatus and program Download PDFInfo
- Publication number
- JP5051838B2 JP5051838B2 JP2007275757A JP2007275757A JP5051838B2 JP 5051838 B2 JP5051838 B2 JP 5051838B2 JP 2007275757 A JP2007275757 A JP 2007275757A JP 2007275757 A JP2007275757 A JP 2007275757A JP 5051838 B2 JP5051838 B2 JP 5051838B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- waveform
- sound data
- specific area
- particles
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
本発明は、音データ生成装置およびプログラムに関する。 The present invention relates to a sound data generation device and a program.
近年、コンピュータで「川のせせらぎ音」や「そよ風の音」など自然現象に伴う音を巧妙に再現する技術が提案されている。例えば特許文献1では、自然現象における音の特徴を模した波形データを繰り返し音声へ変換することにより自然現象の音を再現する技術が提案されている。
ところで、上述の川のせせらぎ音は多数の水分子の運動から生じるものであり、そよ風の音は空気中に存在する多数の気体分子の流れや振動から生じるものであるとの例からも明らかなように、自然界において発生する音の多くは小さなスケールで見れば多数の粒子が高頻度で相互作用を繰り返すことにより生じている。従って、その結果生成される音には「ランダム性」や「非再現性」が生まれ、それらが音に「自然らしさ」を与えていると考えられる。 By the way, it is clear from the example that the sound of the above-mentioned river breeze is caused by the movement of a large number of water molecules, and the sound of the breeze is caused by the flow and vibration of a large number of gas molecules existing in the air. As described above, most of the sounds generated in nature are generated by the frequent interaction of many particles when viewed on a small scale. Therefore, it is considered that the resulting sound has “randomness” and “non-reproducibility”, which give the sound “naturalness”.
しかしながら、上記特許文献1を含め、従来のコンピュータにより生成される音は、予め決められた波形データが繰り返し読み出されるだけの音であったため、その音には上述した「ランダム性」や「非再現性」が欠如しており、所謂「自然らしさ」が感じられないといった問題があった。 However, since the sound generated by the conventional computer including the above-mentioned Patent Document 1 is a sound in which predetermined waveform data is repeatedly read out, the above-mentioned “randomness” and “non-reproduction” are included in the sound. There is a problem that the so-called “naturalness” cannot be felt due to lack of “sexuality”.
本発明は上述した事情に鑑みてなされたものであり、コンピュータによって音を発生させる場合において、規則性のない音を発生させることのできる技術を提供することを目的とする。 The present invention has been made in view of the above-described circumstances, and an object of the present invention is to provide a technique capable of generating a sound having no regularity when a sound is generated by a computer.
本発明の好適な態様である音データ生成装置は、仮想空間を設定する仮想空間設定手段と、前記仮想空間設定手段により設定された仮想空間の一部又は全部の領域を、特定領域として1又は複数特定する特定領域特定手段と、複数の仮想粒子を前記仮想空間に対して連続的に放出する演算を行う仮想粒子放出手段と、前記仮想粒子放出手段の演算により放出された各仮想粒子の軌道を、前記各仮想粒子同士の衝突を含めて演算する軌道演算手段と、前記軌道演算手段による演算結果に従って、前記特定領域特定手段により特定された特定領域内の前記仮想粒子に応じて波形を算出する波形算出手段と、前記波形算出手段により算出された波形に対応した音データを生成する音データ生成手段と、前記音データ生成手段により生成された音データを出力する出力手段とを具備することを特徴とする。 The sound data generation device according to a preferred aspect of the present invention includes a virtual space setting unit that sets a virtual space and a part or all of the virtual space set by the virtual space setting unit as a specific region. Specific region specifying means for specifying a plurality of virtual particles, virtual particle emitting means for performing a calculation for continuously releasing a plurality of virtual particles to the virtual space, and trajectories of the virtual particles emitted by the calculation of the virtual particle emitting means And calculating a waveform according to the virtual particles in the specific area specified by the specific area specifying means according to the calculation result by the trajectory calculating means. Waveform calculating means, sound data generating means for generating sound data corresponding to the waveform calculated by the waveform calculating means, and sound data generated by the sound data generating means Characterized by comprising an output means for outputting.
上述の態様において、前記波形算出手段は、前記軌道演算手段による演算結果に従って、前記特定領域特定手段により特定された特定領域内に含まれる前記仮想粒子の配置態様によって表現される波形を算出してもよい。
また、上述の態様において、前記波形算出手段は、前記特定領域内において予め定められた軸方向に近接する仮想粒子同士を繋ぐことによって表れる波形を算出してもよい。
In the above-described aspect, the waveform calculating means calculates a waveform expressed by an arrangement aspect of the virtual particles included in the specific area specified by the specific area specifying means according to the calculation result by the trajectory calculating means. Also good.
In the above aspect, the waveform calculation means may calculate a waveform that appears by connecting virtual particles that are close to each other in the predetermined axial direction within the specific region.
また、上述の態様において、前記音データ生成手段は、前記波形算出手段により算出された波形を1周期として、複数回繰り返して音データを生成してもよい。 In the above-described aspect, the sound data generation unit may generate sound data by repeating the waveform calculation unit by repeating the waveform calculation unit a plurality of times.
また、上述の態様において、音高を示す音高データを取得する音高データ取得手段を具備し、前記音データ生成手段は、前記音高データ取得手段により取得された音高データの示す音高に基づいて音データを生成してもよい。 Moreover, in the above-mentioned aspect, it includes a pitch data acquisition unit that acquires pitch data indicating a pitch, and the sound data generation unit includes a pitch indicated by the pitch data acquired by the pitch data acquisition unit. Sound data may be generated based on the above.
また、上述の態様において、前記特定領域特定手段は、前記仮想空間内の一部又は全部の領域を特定領域として複数特定し、前記波形算出手段は、前記複数の特定領域の一部又は全部が重なる場合には、重なる領域を共有して、前記特定領域毎に波形を算出してもよい。 Further, in the above-described aspect, the specific area specifying unit specifies a plurality of partial or entire areas in the virtual space as specific areas, and the waveform calculating unit includes a part or all of the plurality of specific areas. When overlapping, the overlapping area may be shared and the waveform may be calculated for each specific area.
また、上述の態様において、前記特定領域において予め定められた軸方向の位置と音高との対応関係を記憶する対応関係記憶手段と、前記軌道演算手段による演算結果に従って、前記仮想粒子が前記特定領域を通過するときの、該仮想粒子の前記特定領域における前記予め定められた軸方向の位置を算出する位置算出手段と、前記記憶手段に記憶された対応関係に基づいて、前記位置算出手段により算出された位置に対応する音高を特定する音高特定手段とを具備し、前記音データ生成手段は、前記音高特定手段により特定された音高の音データを生成してもよい。 Further, in the above-described aspect, the virtual particle is identified by the correspondence storage means for storing the correspondence between the position in the axial direction predetermined in the specific region and the pitch, and the calculation result by the trajectory calculation means. Based on the correspondence relationship stored in the storage means based on the position calculation means for calculating the predetermined axial position of the virtual particles in the specific area when passing through the area, the position calculation means A pitch specifying means for specifying a pitch corresponding to the calculated position, and the sound data generating means may generate sound data of the pitch specified by the pitch specifying means.
また、上述の態様において、前記特定領域特定手段により特定された特定領域内に、予め定められた形状の波形を配置する波形配置手段を具備し、前記音データ生成手段は、前記軌道演算手段による演算結果に従って、前記仮想粒子放出手段の演算により放出された仮想粒子と前記波形との衝突位置から該波形を読み出したときの該波形に対応した音データを生成してもよい。 Further, in the above-described aspect, the apparatus includes waveform arranging means for arranging a waveform having a predetermined shape in the specific area specified by the specific area specifying means, and the sound data generating means is based on the trajectory calculating means. According to the calculation result, sound data corresponding to the waveform when the waveform is read from the collision position between the virtual particle released by the calculation of the virtual particle emitting means and the waveform may be generated.
また、上述の態様において、前記特定領域特定手段により特定された特定領域内に、該特定領域内で移動可能な複数の第2の仮想粒子を配置する仮想粒子配置手段と、前記軌道演算手段の演算結果に従って、前記特定領域内の前記第2の仮想粒子と前記仮想粒子放出手段の演算により放出された仮想粒子との相互作用に基づいて前記特定領域における前記第2の仮想粒子の配置を連続的に変化させる位置変化手段とを具備し、前記波形算出手段は、前記特定領域内の前記第2の仮想粒子の配置態様によって表現される波形を算出してもよい。 Further, in the above-described aspect, the virtual particle arrangement means for arranging a plurality of second virtual particles movable in the specific area in the specific area specified by the specific area specifying means, and the trajectory calculation means According to the calculation result, the arrangement of the second virtual particles in the specific region is continuously performed based on the interaction between the second virtual particles in the specific region and the virtual particles emitted by the calculation of the virtual particle emitting unit. Position changing means for changing the waveform, and the waveform calculating means may calculate a waveform expressed by an arrangement mode of the second virtual particles in the specific region.
本発明によれば、コンピュータによって音を発生させる場合において、規則性のない音を発生させることができる。 According to the present invention, when a sound is generated by a computer, a sound having no regularity can be generated.
(本発明の概略説明)
本発明に係る音データ生成装置は、コンピュータの演算によって形成される仮想空間の中に多数の仮想粒子を放出させる。そして、仮想空間内に設けられた特定領域における仮想粒子の配置態様によって表現される波形を算出し、その波形に基づいて音データを生成するものである。
(Outline of the present invention)
The sound data generation apparatus according to the present invention emits a large number of virtual particles into a virtual space formed by computer computation. And the waveform expressed with the arrangement | positioning aspect of the virtual particle in the specific area | region provided in virtual space is calculated, and sound data are produced | generated based on the waveform.
図1は、音データ生成処理におけるモニタ表示の一例である。仮想粒子200は、スプリンクラ150の先端部分より仮想空間100内に放出される。そして、仮想粒子200は、仮想空間100内に設定された重力に従って画面の下方向に向けて「落下」すると共に、仮想空間100の壁面などで跳ね返ったり、仮想粒子200同士で衝突したりする。その結果、多数の仮想粒子200が仮想空間100内でランダムに運動する。そのように多数の仮想粒子200が飛び交っている仮想空間100には、特定領域300が設けられる。そして、仮想粒子200が特定領域300内に入ると、特定領域300内の仮想粒子200を線で繋ぐことにより表現される波形Wに基づいて音データが生成される。
FIG. 1 is an example of a monitor display in the sound data generation process. The
(A:構成)
以下、図面を参照しつつ、本発明を実施するための最良の形態について説明する。
(A−1:全体構成)
図2は、本発明に係る音データ生成システム1の全体構成を示す図である。音データ生成システム1は、プログラム実行装置としての音データ生成装置10と、マウス20と、モニタ30と、多点コントローラ40とを有する。
(A: Configuration)
The best mode for carrying out the present invention will be described below with reference to the drawings.
(A-1: Overall configuration)
FIG. 2 is a diagram showing the overall configuration of the sound data generation system 1 according to the present invention. The sound data generation system 1 includes a sound
(A−2:各装置の構成)
まず、音データ生成装置10のハードウェア構成について図3を参照して説明する。
音データ生成装置10は、制御部101、光ディスク再生部102、ROM(Read Only Memory)103、RAM(Random Access Memory)104、I/O部105を有する。それら各部はバス109を介して互いに接続されている。図に示す制御部101は、例えばCPU(Central Processing Unit)であり、ROM103から読み出された各種制御プログラムを実行することにより、音及び映像の信号処理や各部の制御を行う。光ディスク再生部102は、CD−ROM・DVD−ROM等の光ディスクからデータを読み取る。ROM103は、制御部101が実行する各種制御プログラムを記憶している。RAM104は、制御部101によってワークエリアとして利用される。I/O部105は、音データ生成装置10と接続された機器との信号の送受信を仲介する。具体的には、マウス20及び多点コントローラ40から操作信号を示す信号を受け取り制御部101に出力すると共に、制御部101から受け取った音データ及び映像データをモニタ30に出力する。
(A-2: Configuration of each device)
First, the hardware configuration of the sound
The sound
次に、マウス20の構成について図4を用いて説明する。マウス20は、本体21の上面(図中(a)参照)にはボタン22を、下面(図中(b)参照)には移動検知手段24を有する。また、マウス20は、音データ生成装置10に通信ケーブル23にて接続されており、操作内容を示すデータが通信ケーブル23を介して音データ生成装置10に送信される。
Next, the configuration of the
マウス20は、本体21が移動されると移動検知手段24が移動方向と移動量を示す操作信号を生成し、通信ケーブル23を介して出力する。該信号を受け取った制御部101は、操作信号に基づいてモニタ30の画面上のカーソルを移動する処理を行う。
また、ボタン22が押下(以下「クリック」という)されると、マウス20はクリックされたことを示す操作信号を生成し、通信ケーブル23を介して出力する。制御部101は、操作信号を受信すると、受信した操作信号に応じて、クリック時にカーソルが位置していた座標を認識し、その座標に表示されているアイコン等に対して選択処理が行われたと認識する。
また、ボタン22を押下した状態で本体21が移動され、その後ボタン22の押下を解除する操作(以下「ドラッグ」という)がなされると、ボタン22が押下されていた間の本体21の移動方向と移動量、およびドラッグ操作がなされたことを示す操作信号を生成し、通信ケーブル23を介して出力する。制御部101は、操作信号を受信すると、受信した操作信号に応じて、ドラッグにより選択された画面上の領域やその領域に含まれるアイコン等に対して選択処理が行われたと認識する。
In the
When the button 22 is pressed (hereinafter referred to as “click”), the
Further, when the main body 21 is moved in a state where the button 22 is pressed and an operation for releasing the pressing of the button 22 (hereinafter referred to as “drag”) is performed, the moving direction of the main body 21 while the button 22 is being pressed. Then, an operation signal indicating that the movement amount and the drag operation have been performed is generated and output via the
次に、モニタ30の構成について図5を用いて説明する。モニタ30は、音データ生成装置10から受け取った映像データに基づいて映像を表示する。モニタ画面の各点には、同図に示されるように画面左上を座標(0,0)、右下を座標(756,1024)とする座標が設定されている。また、図5に示すように、モニタ画面の下方には音データ再生部30aが設けられている。音データ再生部30aは、音データ生成装置10から受け取った音データに基づいて放音する。
Next, the configuration of the
次に、多点コントローラ40の構成について、図6を用いて説明する。図6(a)に示すように、多点コントローラ40は、タッチパネル42を有する。タッチパネル42には、図に示すように画面左上を座標(0,0)、右下を座標(756,1024)とする座標が設定されている。タッチパネル42は、タッチパネル上の特定の点が押下されたことを感知する感知手段を有し、その感知手段がパネル上の特定の点が押下されたことを感知すると、押下された点の位置を示す座標を含む押下位置情報を、通信ケーブル41を介して音データ生成装置10に出力する。複数の点が同時に押下されている場合には、それら押下されている複数の点それぞれについて並行して押下位置情報を生成及び出力する。
Next, the configuration of the
音データ生成装置10の制御部101は、押下位置情報を多点コントローラ40から受け取ると、その押下位置情報に含まれる座標を読み出し、モニタ30の画面上においてその座標に相当する点が選択されたと判断する。図6(b)は、モニタ30の画面表示を示した図である。例えば、手A及び手Bが、図6(a)で示されるようにタッチパネル42を押下した場合、手Aで押下された位置を示す座標を示す押下位置情報及び手Bで押下された位置を示す座標を示す押下位置情報が制御部101へ出力される。制御部101は、押下位置情報を受け取ると、図6(b)で示されるモニタ画面上の点A及び点Bが選択されたと判定する。
When the
(A−3:音データ生成装置10の機能的構成)
次に、音データ生成装置10の機能的構成の一例を、図7を参照しつつ説明する。図7は、音データ生成装置10の機能的構成の一例を示す図である。図7において、空間特性制御部11,オブジェクト制御部12,粒子運動制御部13,特定領域制御部14,波形算出部15,映像制御部16及び音データ生成部17は、制御部101がROM103に記憶されたプログラムを実行することによって実現される。なお、図中の矢印はデータの流れを概略的に示すものである。
(A-3: Functional configuration of the sound data generation device 10)
Next, an example of a functional configuration of the sound
空間特性制御部11は、仮想空間100に設定される各種の特性であって仮想粒子200の運動に影響を及ぼす各種の特性を制御することで仮想空間100を設定する。ここで、空間特性制御部11が行う空間制御処理の内容について、図8を参照しつつ説明する。図8は、モニタ30の画面の一例を示した図である。画面には、仮想空間100の枠組みが表示されている。また、仮想空間100の図中右側には、制御パネル400が表示されている。空間特性制御部11は、ユーザによる制御パネル400に対する操作に基づき、仮想空間100を以下のように設定する。
The space
仮想空間100には、以下に例示するような「空間特性」が設定される。制御パネル400の図中下部の空間特性アイコン404がクリックされると、空間特性制御部11は、所定の選択肢をモニタ30の画面上に表示する。図9は、表示画面の一例を示す図である。図9に示す例においては、「(重力の)方向」、「重力加速度」、「(抵抗力の)比例定数」といった各種の空間特性を設定するための画面が表示される。ユーザは、マウス20を操作して、画面上に表示された重力の方向に関する選択肢を選択し、重力加速度の大きさを書き込む。また、ユーザは、仮想粒子200の移動の際に働く抵抗力は仮想粒子200の速度に比例するとし、その速度に応じた抵抗力を決定するための比例定数をマウス20を操作して書き込む。空間特性制御部11は、マウス20から供給される操作信号に応じて、入力された内容を示すデータをRAM104の所定の記憶領域に書き込む。
In the
これら仮想空間100に関する設定は、予め制御プログラムなどにテンプレートとして書き込んでおいてもよい。例えば、あるテンプレートにおいては、重力場は画面下方に設定され、仮想空間100内を移動する仮想粒子200には移動の方向とは逆にその速度に比例した抵抗力が働き、その比例定数が「水中」に相当するような大きな値に設定されているようにすれば、ユーザはそのテンプレートを選択するだけで、仮想空間100がまるで重力のある空間に設置された水が満たされた容器であるかのような設定を容易に行うことができる。
These settings related to the
次に、図7に示すオブジェクト制御部12は、仮想空間100内に仮想粒子200を出現させるオブジェクト(スプリンクラ150)の配置等を制御する。本実施形態における仮想空間100には、仮想粒子200を仮想空間100に発生させるためのオブジェクトとして、スプリンクラ150が用いられる。
Next, the
ここで、オブジェクト制御部12が行う処理の内容について、図10を参照しつつ説明する。図10は、モニタ30に表示される画面の一例を示す図である。ユーザは、図10に例示される画面を参照しながら、マウス20を用いて制御パネル400の初速度402、頻度403の値を設定し、スプリンクラアイコン401を仮想空間100内にドラッグする操作を行う。オブジェクト制御部12は、マウス20から供給される操作信号に応じて、スプリンクラ150の初速度と頻度とを設定し、設定したスプリンクラ150を仮想空間100内に出現させる。スプリンクラ150の配置はユーザがマウス20を用いてドラッグ操作を行うことで自由に変更できる。ユーザによってドラッグ操作が行われると、オブジェクト制御部12は、マウス20からの操作信号に応じて仮想空間100におけるスプリンクラ150を移動する。
Here, the contents of the processing performed by the
オブジェクト制御部12は、スプリンクラ150の放出口150aから、複数の仮想粒子200を、設定された初速度及び頻度で仮想空間100に対して連続的に放出する演算を行う。より具体的には、オブジェクト制御部12は、時間平均して単位時間あたり設定された頻度となるように、仮想粒子200をスプリンクラ150から連続的に放出する。
また、オブジェクト制御部12は、スプリンクラ150の座標を示すデータを映像制御部16に供給する。
The
Further, the
次に、図7に示す粒子運動制御部13は、仮想空間100内においてスプリンクラ150から放出された仮想粒子の軌道を演算する。より具体的には、粒子運動制御部13は、仮想空間100内での仮想粒子200の運動を以下に説明するルール(a)〜(c)に従って制御する。なお、以下のルールは、地球上の物体の力学的性質及び力学的法則を模したものである。
(a)仮想粒子200は、所定の体積(v)及び質量(m)を有している。
(b)仮想粒子200に働く力Fと仮想粒子200の質量mと加速度aとの間にはF=maの関係がある。例えば本実施形態においては、仮想空間100の下方向に重力が加わるため、仮想粒子200には常にmg(gは重力加速度)の大きさの力が仮想空間100の下向きに働く。
(c)仮想粒子200同士、及び仮想粒子200と仮想空間100の枠組みが衝突した場合には、跳ね返り係数1で完全弾性衝突をする。
Next, the particle
(A) The
(B) There is a relationship of F = ma between the force F acting on the
(C) When the
また、粒子運動制御部13は、仮想空間100の枠組みの図中底辺に達した仮想粒子200を消滅させる。
また、粒子運動制御部13は、各仮想粒子の座標を示すデータを映像制御部16に供給する。
Further, the particle
Further, the particle
次に、図7に示す特定領域制御部14は、仮想空間100の一部又は全部の領域を、特定領域として1又は複数特定する。図10に示す例においては、特定領域制御部14は、仮想空間100の予め定められた位置に、矩形の特定領域300を設ける。
また、特定領域制御部14は、特定領域の座標を示すデータを映像制御部16に供給する。
Next, the specific
Further, the specific
次に、図7に示す波形算出部15は、粒子運動制御部13による演算結果に従って、特定領域300内に含まれる仮想粒子200の配置態様によって表現される波形を算出する。ここでは、波形算出部15は、特定領域300内に含まれる各仮想粒子200の座標を取得し、それらの仮想粒子200を予め定められた軸方向(図10に示す例では図中左右方向(以下「x軸方向」という))に近接する仮想粒子200同士を繋ぐことによって表れる波形を算出する。このとき、波形算出部15は、特定領域300の図中左端部の図中上下方向(以下「y軸方向」という)における中心位置p1を波形の始点とし、特定領域300の図中右端部のy軸方向における中心位置p2を波形の終点とする。この始点と終点の位置は固定とする。図10に示す例においては、波形算出部15は、点p1を始点として、x座標値が小さい順に、仮想粒子200a,200b,200c…を、波形を構成する仮想粒子として採用する。
Next, the
このとき、波形算出部15は、x座標の値が同一である仮想粒子200が複数ある場合には、近接する仮想粒子200との距離が最小となる仮想粒子200を、波形を構成する仮想粒子として採用する。具体的には、例えば、図10に示す例において、仮想粒子200fと仮想粒子200gのx座標値が同一である場合には、制御部101は、仮想粒子200eとの距離が小さい方の仮想粒子200fを、波形を構成する仮想粒子として採用する。
At this time, when there are a plurality of
仮想粒子200は各々時間の経過と共に、重力に伴う振動や衝突による運動を行うから、仮想粒子200によって特定領域300内に構成される波形は時々刻々変化する。また、特定領域300内に新に仮想粒子200が侵入すると、これらの仮想粒子200も上述と同様の動きをするから、波形変化はより複雑化、多様化したものとなる。
Since the
図10に示す例において、特定領域300内に表れる波形Wは、x軸方向を時間軸とし、y軸方向を振幅として表現される。波形Wの振幅は特定領域300のy軸方向の幅以下となり、振幅が必要以上に大きくなってしまうことがない。
In the example illustrated in FIG. 10, the waveform W that appears in the
次に、図7に示す映像制御部16は、オブジェクト制御部12、粒子運動制御部13、特定領域制御部14から供給されるデータに基づいて、仮想空間100内のスプリンクラ150の位置や仮想粒子200の運動等を示す映像データを生成し、モニタ30に供給する。モニタ30は供給される映像データに基づいて仮想空間100内の仮想粒子200の運動等を示す映像を表示する。
Next, the
次に、音データ生成部17は、波形算出部15により算出された波形に対応した音データを生成する。ここでは、音データ生成部17は、波形算出部15により算出された波形を1周期として、予め定められた周波数で、その波形を複数回繰り返した音データを生成する。具体的には、例えば、予め定められた周波数が440Hzである場合には、音データ生成部17は、特定領域300内に表れた波形を1秒間に440回繰り返した音データを生成する。
Next, the sound
このとき、音データ生成部17は、MAX/MSPを用いて音データを生成する。MAX/MSPとは、音楽プログラミング言語MAXsと音響信号処理用エクステンションMSPとからなる。MAX/MSPによれば、様々なモジュールをつなぎ合わせて、シンセサイザ、エフェクタ、シーケンサなどが作れるほか、パッチングによって音楽の自動生成なども可能であり、ビジュアル的なプログラミング環境によって、直感的なプログラミング・操作ができる。
At this time, the sound
音データ生成部17は、生成した音データを音データ再生部30aに出力する。音データ再生部30aは、音データ生成部17から供給される音データに基づいて放音する。
The sound
(B:動作)
次に、音データ生成装置10が音データを生成する動作について説明する。まず、音データ生成装置10の電源が投入されると、制御部101はROM103から各種制御プログラムを読み出し、RAM104にロードする。
(B: Operation)
Next, an operation in which the sound
(B−1:初期設定処理)
まず、制御部101は、初期設定処理を行う。図11は、初期設定処理の流れを示したフローチャートである。まず、音データ生成システム1のユーザは、制御パネル400の空間特性アイコン404(図8参照)をクリックする。制御部101は、マウスからの操作信号に応じて、パラメータ設定のための画面(図9参照)を示すデータをモニタ30に出力し、モニタ30は、制御部101から供給されるデータに応じた画面を表示する。ユーザは、モニタ30に表示される画面を参照しつつ、仮想空間100の空間特性を設定するための操作を行う。制御部101は、マウス20から供給される信号に応じて、仮想空間100の空間特性、すなわち仮想空間100における重力や抵抗力等の設定を行う(ステップSA100)。
(B-1: Initial setting process)
First, the
例えば、重力の設定において、重力の方向として図面下方向が選択されその重力加速度の値が書き込まれると、仮想粒子200に対して画面下方向に設定された値の重力が働くように設定される。また、抵抗力の設定において、比例定数の値が書き込まれると、仮想粒子200の移動速度に比例した抵抗力が移動と逆方向に働く。そして、その比例定数に対応してあたかも空気や水が仮想空間100に満たされているような環境に設定される。
For example, in the gravity setting, when the downward direction of the drawing is selected as the direction of gravity and the value of the gravitational acceleration is written, the
次いで、制御部101は、スプリンクラ150(仮想粒子200を仮想空間100に出現させる手段)の設定を行う(ステップSA110)。ユーザがマウス20を操作することにより制御パネル400にパラメータが書き込まれた後、スプリンクラアイコン401がクリックされ、仮想空間100内の領域が設定されると、制御部101は、マウス20から供給される操作信号に応じて、スプリンクラ150の設定処理を行う。スプリンクラ150の配置はユーザがマウス20を用いて自由に変更できる。
Next, the
(B−2:音データ生成処理)
初期設定処理がなされると、制御部101は音データ生成処理を開始する。図12は音データ生成処理の流れを示したフローチャートである。まず、制御部101は、スプリンクラ150から、仮想粒子200を仮想空間100内に放出させる(ステップSB110)。次いで、制御部101は、放出した仮想粒子200のそれぞれについて、ステップSB120以降の処理を並行して行う。
(B-2: Sound data generation process)
When the initial setting process is performed, the
制御部101は、まず、微少単位時間後の仮想粒子200の運動(挙動)を演算する(ステップSB120)。より具体的には、仮想粒子200が仮想空間100の壁又は他の仮想粒子200に衝突した場合には、完全弾性衝突で跳ね返り、制御部101は、その仮想粒子200に新たな速度を設定する。一方、衝突が起こっていない場合には、制御部101は、仮想粒子200の速度に微少時間を乗算することにより、仮想粒子200を新たな位置に移動する。このとき、ステップSB120においては、ステップSB110にて仮想空間100に出現した仮想粒子200の全てについて同時にその軌道の算出が行われるため、ランダムに出現した多数の仮想粒子200が互いに相互作用を高頻度で繰り返すこととなる。従って、仮に仮想空間100の各種設定が同一であっても、毎回異なった仮想粒子200の挙動が引き起こされる。
First, the
次いで、制御部101は、仮想粒子200が仮想空間100の底面に到達して消滅するか否かを判定する(ステップSB130)。仮想粒子200が仮想空間100の底面に到達したと判定した場合には(ステップSB130;YES)、制御部101は、その仮想粒子200を画面上から消去し、その仮想粒子200に関しての処理を終了する。一方、仮想粒子200が仮想空間100の底面に到達していないと判定した場合には(ステップSB130;NO)、制御部101は、ステップSB140以降の処理を行う。
Next, the
制御部101は、特定領域300内に存在する各仮想粒子200の位置から波形を算出し(ステップSB140)、算出した波形に基づいて音データを生成する(ステップSB150)。制御部101は、生成した音データをモニタ30の音データ再生部30aに供給する。音データ再生部30aは、制御部101から供給される音データに基づいて放音する。
The
上述のように、仮想粒子200はスプリンクラ150からランダムに放出され、また、多数の仮想粒子200が互いに高頻度で相互作用を繰り返しているため、前述のように波形は複雑にかつ多様に変化し、これにより、生成される音データはランダム性や非再現性を有する。
As described above, the
制御部101は、ステップSB150の処理を終えると、ステップSB120の処理に戻り、粒子の挙動演算処理を継続して行う。
When the process of step SB150 is completed, the
また、制御部101は、演算により求められた各仮想粒子200の座標に基づいて、仮想空間100内の仮想粒子200の位置等の画像を示す画像データを生成し、モニタ30に出力する。モニタ30は、制御部101から供給されるデータに応じた画面を表示する。これにより、モニタ30には仮想空間100における仮想粒子200の運動状態が表示される。また、制御部101によって生成される音データは、モニタ30に表示される画面に対応するものであるから、ユーザは、放音された音とそのまま対応する画面表示を見ることができる。
Further, the
制御部101は、ステップSB150において生成した音データを音データ再生部30aへ出力する。音データ再生部30aは制御部101から供給される音データを再生する。また、制御部101は、スプリンクラ150の配置態様及び仮想空間100に設定された空間特性等、音データの生成に係る各種パラメータの情報(以下「設定情報」という)を、試行毎にRAM104に書き込む。制御部101は、RAM104に書き込まれた設定情報を読み出すことにより、再度同じ条件下で音データの生成処理を行うことができる。そのように同様の条件設定で再び音データを生成したとしても、各仮想粒子200の挙動は毎回異なるため、微視的には異なる波形の音データが生成される。
The
以上説明したように本実施形態によれば、特定領域300内に表れる波形は粒子の動きにより変形され、波形の形状が変わると音色が変わる。また、スプリンクラ150から仮想粒子が連続的に放出され、放出された各仮想粒子同士の衝突を含めて各仮想粒子の軌道が演算されるから、これにより、音色が非規則的に変化する音を出力することができる。
As described above, according to the present embodiment, the waveform appearing in the
また、この実施形態では、特定領域300を規定してその領域内に表れる波形を用いるから、波形の最大振幅は、特定領域300の縦幅となり、このようにすることで、音量が必要以上に大きくなってしまうのを防ぐことができる。
Further, in this embodiment, since the
(C:変形例)
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されることなく、他の様々な形態で実施可能である。以下にその一例を示す。なお、以下の各態様を適宜に組み合わせてもよい。
(1)上述の実施形態では、制御部101は、矩形の特定領域を設ける構成としたが、特定領域の形状は矩形に限らず、例えば、楕円形や台形、五角形等であってもよく、また、例えば、図13(a),(b)に示すような、ADSR(Attack Decay Sustain Release)のパラメータにより整形される領域を用いるようにしてもよい。要は、仮想空間100内の一部又は全部の領域が特定される形状であればどのようなものであってもよい。特定領域が矩形以外の形状であっても、上述の実施形態と同様に、制御部101が、その特定領域内の仮想粒子200によって表現される波形を特定するようにすればよい。
また、上述の実施形態において、仮想空間100内に仮想粒子200を反射させる反射板を1又は複数設けてもよい。反射板は、仮想粒子200を反射させて特定領域の波形をユーザが制御するために設置する。ユーザがマウス20を用いて仮想空間100内の反射板を移動させる操作を行うと、制御部101は、マウス20からの信号に応じて、操作された内容に応じた位置に反射板を移動させる。
(C: Modification)
As mentioned above, although embodiment of this invention was described, this invention is not limited to embodiment mentioned above, It can implement with another various form. An example is shown below. In addition, you may combine each following aspect suitably.
(1) In the above-described embodiment, the
In the above-described embodiment, one or more reflectors that reflect the
(2)上述の実施形態では、制御部101は、特定領域300内に位置する仮想粒子200について、x軸方向に近接する仮想粒子200同士を繋ぐことによって表れる波形を算出したが、波形の算出態様はこれに限らず、例えば、特定領域300内に位置する仮想粒子200について、y軸方向に近接するもの同士を繋ぐことによって表れる波形を算出するようにしてもよく、特定領域300内に含まれる仮想粒子200の配置態様によって表現される波形を所定のアルゴリズムに従って算出するものであればどのようなものであってもよい。
(2) In the above-described embodiment, the
(3)上述の実施形態では、図10に例示したように、仮想空間100に一つの特定領域300を設けたが、特定領域の数は1に限らず、制御部101が、仮想空間100内の一部又は全部の領域を特定領域として複数特定してもよい。この場合の動作例について、図14を参照しつつ説明する。図14は、モニタ30に表示される画面の一例を示す図である。図14に示す例においては、制御部101は、仮想空間100内に2つの特定領域300a,300bを設定する。この場合、制御部101は、それらの特定領域300a,300bの一部又は全部が重なる場合には、重なる領域を共有して、特定領域毎に波形を算出する。
(3) In the above-described embodiment, as illustrated in FIG. 10, one
この場合は、複数の特定領域が重なる場合に重なる部分を共有するから、重なった領域において複数の波形で共通の部分を持たせることができ、これにより、複数の特定領域の各波形から生成される音データの表す音の音色に相関関係を持たせることができる。すなわち、この態様によれば、似た音色の複数の異なる音を同時に奏でることができる。 In this case, since the overlapping portions are shared when a plurality of specific regions overlap, it is possible to have a common portion in a plurality of waveforms in the overlapping regions, and thereby, the waveforms are generated from the waveforms of the plurality of specific regions. It is possible to correlate the timbre of the sound represented by the sound data. That is, according to this aspect, a plurality of different sounds having similar timbres can be played simultaneously.
(4)上述の実施形態では、制御部101は、特定領域300内に表れる波形Wを1周期分の波形として、その波形のデータを生成したが、特定領域300内に表れる波形Wを1周期より短い時間の波形として用いるようにしてもよく、また、1/2周期など長時間の波形であってもよい。
(4) In the above-described embodiment, the
(5)上述の実施形態では、制御部101は、仮想空間100の予め定められた位置に、特定領域300を設けるようにしたが、制御部101が、特定領域300を、仮想空間100内で移動させたり、回転させたりすることができるようにしてもよい。この場合は、例えば、ユーザがマウス20を用いて特定領域300を移動・回転させるための操作を行い、制御部101は、マウス20からの操作信号に応じて、特定領域300の位置を仮想空間100内で移動・回転させればよい。
(5) In the above-described embodiment, the
また、制御部101が、特定領域300の形状を変更するようにしてもよい。この場合は、例えば、ユーザがマウス20を用いて特定領域300の形状を変更するための操作を行い、制御部101は、マウス20から供給される操作信号に応じて、特定領域300の形状を変更すればよい。この場合も、制御部101は、特定領域300内の仮想粒子200によって表現される波形に基づいて音データを生成すればよい。特定領域300のx軸方向の長さが長いほど周波数を低くする、といったように、特定領域300の形状に応じて読み出し周期を変更するようにしてもよい。
Further, the
また、ユーザが、鍵盤楽器に設けられる鍵盤や上記実施形態のマウス20、キーボード等の操作手段を操作してMIDIの音色を指定できるようにし、制御部101が、指定された音色に対応する波形のエンベロープをADSRパラメータにより整形される領域を特定領域として特定するようにしてもよい。この場合は、指定された音色に近い音色の音データが音データ生成装置により生成されることとなる。
Further, the user can designate a MIDI tone by operating an operation means such as a keyboard provided on the keyboard instrument, the
また、ユーザが、鍵盤、マウス、キーボード等の操作手段を操作してベロシティを指定できるようにし、制御部101が、指定されたベロシティに応じてADSRパラメータを特定し、特定したパラメータにより整形される領域を特定領域として特定するようにしてもよい。この場合は、より具体的には、ベロシティとADSRパラメータとを対応付けて所定の記憶領域に予め記憶させておき、ユーザによってベロシティが指定されると、制御部101が、指定されたベロシティに対応するADSRパラメータを記憶された対応関係に基づいて特定し、特定したパラメータにより整形される領域を特定領域として特定するようにすればよい。
In addition, the user can operate the operation means such as a keyboard, a mouse, and a keyboard to specify the velocity, and the
(6)上述の実施形態では、予め定められた周波数で波形を繰り返した音データを生成するようにしたが、周波数(音高)を変更できるようにしてもよい。具体的には、例えば、ユーザがマウス20やキーボード等の操作手段を操作して音高を指定できるようにし、制御部101が、操作手段からの操作信号に応じて音高を示す音高データを取得し、特定領域300内に表れた波形を1周期として、取得した音高データの示す音高に対応する周波数の音データを生成するようにしてもよい。
(6) In the above-described embodiment, sound data having a waveform repeated at a predetermined frequency is generated. However, the frequency (pitch) may be changed. Specifically, for example, the user can operate the operation means such as the
また、鍵盤楽器に設けられる鍵盤(キーボード)をユーザが操作することによって音高を指定するようにしてもよい。この場合は、音高を指定するための鍵を複数有する鍵盤を音データ生成装置に設ける構成としてもよく、また、鍵盤を備える音高指定装置を音データ生成装置と接続するようにしてもよい。この場合、ユーザが鍵盤に含まれるいずれかの鍵を押下すると、鍵盤が操作された内容に応じた信号を出力し、音データ生成装置が、鍵盤からの信号に応じて、押下された鍵に対応する音高を示す音高データを取得し、取得した音高データの示す音高の音データを生成する。 Further, the pitch may be designated by the user operating a keyboard (keyboard) provided on the keyboard instrument. In this case, the sound data generating device may be provided with a keyboard having a plurality of keys for designating the pitch, and the pitch specifying device having the keyboard may be connected to the sound data generating device. . In this case, when the user presses any key included in the keyboard, a signal corresponding to the operation of the keyboard is output, and the sound data generation device applies the pressed key according to the signal from the keyboard. The pitch data indicating the corresponding pitch is acquired, and the pitch data indicated by the acquired pitch data is generated.
制御部101が音高データを取得する態様は上述したものに限らず、例えば、通信ネットワークを介して音高データを受信するようにしてもよく、制御部101が音高を示す音高データを取得するものであればよい。
The manner in which the
(7)上述の実施形態では、制御部101が、特定領域300内の仮想粒子200の配置態様によって表現される波形に対応した音データを生成した。これに代えて、特定領域300の予め定められた軸方向の位置と音高との対応関係をROM等の記憶部に予め記憶させておき、制御部101が、仮想粒子200が特定領域300を通過するときの位置に対応する音高の音データを生成するようにしてもよい。この場合の具体例について以下に説明する。
(7) In the above-described embodiment, the
この態様では、音データ生成装置10の記憶部に、特定領域300における予め定められた軸方向(例えばx軸方向)の位置(座標)と、音高(又は周波数)との対応関係を示す関数を予め記憶させておく。なお、この例では対応関係を示す関数を記憶部に記憶するようにしたが、これに限らず、対応関係を示すテーブル等を記憶するようにしてもよく、対応関係を示すものであればどのようなものであってもよい。
In this aspect, a function indicating a correspondence relationship between a position (coordinates) in a predetermined axial direction (for example, the x-axis direction) and a pitch (or frequency) in the
この場合、制御部101は、上述の実施形態と同様に、スプリンクラ150から放出される各仮想粒子200の軌道を、各仮想粒子200同士の衝突も含めて演算し、この演算結果に従って、仮想粒子が特定領域300を通過するときのx軸方向の位置を算出する。次いで、制御部101は、算出した位置に対応する音高を記憶部に記憶された対応関係に基づいて特定し、特定した音高の音データを生成する。なお、特定領域300の形状は、上述の実施形態で示したような矩形等の多角形の形状であってもよく、また、図15に示すような直線や、また、曲線等の線状であってもよい。
In this case, similarly to the above-described embodiment, the
この場合、仮想粒子200の軌道は、上述の実施形態と同様に仮想粒子200同士の衝突も含めて演算されるから、特定領域300を通過する仮想粒子200の位置は非規則的なものとなる。これにより、制御部101により生成される音データの音高は時間の経過に伴って非規則的に変化する。
In this case, since the trajectory of the
また、上述の実施形態とこの変形例とを組み合わせてもよい。この具体例について図16を参照しつつ説明する。図16は、この変形例においてモニタ30に表示される画面の一例を示す図である。図16において、音高用スプリンクラアイコン413は、音高を変更するための仮想粒子210を放出する音高用スプリンクラ160を仮想空間100内に配置するためのアイコンである。ユーザは、画面を参照しながら、マウス20を用いて音高用スプリンクラアイコン413を仮想空間内にドラッグする操作を行う。制御部101は、マウス20からの信号に応じて、図16に例示するように、スプリンクラ150に加えて、スプリンクラ160を仮想空間100内に設け、スプリンクラ160から、音高を変更するための仮想粒子210を放出させる。このとき、制御部101は、特定領域300内の仮想粒子200の配置態様によって表される波形Wの音データであって仮想粒子210が特定領域300を通過するときの位置に対応する音高の音データを生成する。
Moreover, you may combine the above-mentioned embodiment and this modification. A specific example will be described with reference to FIG. FIG. 16 is a diagram showing an example of a screen displayed on the
(8)上述の実施形態では、制御部101が、特定領域300内に位置する仮想粒子200の配置態様によって表現される波形に対応した音データを生成したが、これに代えて、特定領域300内に予め定められた波形を配置しておくようにしてもよい。図17は、この態様においてモニタ30に表示される画面の一例を示す図である。図17に示す例においては、制御部101は、特定領域300内に、予め定められた波形W2を配置する。この波形W2は、例えばMIDI(Musical Instrument Digital Interface)音源が生成する音声波形に応じたものであってもよく、また、例えばマイクロホン等によって収音された音の波形であってもよい。制御部101は、スプリンクラ150から放出される仮想粒子200の軌道を、仮想粒子200同士の衝突も含めて演算し、演算結果に従って、仮想粒子200と波形W2とが衝突するタイミングを算出する。次いで、制御部101は、仮想粒子200と波形W2とが衝突したタイミングで、波形W2の表す音の音データを音データ再生部30aに出力する。
(8) In the above-described embodiment, the
このとき、制御部101が、仮想粒子200の軌道の演算結果に従って、仮想粒子200と波形W2との衝突位置(座標)を算出し、算出した衝突位置から波形を読み出したときの音を表す音データを生成するようにしてもよい。このようにすれば、仮想粒子200と波形W2との衝突位置によってそれぞれ異なる音色の音が非規則的に放音される。
At this time, the
また、衝突位置から波形を読み出す場合には、波形W2に2つの仮想粒子200が同時に衝突したときには、制御部101が、それぞれの衝突位置から読み出した音を表す音データを同時に出力するようにしてもよい。
When reading the waveform from the collision position, when two
また、この態様において、制御部101が、質量や移動速度等の粒子特性を有する仮想粒子200をスプリンクラ150から放出するようにし、波形W2に衝突した仮想粒子200の粒子特性(質量や移動速度)に応じて、波形の位相、振幅、周期(ピッチ)等を変化させてもよい。具体的には、例えば、制御部101が、波形W2に衝突した仮想粒子200の質量が大きいほど波形の振幅を大きくしたり、衝突した仮想粒子200の移動速度が速いほど周波数を大きくするようにしてもよい。
In this aspect, the
また、この態様において、制御部101が、仮想粒子200と波形W2とが衝突する毎に、波形W2を変形させてもよい。具体的には、例えば、図17に示す例において、図中上部から図中下方向に落下した仮想粒子200が波形W2と衝突したときには、制御部101が、図18に示すように、衝突位置の波形W2の形状が図中下部にへこんだ形状となるように変形してもよい。この場合に、制御部101が、衝突した仮想粒子200の粒子特性(質量、移動速度)等に応じて波形W2の変形量を変化させるようにしてもよい。
In this aspect, the
また、この変形例において、制御部101が、特定領域300内で仮想粒子200をx軸方向に接続した線をエンベロープとして波形W2の振幅を制限するようにしてもよい。具体的には、例えば、図17に示す波形W2が特定領域300内に配置されている場合において、制御部101が、図19に示すように、特定領域300内の仮想粒子200に応じて波形W2の振幅を制限するようにしてもよい。
Further, in this modification, the
(9)上述の実施形態では、制御部101が、ユーザの操作に応じて、スプリンクラ150の位置を移動させることにより、ユーザがスプリンクラ150の位置を適宜設定できるようにしたが、これに限らず、スプリンクラ150の位置を予め定められた位置に固定しておくようにしてもよい。
また、上述の実施形態において、制御部101が、スプリンクラ150毎に異なる放出態様で仮想粒子200を放出させるようにしても良い。例えば、制御部101が、複数配置されたスプリンクラ150のそれぞれで異なる放出頻度で仮想粒子を放出するようにしてもよい。また、スプリンクラ150毎に異なる性質(質量、大きさ等)の仮想粒子200を放出するようにしてもよい。
(9) In the above-described embodiment, the
In the above-described embodiment, the
(10)上述の実施形態では、重力や抵抗力等の空間特性を、音データの生成処理の最中に変更しない場合について説明したが、制御部101が、音データ生成処理の最中に変更することができるようにしてもよい。例えば、予め重力加速度の方向が周期的に変化するようにプログラムしておけば、その重力加速度の周期的変化により、仮想粒子200の運動が周期的に変化する。
(10) In the above-described embodiment, the case where the spatial characteristics such as gravity and resistance force are not changed during the sound data generation process has been described. However, the
(11)上述の実施形態では、スプリンクラ150から出現する仮想粒子200の出現パターンがランダムである場合について説明した。これに代えて、制御部101が、仮想粒子200の出現パターンの頻度や出現箇所を周期的に変更するようにしてもよい。また、上述の実施形態では、仮想粒子200の初速度が均一である場合について説明したが、これに代えて、制御部101が、仮想粒子200の初速度を仮想粒子200毎に異ならせるようにしてもよい。
(11) In the above-described embodiment, the case where the appearance pattern of the
(12)上述の実施形態において、制御部101が、スプリンクラ150から、速度、大きさ、質量など、異なる特性を有する仮想粒子200を放出するようにしてもよい。また、例えば、制御部101が、スプリンクラ150から、放射角度の広がりや発射頻度などの放出態様を変化させながら仮想粒子200を放出するようにしてもよい。
(12) In the above-described embodiment, the
また、上述の変形例(6)で示したような、音高に対応した周波数(同じ周波数でもよいし、所定数分の1の周波数でもよい)で、上述の変形例(10)〜(12)で示したパラメータ(重力、抵抗力、重力加速度、出現頻度、初速度、質量、等)等を振動させるようにしてもよい。 In addition, as shown in the above-described modification (6), the above-described modifications (10) to (12) have frequencies corresponding to the pitch (the same frequency or a predetermined number of frequencies may be used). ) (Gravity, resistance, gravitational acceleration, appearance frequency, initial speed, mass, etc.) etc. may be vibrated.
(13)上述の実施形態における音データ生成装置10の制御部101によって実行されるプログラムは、磁気テープ、磁気ディスク、フレキシブルディスク、光記録媒体、光磁気記録媒体、RAM、ROM等のコンピュータが読取可能な記録媒体に記録した状態で提供し得る。また、インターネットのようなネットワーク経由で音データ生成装置10にダウンロードさせることも可能である。
(13) A program executed by the
(14)上述の実施形態では、制御部101は、仮想粒子200同士が衝突した場合や仮想粒子200と仮想空間100の枠組みとが衝突した場合には、跳ね返り係数1で完全弾性衝突をする場合について説明したが、跳ね返り係数は、1以外の値でもよい。例えば、跳ね返り係数が0から1までの非弾性衝突を行うとしても良い。また、自然法則には反するが、衝突後の各オブジェクトの速度を算出する際に、1を超える値を跳ね返り係数として用いても良い。
(14) In the above-described embodiment, when the
(15)また、上述の実施形態では、制御部101が、スプリンクラ150から放出される各仮想粒子の軌道を、各仮想粒子同士の衝突を含めて演算することにより、特定領域300内の仮想粒子200の配置が非規則的に変化し、これに伴って特定領域300内に表れる波形が非規則的に変化した。特定領域300内に表れる波形を非規則的に変化させる態様はこれに限らず、例えば、制御部101が、スプリンクラ150から複数の仮想粒子200を非規則的に放出するようにしてもよい。この場合は、非規則的に放出されることにより特定領域300内の仮想粒子200の配置が非規則的に変化するから、特定領域300内に表れる波形の形状も時間の経過に伴って非規則的に変化する。
要するに、制御部101が、特定領域300内に表れる波形が非規則的に変化するように制御するようにすればよい。
(15) Further, in the above-described embodiment, the
In short, the
(16)上述の実施形態では、制御部101が、特定領域300内に位置する仮想粒子200の配置態様によって表現される波形を算出し、算出した波形の音データを生成したが、波形の算出態様はこれに限らず、例えば、制御部101が、特定領域300内で移動可能な複数の仮想粒子を特定領域300内に配置し、その特定領域300内に配置された仮想粒子の配置態様によって表される波形を算出し、算出した波形の音データを生成するようにしてもよい。この具体例について、図20を参照しつつ説明する。
(16) In the above-described embodiment, the
図20は、この態様においてモニタ30に表示される画面の一例を示す図である。図20に示す例において、制御部101は、特定領域300内に、特定領域300内で移動可能な複数の仮想粒子220を配置する。この配置の態様としては、制御部101が予め定められた態様で配置するようにしてもよく、また、ユーザがマウス20を用いて各仮想粒子220の位置を指定し、制御部101が、マウス20からの操作信号に基づいて指定された位置に仮想粒子220を配置するようにしてもよい。また、特定領域300内に配置される仮想粒子220は、例えば仮想粒子200と衝突したときにのみ移動するようにしてもよく、また、例えば常に一定速度で移動するように制御部101が制御するようにしてもよい。
FIG. 20 is a diagram illustrating an example of a screen displayed on the
制御部101は、仮想粒子200(及び仮想粒子220)の軌道を、仮想粒子同士の衝突(仮想粒子200と仮想粒子220との衝突も含む)も含めて演算し、演算結果に従って、仮想粒子200及び仮想粒子220の位置を変化させる。すなわち、制御部101は、仮想粒子200と仮想粒子220との相互作用に基づいて特定領域300における仮想粒子220の位置を変化させる。また、制御部101は、特定領域300内の仮想粒子220の配置態様によって表現される波形W3を算出し、算出された波形の音データを生成する。
The
この態様においても、仮想粒子200及び仮想粒子220の軌道は、仮想粒子同士の衝突も含めて演算されるから、特定領域300内に表れる波形W3は非規則的に変化し、これにより、非規則的に音色が変化する音データを生成することができる。
Also in this aspect, since the trajectories of the
このように、音データを生成するための波形は上述の実施形態で示したものに限らず、特定領域300内の仮想粒子220の配置態様によって表現される波形であってもよく、また、例えば、上述の変形例(8)に例示したような、予め定められた波形を仮想粒子200の運動に伴って変形させて用いるようにしてもよい。要は、制御部101が、特定領域300内の仮想粒子200に応じて波形を算出すればよい。
Thus, the waveform for generating sound data is not limited to that shown in the above-described embodiment, and may be a waveform expressed by the arrangement of the
1…音データ生成システム、10…音データ生成装置、11…空間特性制御部、12…オブジェクト制御部、13…粒子運動制御部、14…特定領域制御部、15…波形算出部、16…映像制御部、17…音データ生成部、20…マウス、21…本体、22…ボタン、23…通信ケーブル、24…移動検知手段、30…モニタ、40…多点コントローラ、41…通信ケーブル、42…タッチパネル、100…仮想空間、101…制御部、102…光ディスク再生部、103…ROM、104…RAM、105…I/O部、109…バス、150,160…スプリンクラ、200,210,220…仮想粒子、300…特定領域、400…制御パネル。
DESCRIPTION OF SYMBOLS 1 ... Sound data generation system, 10 ... Sound data generation apparatus, 11 ... Spatial characteristic control part, 12 ... Object control part, 13 ... Particle motion control part, 14 ... Specific area control part, 15 ... Waveform calculation part, 16 ... Image | video Control unit, 17 ... Sound data generation unit, 20 ... Mouse, 21 ... Main body, 22 ... Button, 23 ... Communication cable, 24 ... Movement detection means, 30 ... Monitor, 40 ... Multipoint controller, 41 ... Communication cable, 42 ... Touch panel, 100 ... virtual space, 101 ... control unit, 102 ... optical disc playback unit, 103 ... ROM, 104 ... RAM, 105 ... I / O unit, 109 ... bus, 150, 160 ... sprinkler, 200, 210, 220 ...
Claims (10)
前記仮想空間設定手段により設定された仮想空間の一部又は全部の領域を、特定領域として1又は複数特定する特定領域特定手段と、
複数の仮想粒子を前記仮想空間に対して連続的に放出する演算を行う仮想粒子放出手段と、
前記仮想粒子放出手段の演算により放出された各仮想粒子の軌道を、前記各仮想粒子同士の衝突を含めて演算する軌道演算手段と、
前記軌道演算手段による演算結果に従って、前記特定領域特定手段により特定された特定領域内の前記仮想粒子に応じて波形を算出する波形算出手段と、
前記波形算出手段により算出された波形に対応した音データを生成する音データ生成手段と、
前記音データ生成手段により生成された音データを出力する出力手段と
を具備することを特徴とする音データ生成装置。 Virtual space setting means for setting a virtual space;
Specific area specifying means for specifying one or more areas as a specific area of a part or all of the virtual space set by the virtual space setting means;
Virtual particle emitting means for performing an operation of continuously discharging a plurality of virtual particles to the virtual space;
A trajectory computing means for computing the trajectory of each virtual particle emitted by the computation of the virtual particle emitting means, including the collision between the virtual particles;
Waveform calculating means for calculating a waveform according to the virtual particles in the specific area specified by the specific area specifying means according to the calculation result by the trajectory calculating means;
Sound data generating means for generating sound data corresponding to the waveform calculated by the waveform calculating means;
An output means for outputting the sound data generated by the sound data generation means.
ことを特徴とする請求項1に記載の音データ生成装置。 The waveform calculating unit calculates a waveform expressed by an arrangement mode of the virtual particles included in the specific region specified by the specific region specifying unit according to a calculation result by the trajectory calculating unit. Item 2. The sound data generation device according to Item 1.
ことを特徴とする請求項2に記載の音データ生成装置。 The sound data generation device according to claim 2, wherein the waveform calculation unit calculates a waveform that appears by connecting virtual particles adjacent to each other in a predetermined axial direction within the specific region.
ことを特徴とする請求項1乃至3のいずれか1に記載の音データ生成装置。 The sound data generation unit according to any one of claims 1 to 3, wherein the sound data generation unit generates sound data by repeating a plurality of times with the waveform calculated by the waveform calculation unit as one cycle. apparatus.
を具備し、
前記音データ生成手段は、前記音高データ取得手段により取得された音高データの示す音高に基づいて音データを生成する
ことを特徴とする請求項1乃至4のいずれか1に記載の音データ生成装置。 Pitch data acquisition means for acquiring pitch data indicating the pitch;
5. The sound according to claim 1, wherein the sound data generation unit generates sound data based on a pitch indicated by the pitch data acquired by the pitch data acquisition unit. Data generator.
前記波形算出手段は、前記複数の特定領域の一部又は全部が重なる場合には、重なる領域を共有して、前記特定領域毎に波形を算出する
ことを特徴とする請求項1乃至5のいずれか1に記載の音データ生成装置。 The specific area specifying means specifies a part or all of the areas in the virtual space as specific areas,
6. The waveform calculation unit according to claim 1, wherein, when part or all of the plurality of specific regions overlap, the waveform calculation unit calculates the waveform for each of the specific regions by sharing the overlapping region. The sound data generation device according to claim 1.
前記軌道演算手段による演算結果に従って、前記仮想粒子が前記特定領域を通過するときの、該仮想粒子の前記特定領域における前記予め定められた軸方向の位置を算出する位置算出手段と、
前記記憶手段に記憶された対応関係に基づいて、前記位置算出手段により算出された位置に対応する音高を特定する音高特定手段と
を具備し、
前記音データ生成手段は、前記音高特定手段により特定された音高の音データを生成する
ことを特徴とする請求項1に記載の音データ生成装置。 Correspondence storage means for storing a correspondence between a predetermined axial position and pitch in the specific area;
Position calculating means for calculating the predetermined axial position of the virtual particle in the specific area when the virtual particle passes through the specific area according to the calculation result by the trajectory calculating means;
A pitch specifying means for specifying a pitch corresponding to the position calculated by the position calculating means based on the correspondence stored in the storage means;
The sound data generation device according to claim 1, wherein the sound data generation unit generates sound data of a pitch specified by the pitch specification unit.
を具備し、
前記音データ生成手段は、前記軌道演算手段による演算結果に従って、前記仮想粒子放出手段の演算により放出された仮想粒子と前記波形との衝突位置から該波形を読み出したときの該波形に対応した音データを生成する
ことを特徴とする請求項1に記載の音データ生成装置。 Waveform arrangement means for arranging a waveform having a predetermined shape in the specific area specified by the specific area specifying means,
The sound data generating unit is configured to output a sound corresponding to the waveform when the waveform is read from a collision position between the virtual particle emitted by the virtual particle emitting unit and the waveform according to the calculation result by the orbit calculating unit. The sound data generation device according to claim 1, wherein data is generated.
前記軌道演算手段の演算結果に従って、前記特定領域内の前記第2の仮想粒子と前記仮想粒子放出手段の演算により放出された仮想粒子との相互作用に基づいて前記特定領域における前記第2の仮想粒子の配置を連続的に変化させる位置変化手段と
を具備し、
前記波形算出手段は、前記特定領域内の前記第2の仮想粒子の配置態様によって表現される波形を算出する
ことを特徴とする請求項1に記載の音データ生成装置。 Virtual particle arrangement means for arranging a plurality of second virtual particles movable in the specific area in the specific area specified by the specific area specifying means;
According to the calculation result of the trajectory calculation means, the second virtual particle in the specific area is based on the interaction between the second virtual particles in the specific area and the virtual particles emitted by the virtual particle emission means. Position changing means for continuously changing the arrangement of particles,
The sound data generation device according to claim 1, wherein the waveform calculation unit calculates a waveform expressed by an arrangement mode of the second virtual particles in the specific region.
仮想空間を設定する仮想空間設定手段と、
前記仮想空間設定手段により設定された仮想空間の一部又は全部の領域を、特定領域として1又は複数特定する特定領域特定手段と、
複数の仮想粒子を前記仮想空間に対して連続的に放出する演算を行う仮想粒子放出手段と、
前記仮想粒子放出手段の演算により放出された各仮想粒子の軌道を、前記各仮想粒子同士の衝突を含めて演算する軌道演算手段と、
前記軌道演算手段による演算結果に従って、前記特定領域特定手段により特定された特定領域内の前記仮想粒子に応じて波形を算出する波形算出手段と、
前記波形算出手段により算出された波形に対応した音データを生成する音データ生成手段と、
前記音データ生成手段により生成された音データを出力する出力手段
として機能させるプログラム。 Computer
Virtual space setting means for setting a virtual space;
Specific area specifying means for specifying one or more areas as a specific area of a part or all of the virtual space set by the virtual space setting means;
Virtual particle emitting means for performing an operation of continuously discharging a plurality of virtual particles to the virtual space;
A trajectory computing means for computing the trajectory of each virtual particle emitted by the computation of the virtual particle emitting means, including the collision between the virtual particles;
Waveform calculating means for calculating a waveform according to the virtual particles in the specific area specified by the specific area specifying means according to the calculation result by the trajectory calculating means;
Sound data generating means for generating sound data corresponding to the waveform calculated by the waveform calculating means;
A program that functions as output means for outputting sound data generated by the sound data generation means.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007275757A JP5051838B2 (en) | 2007-10-23 | 2007-10-23 | Sound data generating apparatus and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007275757A JP5051838B2 (en) | 2007-10-23 | 2007-10-23 | Sound data generating apparatus and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2009103934A JP2009103934A (en) | 2009-05-14 |
| JP5051838B2 true JP5051838B2 (en) | 2012-10-17 |
Family
ID=40705670
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2007275757A Expired - Fee Related JP5051838B2 (en) | 2007-10-23 | 2007-10-23 | Sound data generating apparatus and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5051838B2 (en) |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3804630B2 (en) * | 2003-03-20 | 2006-08-02 | ヤマハ株式会社 | Music generator |
| JP4477414B2 (en) * | 2004-05-21 | 2010-06-09 | 株式会社平和 | Video game machine |
| JP2006204888A (en) * | 2004-12-28 | 2006-08-10 | Aruze Corp | Simulation program and simulator |
| JP4736771B2 (en) * | 2005-12-09 | 2011-07-27 | ソニー株式会社 | Sound effect generating device, sound effect generating method, and computer program |
-
2007
- 2007-10-23 JP JP2007275757A patent/JP5051838B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2009103934A (en) | 2009-05-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7091948B2 (en) | Design of force sensations for haptic feedback computer interfaces | |
| US8858330B2 (en) | Music video game with virtual drums | |
| JP4736771B2 (en) | Sound effect generating device, sound effect generating method, and computer program | |
| JP4675324B2 (en) | Haptic presentation device, haptic presentation method, and haptic presentation program | |
| Marshall et al. | Gesture control of sound spatialization for live musical performance | |
| Winkler | Creating interactive dance with the very nervous system | |
| JP4953085B2 (en) | Sound data generating apparatus and program | |
| JP5051838B2 (en) | Sound data generating apparatus and program | |
| JP5277816B2 (en) | Electronic music apparatus and program | |
| JP4858777B2 (en) | Sound data generating apparatus and program | |
| JP4736094B2 (en) | Sound data generating apparatus and program | |
| JP5099335B2 (en) | Sound data generating apparatus and program | |
| JP2009103931A (en) | Sound data generating apparatus and program | |
| KR102885268B1 (en) | Method and apparatus for genarating automatically drum play motion of robot | |
| JP4953084B2 (en) | Sound data generating apparatus and program | |
| JP5011563B2 (en) | Sound data generating apparatus and program | |
| JP5267905B2 (en) | Sound data generating apparatus and program | |
| CN102651212B (en) | Playing device and electronic musical instrument | |
| JP2009103933A (en) | Sound data generating apparatus and program | |
| Gadd et al. | Metamuse: a novel control metaphor for granular synthesis | |
| Bouënard et al. | Advantages and limitations of simulating percussion gestures for sound synthesis | |
| JP2009175525A (en) | Sound data generating device, sound data generating method and program | |
| JP2009175526A (en) | SOUND DATA GENERATION DEVICE, SOUND DATA GENERATION METHOD, AND PROGRAM | |
| Dolhansky et al. | Designing an expressive virtual percussion instrument | |
| Mullan | Driving sound synthesis from a physics engine |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100805 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100809 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120605 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120710 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120720 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150803 Year of fee payment: 3 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |