teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2017/12/07 06:59

投稿

KSwordOfHaste
KSwordOfHaste

スコア18404

answer CHANGED
@@ -8,4 +8,8 @@
8
8
 
9
9
  です。BehaviorのUpdateメソッドが呼び出されるタイミングは質問者さんもお気づきのようにかなり変動があるようですが100msec程度の間隔では起動されると仮定すると1分間に600回程度の頻度、すなわちテンポが120だとすると四部音符あたり5回程度は起動してもらえると期待できるので、最小の音価(音の長さ)が八分音符程度なら「発音時刻より200msec前ぐらいまで近づいたらスケジュールする」と考えればなんとか間に合いそうに思います。
10
10
 
11
- (ただしタイミング的にはかなりギリギリなのでテンポがもっと速くなったり、トレモロのような表現を狙おうとすると、BehaviorのUpdateのタイミングを頼りにしていたのでは間に合いそうもありませんね・・・)
11
+ (ただしタイミング的にはかなりギリギリなのでテンポがもっと速くなったり、トレモロのような表現を狙おうとすると、BehaviorのUpdateのタイミングを頼りにしていたのでは間に合いそうもありませんね・・・)
12
+
13
+ ---
14
+ 追記:本件自分もやってみました。
15
+ 上に書いたのは2つのAudioSourceに同一clipを設定して交互に使う方法ですが、1つのみでやってみたところ、PlayScheduledで次の音をスケジュールする際に「プツッ」という雑音が入ってしまいました。PlayScheduledの直前にvolumeを0にしてみましたがこのタイミングでそうやっても雑音は入るようでした。2つのAudioSourceを用い、PlayScheduledの際に現在発音中のAudioSourceの方のvolumeを0にして消音すると雑音は聞こえなくなりました。こういう点でも最小限2つのAudioSourceを使った方がよいのかも知れません。