センサーの値をパソコンに取り込むのにArduinoは欠かせません。そしてリッチなUIを作る手段としてUnityも欠かせない存在になってきました。両方ともプロトタイプを手早く作るのに強力なツールです。
Arduinoで取得したデータをUnityに接続したい場合は。。。やったことがありませんでした。
Arduinoと相性のよいProcessingでセンサー値を受け取り、そこからUnityにTCPかUDPで通信する。。。という感じに考えていました。
ぐぐってみると以下のありがたい記事が!
Unityで(というか.NETで)シリアル通信できるんですね。。。当然といえば当然。といいつつも頭にはありませんでした。
今後、使う機会がありそうなので試してみました。
とりあえず結果が以下です。
Cdsセンサーで明るさを取り込み、その値を上記の記事のソースにちょっとだけ加えて作ってみました。明るさに応じて、Unity内のライトの強度を0から1の間で変化させました。
Cdsセンサーの回路はこちらを参考に、そして、Arduino nano互換機のSierra用ドライバを入れるのにこちらを参考にしました。
Unityを数ヶ月ぶりに触ったので。。。かなり忘れていましたが、何とか思い出しました。gameobjectをコード内からどうやって参照するんだっけな。。。とか。クラス内でpublic変数を作ってそこにオブジェクトを投下すればよかったんですね。。。忘れてた。
ほんと、いい時代です。