続いて、同様に「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; } }
修正箇所は以下の通りだ。
リスト1とリスト2は、少々難解なコードだと感じるかもしれないが、Unity 5.3と絡んでいる箇所は別途画像で抜粋した部分だけだ。ここでは、サンプルコードを活用して、どのようにUnity 5.3のコードと関連付ければいいかを理解していただければと思う。
ちなみにこういったコードの記述には、センサーを紹介している情報ページに「データシート」と呼ばれる情報があるので、それを参照しながらアドレスを指定していくのがコツだ。1つ1つを読み解くのはかなり難しいと思うが、ぜひ挑戦していただきたい。
作成したUWPアプリを、Raspberry Pi 3とToradexに配置して動作させてみた様子は以下の通りだ。ブレッドボードを傾ける動作と連動し、画面の“Cube”がどう動くかを見てほしい。
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)
Copyright © ITmedia, Inc. All Rights Reserved.