加速度センサーを使い、「人の動きと連動して動作するUWPアプリ」を作るラズパイ3&Toradex、Windows 10 IoT Coreで楽しみながら検証するIoT実践入門(4)(3/3 ページ)

» 2016年06月16日 05時00分 公開
[薬師寺国安PROJECT KySS]
前のページへ 1|2|3       

「TextScript.cs」のコードを記述する

 続いて、同様に「TextScript.cs」のコードも記述する(リスト2)。

using UnityEngine;
using System.Collections;
/*uGUIのTextを使用するため、UnityEngine.UI名前空間を読み込んでおく*/
using UnityEngine.UI;
public class TextScript : MonoBehaviour
{
   /*Text型の変数uTextを宣言しておく*/
    Text uText;
  /*Start()メソッド内で、Textコンポーネントを取得して変数uTextで参照しておく*/
   void Start()
    {
        uText = GetComponent<Text>();
    }
   /*Update()メソッド内では、Unity5.3で配置したText内に、加速度センサーのX、Y、Zの値を
*リアルタイムに表示する
*/
    void Update()
    {
        uText.text = "X=" + AccelerometerScrpt.xValue + "  Y=" + AccelerometerScrpt.yValue + "  Z=" + AccelerometerScrpt.zValue;
    }
}
リスト2 修正した「TextScript.cs」の中身

 修正箇所は以下の通りだ。

photo
photo
photo

 リスト1とリスト2は、少々難解なコードだと感じるかもしれないが、Unity 5.3と絡んでいる箇所は別途画像で抜粋した部分だけだ。ここでは、サンプルコードを活用して、どのようにUnity 5.3のコードと関連付ければいいかを理解していただければと思う。

 ちなみにこういったコードの記述には、センサーを紹介している情報ページに「データシート」と呼ばれる情報があるので、それを参照しながらアドレスを指定していくのがコツだ。1つ1つを読み解くのはかなり難しいと思うが、ぜひ挑戦していただきたい。

IoTデバイスに配置し、動作チェックを行う

 作成したUWPアプリを、Raspberry Pi 3とToradexに配置して動作させてみた様子は以下の通りだ。ブレッドボードを傾ける動作と連動し、画面の“Cube”がどう動くかを見てほしい。

Raspberry Pi 3へ配置した加速度センサー連動アプリの様子
Toradexへ配置した加速度センサー連動アプリの様子

 Toradexでのスムーズさはこれまで通りだが、グラフィックス性能がToradexより劣るRaspberry Pi 3でも、この程度の3Dグラフィックスならば普通に動作するようだ。

まとめ

 今回は、加速度センサー、Unity 5.3のプロジェクトとUWPアプリを組み合わせた基本活用例を紹介した。加速度センサーの値を取得して、UWPアプリに反映するくらいならば、Raspberry Pi 3もそこそこ快適に動作することが分かった。

 次回は、「温度センサー」を使って、温度が一定以上になったら画面が変化するUWPアプリを作成する方法を解説する。お楽しみに。

参考書籍

筆者紹介

薬師寺 国安(やくしじ くにやす) / 薬師寺国安事務所

薬師寺国安事務所代表。Visual Basicプログラミングと、マイクロソフト系の技術をテーマとした、書籍や記事の執筆を行う。1950年生まれ。事務系のサラリーマンだった40歳から趣味でプログラミングを始め、1996年より独学でActiveXに取り組む。1997年に薬師寺聖とコラボレーション・ユニット「PROJECT KySS」を結成。2003年よりフリーになり、PROJECT KySSの活動に本格的に参加。.NETやRIAに関する書籍や記事を多数執筆する傍ら、受託案件のプログラミングも手掛ける。Windows Phoneアプリ開発を経て、現在はWindowsストアアプリを多数公開中。


Microsoft MVP for Development Platforms - Client App Dev (Oct 2003-Sep 2012)

Microsoft MVP for Development Platforms - Windows Phone Development(Oct 2012-Sep 2013)

Microsoft MVP for Development Platforms - Client Development(Oct 2013-Sep 2014)

Microsoft MVP for Development Platforms-Windows Platform Development(Oct 2014-Sep 2015)


前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。