再度es_setで停止、es_adirで速度を0にする、移動する、
で処理速度に違いがあるのかを計測してみました。
結果どれも大体同じ数値になりましたので、スプライトは動こうと動くまいと処理速度に違いはないようですね。
#include "hsp3dish.as"
es_ini 10000,100,360
buffer 2
es_size 32,32
es_pat 0,0,0,0,2
gsel 0
repeat 10000
es_set cnt,320,240,0 ;スプライトを1万個セット
es_adir cnt,rnd(360),rnd(50)+10 ;スプライトをランダム方向にランダムな速度移動
loop
;①移動設定を移動速度0に書き換え。
; repeat 10000
; es_adir cnt,rnd(360),0 ;速度を0に再設定
; loop
;②スプライトを再セットし移動情報をリセット
; repeat 10000
; es_set cnt,320,240,0 ;スプライトをセットしなおし、移動設定をリセットする
; loop
タイマー=gettime(7)+gettime(6)*1000
repeat 300 ;秒間60フレームを5秒間スプライトを表示
redraw 0
boxf:es_draw
await 1000/60
redraw 1
loop
redraw 0
boxf:es_draw
color 255,0,0
pos 0,0:mes (gettime(7)+gettime(6)*1000)-タイマー
redraw 1
stop