Unity×電子工作を始めたい人へ!知っておくと役立つスキルや心構えを、ファブテラスいわての川田将宏さんに教わりました
Unityでゲームが作れるようになってきたら、次に“Arduino”の扱い方を覚えてみませんか?
Arduinoとは、「もっとシンプルに、もっと安価に、技術者でない学生でもデジタルなものを作ることができるようにする」という目的で作られた、手の平サイズのマイコンボードです。オープンソースの機器であり、誰にでも自由に使えます。LEDを繋いで光らせたり、モーターを動かしたり、あるいはロボットのように複雑な機械を制御したりすることも可能です。
UnityとArduinoを接続することで、現実世界とゲーム内の空間をリンクさせることもできます。たとえば、Unityで「ボールを転がすゲーム」を制作したとき、市販品の十字キーコントローラーではなく、Arduinoを使って「コントローラーになる土台」をオリジナルで作るといったことが可能です。UnityとArduinoを用いた電子工作の組み合わせで、新しいゲーム体験もデザインできるのです!
ウェブ上にも参考例はありますが、「UnityとArduinoで簡単なゲームを作成してみた」という記事では、岩手県立大学ソフトウェア情報学部4年生の川田将宏さんが、ゲーム開発の方法を詳しく書いてくれています。
川田さんは特定非営利活動法人IRCプロジェクトの役員としてファブラボの「ファブテラスいわて」をはじめとした事業にも携わり、ものづくりをしたい人へのサポートなども行っています。工業高校の電子情報科で学んでいた頃から、UnityやAruduinoを使った電子工作にのめり込んでいたのだとか。
そこで川田さんに、UnityとArduinoを組み合わせることで、どのようなことが実現できるのか、挑戦する前に身につけておけるといいスキルや心構えは何かなどを教えてもらいました。
UnityとArduinoで「新しいゲームの楽しみ方」を生み出せる
──川田さんが執筆した記事、たいへん興味深く読ませていただきました。そもそも、電子工作を始めるにあたってArduinoが勧められる理由から教えてください。
川田:まず、電子工作の魅力は「やりたい」「つくりたい」という想像を実現できることだと考えています。アイデア次第でさまざまな形が生まれ、試行錯誤を繰り返して興味が尽きないところに魅力を感じています。
そして、Arduinoは初心者でも簡単に扱えるので、電子工作の入門にぴったりだと思います。ハードウェアとしては電子部品に詳しくなくても最低限の部品が揃えられる「スターターキット」がありますし、ソフトウェアとしてはプログラムの知識が乏しくても動かせるサンプルプログラムが開発環境の「Arduino IDE」に用意されています。
これらを組み合わせれば、始めるにあたって感じやすい心理的なハードルも低くなるはずです。
──そこにUnityを組み合わせることで、どのような楽しみ方が広がるのでしょうか。
川田:「新しいゲームの楽しみ方」を生み出せると思うんです。たとえば、一般的なゲームは、ゲームパッドやキーボード、マウスなど既製品を利用して操作しますが、Arduinoを使えば新しいコントローラーからつくることもできます。
参考:YouTubeにはレーシングゲームやシューティングゲームのコントローラーを自作した動画も公開されている
また、湿度や温度などのセンサーを利用すれば、現実世界の天候を、ゲーム世界の環境に影響させることも可能です。他にも様々な入力デバイスを組み合わせれば、つくれるゲームの幅が広がります。
制作を始める前に、最低限身につけておくべきスキルとは?
──川田さんの記事を見ながらゲーム制作を始める前に、「最低限身につけておきたい」というスキルはありますか?
川田: 基本的なプログラミングの知識と、Unityの操作を身につけておくと制作が楽になりますね。また、電子回路の基礎知識やArduinoの「ピン」の役割にまつわる知識などを身につけていれば、電子部品やArduinoを壊すことなく安全に作業できると思います。
プログラミングでいえば、Arduinoの言語はC/C++をベースにしています。とはいえ、プログラミングの勉強から始めると挫折しやすいので、最初はインターネット上にあるソースコードなどをコピー&ペーストして使う形で構いません。ただ、よく使う制御文であるif、for、whileなどは少しでも勉強しておくと、より理解が深まると思います。
また「UnityとArduinoで簡単なゲームを作成してみた」でも触れられているようArduinoには「ピン」と呼ばれる、外部装置と繋いでデータを入出力する端子があります。Arduinoには14本の「デジタルピン」と、6本の「アナログピン」がありますが、記事内ではより繊細なデータを入出力できるアナログピンを使用しています。たとえば、加速度センサーをアナログピンに装着することで、傾き度合いをより細かく捉えて画面に反映させられます。
そのほかにもArduinoには、パソコンと通信するためのUSB接続ポートがあり、パソコンで作成したプログラムを書き込んだり、USBを介した給電にも使われます。Arduinoの各パーツに対する簡単な役割を覚えておくことで、スムーズに電子工作を進められるでしょう。
──その他に、初心者がつまずきやすいポイントなどはありますか?
川田:電子部品の役割を理解していないことでつまずく人がやはり多いですね。ArduinoとPCの接続は特につまずきやすいポイントです。参考書を読んで事前に知識を身につけたり、シリアルポートの設定を確認したりすることで対処できます。
オススメの参考書を挙げるなら、初心者向けには福田和宏さんの『これ1冊でできる!Arduinoではじめる電子工作 超入門 改訂第4版』(ソーテック社)、より実践的なことを学びたいなら平原真さんの『実践Arduino! 電子工作でアイデアを形にしよう』(オーム社)がいいでしょう。
ただし、きちんと準備することと同じくらいに、「とりあえずやってみる」ことも重要だと思うんです。まずは参考書を見ながら実践してみて、電子工作の楽しさを感じ取ってほしいですね。スターターキットで最低限の電子部品を揃えて、あとはハンダごてやニッパーといった工具を用意して、ぜひ手を動かしてみてください。
──スターターキットはどれを選ぶとよいでしょうか?Arduinoにはいくつかのモデルがあるため、初心者はそこでも迷いがちなのかと思っています。
一般的によく扱われる「Arduino Uno R3」を含むキットですね。Arduino公式のスターターキット(公式サイト/Amazon)もありますし、廉価に提供されている互換機を用いたキットもあります。たとえば、「ELEGOO UNO R3 SUPER STARTER KIT」(公式サイト/Amazon)がそうです。
ファブリケーションできる「場所」を中心に、メイカーを集める
──こうしたものづくりの機材が揃っているのがファブテラス岩手なんですよね。具体的にはどのような活動を行っているのでしょうか?
川田:ファブテラスいわては、3Dプリンタやレーザー加工機、デジタル刺繍ミシンなどの機器を、無料で利用できるデジタルものづくりスペースです。
ファブテラスいわてでは、毎月「ミニワークショプ」の実施や、岩手県内のメイカームーブメントの推進を図る「メイカー塾」の実施、岩手県内で工作体験や作品展示を行うイベント「ファブホリデイ」を実施しています。また毎年、県内外からメイカーを集める「いわてメイカー展」も開催しています。
──川田さんも「いわてメイカー展」に出展されているんですよね。
川田:はい。ファブテラスいわてで教える傍ら、私個人としてもゲーム制作者として出展しています。いまはUnityとArduinoを使った謎解きゲームを構想していて、様々なスイッチやボタンを用いて、単にコントローラーを操作するだけではなく、触って楽しめるゲームを考えています。
制作したゲームは、公開後に「UnityとArduinoで簡単なゲームを作成してみた」の記事にもURLを追記していきます。ファブテラスいわてでも直接体験できるようにするので、興味がある方はぜひお越しください!
──最後に、電子工作に挑戦する人たちへ、エールをください。
川田:繰り返しになりますが、まずはやってみることが重要だと思います。スターターキットを購入すればわかりやすいチュートリアルもついており、参考書も数多くあります。手を動かすことが難しい人は、まずは作業をしている人の動画を見たり、作品について調べて興味を深めたりすることから始めてもいいでしょう。ぜひ、この世界に足を踏み入れてみてください。