この記事は、2021年の GWアドベントカレンダー 5/6の分の記事です。
はじめに
今回の記事の内容は、2021年5月4日に toio の非公式ユーザコミュニティで開催したもくもく会に参加して、以下の 2つの話を見聞きしたことがきかっけとなり、イベント後にふと思いついた「toio を捕まえるゲーム」の話です。
- 【聞いた内容 2つ】
- 簡易マットの上に簡易カードを置いて、簡易カードに触れたら特定の地点にたどり着いたことを判定をする仕組み
- クリアケースで簡易マットを挟み込んで保護
出来上がった内容(動かしている様子)は、以下のとおりです。
仕組み・プログラムの概要
今回 toio本体以外に利用しているのは、以下のものです。
・toio専用の簡易マット
・toio専用の簡易カード (+ 持ち手になる細長い何か)
・クリアファイル
toio専用の簡易カードに、持ち手になる細長い紙をテープで貼り付けたものを作り、それを手持ちで動かしています。上にのせた動画の画面外では、このようになっています。
また、toio専用の簡易マットはクリアファイルで挟み込んでおり、簡易マットとクリアファイルの間に持ち手をつけた専用カードを差し込んでいます。
なお、今回は自宅にあるクリアファイルの最大サイズが A4サイズだったため、簡易マットの半分だけを挟み込む形にして、挟み込んだ半分のエリアのみを toio を動作させる範囲として使っています。
ちなみに以下の記事に書いているのですが、toio と組み合わせて使われた実績がある A3サイズのクリアケースが 2種類、冒頭で書いたもくもく会の中で紹介されていました。
●#toio に関するノウハウのメモと余談(2021/5/4開催のもくもく会でのメモ)【 #GWアドベントカレンダー 2021/5/5 】 - 技術とエンタメと、その他・・・
https://yo-to.hatenablog.com/entry/20210504/1620111222
そして、この仕組みのプログラムの部分は toio Do を使ったビジュアルプログラミングです。全部で 11個のブロックで構成されています。
プログラムの補足
上で掲載したプログラムの内容について、少し補足します。
プログラムは処理的には大きく 2つの固まりに分かれます。
固まりの 1つ目は、簡易マットの上で toio を動きまわらせる処理に関わる部分です。
この処理は、toio がマットに触れたことをトリガーに、その後 toio がマットに触れている状態である間はずっと実行されます。実行される処理は、特定の絶対位置座標に移動をする処理で、座標は移動を行うごとに乱数で設定されます。
記事の上のほうで書いた通り、今回用いたクリアファイルのサイズの関係で簡易マットの半分のエリアのみを使って動かしているため、乱数で生成する x座標と y座標はその半分のエリア内におさまるように上限と下限を決めています。
固まりの 2つ目は、toio が簡易カードの上に来た時に実行される処理です。ゲームの内容的には toio が捕まった時の処理ということになります。
今回使った簡易カードは「%」に該当するものであるため、ここでの処理のトリガーは「% に触れたとき」としています。別の簡易カードを用いた場合は、この部分をその簡易カードの内容に合わせて変更してください。
そして、ここで行う処理は「音声合成で "捕まっちゃった" としゃべる」・「toio の動きを止める」という 2つです。これらを同時に並列で動かすために、「% に触れたとき」を 2つ並べた下に 2つの処理をそれぞれ配置しています。