micro:bit – 映画「マトリックス」のアレ

今日もmicro:bitを使ってどんなことが出来るかをご紹介します。

まずは動画を見てください。
大げさな前半部分はともかく…(^-^;)
上から下にキラキラ流れる、映画マトリックスの映像効果に使われていたアレです。
やりたいこと
  • 上から下にLEDの雨を降らせる。
  • 雨はランダムに降る。
  • 雨には軌跡をつけて、徐々に暗くなるようにする。
micro:bitで使う機能
LEDの点灯、消灯、明るさの設定
配列
四則演算
乱数
これだけです。
LEDの雨の考え方
いっぺんに作り方を考えるとなかなか難しいので、一番左端の縦の1列だけを考えてみます。
配列S1Arrayを作って、左端の縦の5個ぶんのLEDの明るさを示す値を入れていきます。
LEDの明るさは0(消灯)から255(全点灯)の間の値になります。
乱数を使って、明るさを0、130、255の3種類からランダムに選びます。
それをこの配列に入れたいのですが、配列の長さはLEDの個数(5個)と同じに保ちたいので、こんな方法を考えます。
1. 配列の5個目の値を削除。(この時、配列の長さは一時的に4になります。)
2. 配列の一番最初に新しい明るさの値を挿入します。(下の図では、新しい値として255を入れました。)
3. 挿入したので、以前一番最初の位置にあった値は自動的に配列の2番目に移動します。
これを何度も繰り返していきます。
下の図で、255が下の方に移動していっているのがわかると思います。
次に配列の一番最初に新しい明るさを入れるときには、ひとつ前の明るさを調べて、その半分の明るさにします。
こうしていくことで、雨の粒が下の方向に移動しながら軌跡を描くことができます。
文章で書くとちょっと長くなりますね(^-^;)

micro:bitの機能を網羅的に解説し、すぐに使える応用例を一緒に作りながら覚えていただける講座です。

小学校の先生に限らず、ぜひご参加くださいませ。

STEAM Tokyoでは、学生のための次世代プログラミング教育を行っています。

近々、体験会を開催予定です。

体験会の詳細は追ってこのブログで告知させていただきます。

Follow me on Twitter