Blog

Genuino101のセンサーで、画面内の飛行機をぐりぐり動かす

少し前から「Arduinoっていうちっちゃいボード使えば、ロボットとか戦車とかいろんなのが作れるらしい」という感じのふわっとした認識を持っていたのですが、自分でも何か作ってみようかと思い、調べてみました。

するとどうやら、加速度センサーとBluetoothがボードにくっついている「Genuino 101(Arduino 101)」というものがあるとわかりました。はんだごてを持っていない自分でも、これで無線のジャイロセンサを作れるかな、と購入してみました。結果から言うと、有線で動かすところまでは出来ました。

まずは買ったもの。左から、
Genuino 101
ProjectBox for Arduino (ブルーエッジ)(Arduino UNO用ケース)
cheero Canvas(モバイルバッテリー)
です。
IMG_0218

まずはケースを組み立てていきます。
IMG_0219表面の薄皮みたいな茶色い紙を剥がしていきます。結構ぴっちりとくっついてるものもあって、手強いです。IMG_0221

きれいに剥がれました!
IMG_0223

Genuinoを入れて完成〜
裏表とか、ネジ止めに手こずり、ここまでで30分以上はかかってしまった!IMG_0225

パソコンと繋いでみます。無事電源が入って、光りました。IMG_0226

[Unity] Genuino 101 のシリアル通信などを参考にして、Genuinoのジャイロの情報をUnityの飛行機に送ってぐりぐり動かすというところまで出来ました。

これを、無線にしてみたいのですが、なかなかネット上には情報が見つからず、これ以上は進めなくなってしまいました。このままではモバイルバッテリーが無駄になってしまう!

もし無線で動かすことが出来たら、Genuinoボードに飛行機のモデルをくっつけたセンサーにして遊べたら面白いんじゃないかな、とか考えてます。実現できたら、みんなで遊べるものにしたいな〜

flying-image

DojoConに行ってきた

DojoConという、CoderDojoやプログラミング教育に関わる人たちのイベントがありまして、CoderDojo広島のメンターとして参加してきました。

内容

開場は10:00で、CoderDojo広島からは自分含めて5名参加しました。
入り口の受付で名札と手提げかばんをもらって2階にあがると、大人やメンター向けの講演スペースと、子供向けの作業スペースに分かれていました。講演をメインに聞きつつ、合間で子どもたちの様子を見て回りました。写真はtwitterにたくさん上がってます。

じゃんけん大会で本を獲得する我らがCoderDojo広島のチャンピオン
dojoconbook

おなじみScratchの勉強コーナースピードを変えられるミニ四駆IMAG0750

アイロンビーズでつくるドット絵dojoconbeeds

懇親会で出たCoderDojoケーキ!dojoconcake

感想

・各地のチャンピオンの話を聞けたので、自分もチャンピオンやってみたくなった。地元の福岡とか小倉とかでやってみたい。

・やっぱりScratchみたいに画面だけじゃなくて、ロボとか光るものとかあったほうが面白い。光る腕輪とか作ってみたい。

CoderDojo第2回を終えて

先日、CoderDojo広島 第2回にメンターとして参加したので、その感想です。

dojo2

内容

第1回と同様、前半はCode.orgのMincraftで遊んだ後、Scratchで何かを作って遊ぶという流れ。最年少は7歳、最年長は14歳でした。他の詳しい内容は公式サイトに任せます。

自分は第1回と比べて何が変わったかというと、Scratchで作った自分の作品を子どもとメンターにスライドで映して見せました。前に作っていたこれです。

時間内に、CoderDojo広島スタジオへの作品のアップロードまでできた子もいました。これは、その8歳の男の子の作品。スペースを押すことで自キャラが動き、壁を避けていきます。きちんとゲームとして成立しています。ステージの遷移も取り込もうとしてるのが感じられます。

感想

終わった後、メンターチームでもいろいろ意見が出ましたが、個人的に特に思ったこと。

・楽しんでる子は、メンターや他の大人とよく話して吸収している。
・作品作りは、他の人の作品を見て影響しあえると面白くなるはず
・プログラミング方法やScratchを突然見せて、さあ作れ!では手が動きにくい。
・他の作品を見る時間をとったほうが良さそう。
・参加者同士の交流がほぼないので、もっと重視すべきと思う
・具体的には、参加中に気軽に他の人のPCを覗ける雰囲気や、作品紹介時間などを多めに作ること

書いてて気づいたのが、「技術+経験+他者の反応」が揃った時に、作品作りが楽しくなるのではないか。これは自分のゲーム制作の実感としてもそう。

