Scratchプログラミング言語

水族館モデル

(Scratch,複数スプライト,水族館モデル,並行処理)

最近のパソコンは,CPUの高速化により複数の仕事を並行処理しても,一昔前の様にモタモタすることは少なくなった.Scratchプログラミングでは,そのメリットを活用して,複数のスプライトのスクリプトを並行して動かしてもスムースな画像の動きを実現している.今回は,並行処理のテストのため,水族館モデルをプログラミングしてみた.

以下の6個のプログラムを準備し,すべて「緑の旗」がクリックされたら起動するようにしておくと,それぞれが一斉に動き始める.

背景は水泡の様子の異なる4種の背景を準備し順番に表示させている.泡の上昇する様子をもっとリアルにするには,さらに多くの背景画像を用意すればよい.

熱帯魚はフリー画像を使用したが,長方形のため,背景作成画面にアップロードすると,魚を含む長方形(魚以外は白色)のスプライトになってしまう.それを避けるためには.予め輪郭抽出して周囲の空白部分は透過型の画像にしておく必要がある.Graphic converter, Photoshop, GIMP等のアプリで容易に処理可能である.

なお,Scratchの画像編集画面上でも透明化することはできるが,かなり根気が要る仕事である(色一覧右上端,「四角に赤/」を選択し,塗りつぶし操作を繰り返す).

実行画面を収録した動画(小画面用)

背景の変化も含めると5個のスプライトプログラムが並行して処理されているが,動きはスムースである.

suizokukanPart1&2.m4v

スプライトは,ライブラリーの図を利用する以外に,イラスト,写真等の画像データ,さらにはカメラから取り込んで作ることもできる.

次の動画は魚の写真を取り込んだ例である.黒系の魚は周囲を透明にするため,輪郭周辺を塗りつぶしたが一部白い部分が残っている.

FishPhoto.m4v

Scratch3に於ける実行

バージョンアップによる変更は画面表示のみである.実行フレームが右側に移動.ブロック色も変化なし.

Scratch3

Scratch2

参考データ

使用したパソコンは市販の標準機である.

ハードウェアの概要:

 機種名:    Mac mini 2012(後期)

 プロセッサ名:    Intel Core i5

 プロセッサ速度:    2.5 GHz

 メモリ:    16 GB

システムのバージョン:    OS X 10.11.6 (15G31)