llPreloadSound
llPreloadSound(string sound)
引数soundで指定されたサウンドをプレロード(再生準備)する。
あくまでもサウンドを準備するだけであって再生は行われない。
サウンドがオブジェクトコンテンツ内にあれば引数soundは名前を使って指定可能。
コンテンツにないならUUIDを指定する。
あくまでもサウンドを準備するだけであって再生は行われない。
サウンドがオブジェクトコンテンツ内にあれば引数soundは名前を使って指定可能。
コンテンツにないならUUIDを指定する。
この関数の実行には1秒かかる。
詳細な仕組みは知らないが、SLにおいてサウンドを耳にする場合、クライアントはサウンドデータをダウンロードしてくることになる。
これは裏方作業なので、ユーザーが通常意識することはない。
一つのサウンドが10秒までに制限されているのは、クライアントがサウンドをダウンロードする際の時間が比較的短時間で済むという理由もあるだろう。
これは裏方作業なので、ユーザーが通常意識することはない。
一つのサウンドが10秒までに制限されているのは、クライアントがサウンドをダウンロードする際の時間が比較的短時間で済むという理由もあるだろう。
しかしながら、10秒に制限されているとは言ってもサウンドデータは決して軽量なデータではない。
ネットワーク状況によってはサウンドのロードが遅延する可能性も十分にある。
LSLからサウンドを再生した場合、クライアントが即座にダウンロードを完了できれば良いが、ダウンロードが遅延した場合、当然サウンドの再生も即座には行われない。
初めて目にするジェスチャーで、アニメーションは見えているのにサウンドだけ後から聞こえてきた、なんていう経験は珍しいことではない。
ネットワーク状況によってはサウンドのロードが遅延する可能性も十分にある。
LSLからサウンドを再生した場合、クライアントが即座にダウンロードを完了できれば良いが、ダウンロードが遅延した場合、当然サウンドの再生も即座には行われない。
初めて目にするジェスチャーで、アニメーションは見えているのにサウンドだけ後から聞こえてきた、なんていう経験は珍しいことではない。
llPreloadSound関数はこうしたサウンドダウンロードの遅延を回避するために利用される。
サウンドを再生する前に、あらかじめこの関数を実行し、クライアントにサウンドデータを事前にロードさせる。
サウンドを再生する前に、あらかじめこの関数を実行し、クライアントにサウンドデータを事前にロードさせる。
もちろん、llPreloadSound関数を使ってプレロードしたからと言って、絶対にサウンド再生の遅延がなくなるわけではない。
プレロード自体が遅延していたら、再生までにダウンロードが終わっていないこともあるだろう。
プレロード自体が遅延していたら、再生までにダウンロードが終わっていないこともあるだろう。
実際にサウンドを再生するにはllPlaySoundやllLoopSoundなどの関数を使用する。