次回の第3回は8/6です。少し司会も任せてもらうという話もでているので、その際はメンターの皆さん、よろしくお願いします。

心惹かれる物理演算の世界

FavorateCodepenCodePenで公開されている作品の中から、物理演算を利用しており、見た目が面白いと思った作品を紹介します。画面サイズが収まりきれないものもあるので、「Run Pen」で起動した後に、右上の「EDIT ON CODEPEN」を押して最大化して下さい。

ねこと毛玉でじゃれあおう

作品名「ねこ vs ウールボール」
マウスを動かした方向にひもが飛び出したウールボールが動き、ねこがじゃれてきます。ねこが触るとウールボールもちゃんとそれに合わせて動きます。

日本はどのくらいコーヒーがお好き?

作品名「マップ+物理+コーヒー」
要最大化。円形の丸がコーヒーの粒子を表していて、カップに溜まっていきます。クリックすると地図上に粒子が移動して、各国のコーヒー消費量がわかります。粒子の色の濃さはコーヒーの品種を表しているようです。

ぐにぐにゼリー?くもの巣?

作品名「物理の学習」
最大化推奨。10個の円が互いにゴムののような糸でつながっており、一つの円をつまんで動かすと、ぐにぐにと他の円もついてきます。獲物のたくさんかかったクモの巣を持ち上げているような感覚になります。

雨降りは癒やし?

作品名「雨の中の少年」
要最大化。細かい粒子一つ一つに物理演算をしていて、雨を再現しています。傘にあたって流れ落ちる様子がとてもリアルに見えます。

感想

いかがでしたか?こうした物理演算を利用した作品の面白さのポイントとしては、

・見る側が作品に介入できる
・現実の動きに近い

などがあると思います。

今回はCodePenという、コード共有サイト内のみの作品を紹介しましたが、ネット上には物理演算を使った作品やゲームはたくさんあります。(スマホゲームなどでは利用していないものが多いです)

Unityの普及により個人でも制作がラクになり、今後増えていくと思います。こうした作品を、絵の展示会のようにして並べてみるのも面白そうです。こんな面白いものがあるよ、など何か情報があればぜひ教えて下さい。

javascriptで物理演算

matter.jsという物理エンジンを利用して、軽量な物理演算が使えるとわかったので、試してみました。

See the Pen octagon by mixsandwich (@Octa-gon) on CodePen.

javascript初挑戦だったのですが、codepenというコード共有サイトも発見したので、なんとか目に見える形にできました。

わからないところ

・canvasサイズの指定。縦横比が決まってる?
・物体のテクスチャをさくらの画像とかに変えて、ふわふわ落ちるようにしたい。
・物体をかき混ぜるスプライトをつくりたい。回転の方法がわからない。

感想

・簡単な物理演算ならUnity使うより軽いし、webページに載せやすい
・作るだけなら、直感的なUnityのほうが使いやすい

レゴ・ハッカソン

プログラミングが可能なレゴがありまして、そのハッカソン(ハッカー + マラソン)に参加してきました。

「レゴ・マインドストーム」というこのレゴは、一式買うと5万円くらいします。自分で買うにはちょっと高い。海外でプログラミングの教育にも取り入れられているということで、気になっていたので体験してみました。

れごIMG_20160716_173411

作成

朝10時に集合して、17時まで作成、最後にお互いの作品で遊ぶ、という流れです。各チームは3人で、それぞれ一作品ずつ作ります。計4チームありましたが、そのうち2チームは、当日集まった個人参加のメンバーでした。

自分たちのチームは、
・工学部の学生
・アイディアソンを自分の会社で経験したことのある社会人
・ハッカソン初参加の自分
の個人で構成されたチーム。

レゴ・マインドストームにはチームメンバーは全員初めて触るので、試行錯誤しながら作ります。僕達のチームは主にセンサーとパソコンによるプログラミングに時間をかけて完成させました。

センサーを目の下の左右につけて、虫の触覚のように、触れたら逃げるようにプログラミングしました。おしりに光センサーをつけて、強い光を当てると起動するようにしています。後付ですが、「もぐら」ということで完成させました。歩き方は、左右のタイヤを交互に「小刻み」「大きめ」でランダムに起こるようにしています。コントロールはできませんが、後退して回転するので、自律してあちこちをずっと動き続けてくれます。ちょこまか寄ってきてくれる動きがけっこう可愛かったです。

他のチームは、レゴ自体の組み立てによる機構の作成に時間をかけ、スマホでコントロール出来るようにしていました。

