プログラム最適化Tips!!!
ここではプロゼミで作品(特にゲーム)を作る時に少しでも処理を軽くしたい!って思った人のために各々が見つけた最適化技術を書く場所です。なにかあったらじゃんじゃん書いてください。
繰り返し、条件分岐などの処理 (オレンジブロック)に関すること
条件分岐「もし〜ならば」にいれるブロックの話
プロゼミ側での最適化が薄いので、〜にいれる条件のブロックはなるべく少ないほうが良いです。それこそブロック/くりかえしと条件の基礎で述べられているような方法(例えば「へんすう が0でない」という条件は「へんすう」だけでいいなど)
くりかえし「〜ならくりかえす」などのブロックの話
「〜ならくりかえす」の処理自体が重いのかそこにいれる条件(例えば「へんすう は10より大きい?」)を処理するのが重いのかはわかりませんが、「〜回くりかえす」ブロックのほうがだいぶ速いのを確認しました。
これらは例えば自動で横に進むランゲームを作っている時、「画面から消えたになるまでくりかえす」より何回繰り返せばいいかあらかじめ計算しておいてその回数分くりかえすのほうが処理が軽いということです。
移動・スケール (黄色ブロック)に関すること
単純な横移動
ただ横移動させたい時や縦移動させたい時、「たてのいち」、「よこのいち」に足していくよりも向きを設定して「〜すすむ」の方が若干速かったです。(使えるかわかりません)(*1)
ステルスモード
多分いろんな処理においてステルスモードは軽量化につながるので、「ぶつかった」ブロックを使わないキャラは全てステルスモードにすべき(「ぶつかった」を使っているキャラとなるべく同期させたいなどの特殊ケースは除く)
メッセージ・イベント (ピンクブロック)に関すること
「メッセージをおくる」のパフォーマンス
同一キャラに送るだけなら「 キャラ にメッセージをおくる」より「ぜんいんにメッセージをおくる」ブロックのほうが若干パフォーマンスがいいです。
コメント
- 当たり前かもだけど大量に出すキャラのプログラムはなるべく少ない方が軽い -- 名無しさん (2026-03-22 10:29:02)
