scratchスクラッチが重い場合の対処

スクラッチ

私共ぱそんこのプログラミング教室でも最近スクラッチが重くなり、子供達の書いたプログラムが動かないことがよくあります。CPUやメモリの負担も大丈夫なのにスクラッチだけが正常に動かなかったり、ブラウザ自体がフリーズしてしまうことがあります。今回はその対応策をご案内します。

1.画像をベクターデータからビットマップに変換する

子供達がスプライトのコスチュームをベクターデータで描写していた場合に消しゴムなどの影響でイラスト自体が重い可能性があります。1つでは問題のないベクターデータでも30個程度のスプライトができた場合かなり重くなる時があります。

ベクターデータの編集で消しゴムを使いすぎると画像データのゴミが増えすぎて重くなる

画像の左下の記述が”ビットマップにへんかん”となっている場合、現在コスチュームがベクターデータであることがわかります。ベクターデータは編集が用意で手足などパーツごとの移動や色変えが可能ですが、ビットマップに変更すると全てのパーツは一つとして扱われるので注意が必要です。
また画質の劣化もあるため綺麗なイラストを使用した場合は適しません。

ビットマップになるとデータは軽くなるが画質は悪くなる

一度ビットマップにへんかんしたデータは比較的にもとのものより軽くなるため、再度ベクターデータに直してもかまいません。が、パーツごとの再編集はできないのでご注意ください。

2.指定している値が大きすぎるまたは小さすぎる

児童に数値を選んでもらっていると指定する値を膨大な数字にしたり、もしくは細かすぎることが多々あります。
一つ一つでは動くのですが、その数が膨大になりプロジェクト自体が重くなります。

上記のような無理な桁のブロックそもそも動かないことが多いですが、ギリギリで動いてしまう桁のブロックだった場合にプロジェクト自体が動かなくなります。
数値の指定の際には適度な数字を入力するように誘導することが適正です。
また、”ずっと”ブロックに含まれる数字が細かい場合にも処理が遅れてしまうことが多々あります。

このブロック自体は正常に機能しますが、細かい数字を永続的に実行させるブロックは全体が重くなる要因となっています。

3.使っていないブロックが稼働し続けている

スクラッチでは上記画像のように稼働しているブロックが黄色の枠で囲まれる機能があります。
実際には非表示になって画面上にはないスプライトでも”ずっとブロック”を使用していた場合使っていないブロックが動き続けてしまっていることがよくあります。
下記のようなブロックを組み終了したスプライトをしっかり終了するようにしましょう。

4.scratchのサーバー側の不具合

非常に稀ではありますが、scratch側のトラブルで新規アカウントが作れなかったり、読み込みなど動作ができない時があります。大体数時間~1日でトラブルは解決されますが、確実に防ぎたい時にはオフライン版のscratchの導入も検討してみましょう!

今回はパソコン起因ではないスクラッチの重くなる動作の解決方法をご案内いたしました^^
今後もどんどん情報を開示していきますので、各SNSのいいねやシェアのご協力をお願いいたします。

5.クローンの削除

子ども達がscratchへの理解を深めよりいい作品を作る際に”クローン”のブロックはとても有用です。
上記のようにクローンを作ると見えない部分まで描写してクローンが残り続けてしまうため、どんどんとプロジェクトの実行が重くなっていってしまいます。

上記のようにクローンを削除するブロックも作ってクローンの上限を制限するなどの対策が有効で

コメント