新しい記事はこちらです.
(Scratch,複数スプライト,水族館モデル,並行処理)
最近のパソコンは,CPUの高速化により複数の仕事を並行処理しても,一昔前の様にモタモタすることは少なくなった.Scratchプログラミングでは,そのメリットを活用して,複数のスプライトのスクリプトを並行して動かしてもスムースな画像の動きを実現している.今回は,並行処理のテストのため,水族館モデルをプログラミングしてみた.
以下の6個のプログラムを準備し,すべて「緑の旗」がクリックされたら起動するようにしておくと,それぞれが一斉に動き始める.
背景は水泡の様子の異なる4種の背景を準備し順番に表示させている.泡の上昇する様子をもっとリアルにするには,さらに多くの背景画像を用意すればよい.
熱帯魚はフリー画像を使用したが,長方形のため,背景作成画面にアップロードすると,魚を含む長方形(魚以外は白色)のスプライトになってしまう.それを避けるためには.予め輪郭抽出して周囲の空白部分は透過型の画像にしておく必要がある.Graphic converter, Photoshop, GIMP等のアプリで容易に処理可能である.
なお,Scratchの画像編集画面上でも透明化することはできるが,かなり根気が要る仕事である(色一覧右上端,「四角に赤/」を選択し,塗りつぶし操作を繰り返す).
ネコを隠す
魚1
魚2
たこ
魚3 たこを追いかける熱帯魚
背景
実行画面を収録した動画(小画面用)
背景の変化も含めると5個のスプライトプログラムが並行して処理されているが,動きはスムースである.
動画が表示されない場合は新Googleサイト版をご覧下さい.
スプライトは,ライブラリーの図を利用する以外に,イラスト,写真等の画像データ,さらにはカメラから取り込んで作ることもできる.
次の動画は魚の写真を取り込んだ例である.黒系の魚は周囲を透明にするため,輪郭周辺を塗りつぶしたが一部白い部分が残っている.
参考データ
使用したパソコンは市販の標準機である.
ハードウェアの概要:
機種名: Mac mini
機種 ID: Macmini6,1
プロセッサ名: Intel Core i5
プロセッサ速度: 2.5 GHz
プロセッサの個数: 1
コアの総数: 2
二次キャッシュ(コア単位): 256 KB
三次キャッシュ: 3 MB
メモリ: 16 GB
ブート ROM のバージョン: MM61.0106.B0A
SMC バージョン(システム): 2.7f1
システムのバージョン: OS X 10.11.6 (15G31)
グラフィックス
チップセットのモデル: Intel HD Graphics 4000
VRAM(ダイナミック、最大): 1536 MB