遊ぶ

最初は各自個別に工夫点などを見て回っていたのですが、自然とバトルが始まりました。他のチームは、フォークリフト型や銃を撃つ機構があるのに対し、僕達の「もぐら」は逃げるだけです。でも、攻防のバランスが絶妙で、盛り上がりました。

感想

普段画面内でプログラミングだけしているので、実際にモノが動くというのは楽しかったです。教育向け、ということですが、一つの作品として仕上げるのは中々大変です。組み立てながら同時にプログラミングを考えるのは難しいですが、良い経験になります。どちらかというと、やはりレゴの構造の作成に時間がかかります。プログラミングを主題におきたいときは、何かロボットのようなものをあらかじめ用意しておいて、動きの改造などから始めたほうが良さそうです。

CoderDojoに参加しました

昨日、CoderDojo広島が開催され、メンターとして参加してきました。

coderdojo

どんな内容?

CoderDojoとは、小学生から高校生を対象としたプログラミング交流会のようなものです。メンターとは、その講師、運営者的な意味です。ボランティアでやってます。

10組の親子に参加していただき、メンターもほぼ1:1くらいでついて、約2時間かけて簡単なゲームづくりなどをしました。最初にCodoStudioのMineCraftを使って、プログラミングの概念を知ってもらい、後半はScratchでオリジナル要素も取り入れながら作っていきました。

子どもたちは休憩もなしに集中して楽しんでいました。CoderDojoがプログラミング教室と違うのは、こちらからやることを決めず、提案のみだけにしているところです。

ある小5の子は以前からScratchをやっていて、自由な雰囲気をとても気に入っていました。彼が製作中の作品がこちら。

ゲームセンターのクレーンゲームを模した作品で、昨日のCoderDojoの時間では、景品のねこの色や、クレーンの動きを改良し、みんなの前で発表してくれました。

感想

年齢や技術レベルがばらばらなので、技術レベルごとに班わけしてもよい
子供同士の交流がなかったので、親は遠くで見守る方式でも良い
デキる子はUnityなどに誘導したい

NATTOU SHOOTER 久々のランキング入り

主にニコニコ動画からこのサイトを見に来てくれる方に向けて書きます。

科学タグ 久々のランキング入り

先日NATTOU SHOOTERの動画が久しぶりにランキングに入っていたので、なぜだろうと思っていたら、広告してくれた方がいたようです。ありがとうございます。

スクリーンショット 2016-06-19 9.13.02

6月の中旬に大きなピークができています。広告の効果とはどれほどのものかと疑問に思っていたのですが、こうして実際にグラフに現れたのを見て、なかなかの影響力があるのだと感じました。「なぜ上がった」タグがついていましたが、広告のおかげだと思います。

最近のNATTOU SHOOTERについて

制限時間を30秒→45秒に変更していたり、NHK WORLDさんの自作ゲーム特集(May 31st (Tue)[Main theme: Indie Games Special])で紹介していただいたりしました。日本の自作ゲーム特集で、面白いのでぜひ見てみて下さい。

Scratch(スクラッチ)でゲーム作り

Scratchという教育向けプログラミングツールがありまして、これを使って試しにミニゲームを作ってみました。賛否あると思いますが、Unityとの比較も含めて、自分の感じたことを書いてみます。知らないことも多いので、何かあれば教えて下さい

Scratchの良いと思った点

英語がわからなくても日本語だけで使える
見た目がカラフルなので視覚的にわかりやすい
作品を公開するのがラク
他の人の作品を改造する機能(リミックス)がすぐに使える

Scratchの使いにくいと思った点

わかりやすさを優先しているので、機能が絞られている
シーン遷移の機能がないので、スタート画面、メニュー画面などが作りにくい
他の人の作品のスクリプトのコピペができない
(あくまで作品一つまるごとをリミックスする機能だけ)
完成した作品は、あくまでScratch内の閉じられた環境でしか動かない
(このブログのように、公開はできる)

全体的な感想

今回作ったアイスクリームゲーム程度でも、ScratchよりはUnityを使ったほうがラクだと思いました。

ユーザーどうしで作品を発表しあう場がすぐにできるので、刺激になって面白いと思います。ただし、オフライン環境だとそういった面白さが半減しそうです。

教育的なこととして考えると、プログラミングの導入としてはわかりやすさ重視で良いと思いますが、やはり機能は絞られています。ある程度できるようになったら早めに卒業して他の言語に挑戦すべきだとは思います。もし挑戦したいという卒業生が出てきたら、それがScratchとしての一つの成功かな。