負荷の軽減は私も関心のある事柄でした。とても些細な点ですが、1つ気になったことを聞いてもいいでしょうか。
理屈で考えると多分こんな感じ(↓)になると思うので順番には概ね納得いくのですが、3と4に明確な差は確認できましたか。
- ラベルループ+ウェイトなし:1フレーム毎10000回フラッシュを実行
- 繰り返し処理+ウェイトなし:1フレーム毎5000回フラッシュを実行(フラッシュと:以上繰り返しで2ステップ)
- ラベルループ+ウェイト0.0秒あり:1フレーム毎1回フラッシュを実行
- 繰り返し処理+ウェイト0.0秒あり:1フレーム毎1回フラッシュを実行
- 単にウェイトなし:1フレーム毎1回フラッシュを実行
- 単にウェイト0.0秒あり:2フレーム毎1回フラッシュを実行(ウェイトとイベント実行内容終端で2フレーム)
同じループ構造ならラベルが若干負荷が軽い…という話を聞いたことがありました。(おそらく体感できるほどの差でもないと思う)
3 > 4 ≒ 5 が確認できたのなら、その話が間違っていたのかなと気になりました。
通報 ...
検証としては、キャラクターのフラッシュの代わりに便利変数を1加算する1行を使って、1.~6.の処理を作ったうえで、kuraudさんのCEV258指定変数表示を使って便利変数が増える速度を目視で確認して比較していました。
私が見た限りでは、4.より3.のほうが速く加算が行われていて(速度として1-2割程度の差かと)、
速く加算処理が行われている=一定時間内に行われる反復数が多い=一定時間内により多くの処理をゲームが行う
と解釈して、3.のほうが4.より重たい処理になる、と(安易に)考えてしまいました。
C258を介しての確認なので、本当に3.と4.に明確な差があるとこれで言ってよいのかどうかは自信がないんです。
C258の処理にもウェイト0.0が入っているので、純粋な負荷検証としては不安がありますね。(大雑把な処理負荷が知りたくて、>> 639の確認をやっただけでした)