1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Unityで北陽電機URGセンサーをサクッと使うためのライブラリ「URG-Unity」を公開しました

1
Posted at

はじめに

メディアフロント・ジャパンの山本です。
私たちは、実空間を活用したインタラクティブな展示システムを多く開発しています。

今回、北陽電機(Hokuyo)の URG シリーズを Unity で手軽に扱うためのライブラリ URG-Unity を公開しました。
現時点では UST-10LX に対応しています。

できること

URG-Unityでは、UST-10LX から取得した距離データを、Prefabをシーンに配置するだけでUnity 上の入力(Pointer/Touch) として直接扱えるようになります。

主な機能

2Dスキャン平面への変換: センサの距離データを Unity 上の 2D 座標系へ変換。
ヒット点の抽出: スキャン結果から「触れた」ポイントを抽出。
Unity UI (uGUI) への直接入力: Input System Touchscreenに対応しているため、EventSystem と連携し、ボタン操作などが可能。

2. システム構成

このライブラリは、センサから取得した配列データの処理を Unity の Job System と Burst を使ってマルチスレッド化しています。
以下をジョブ化しています。

  • エンコード済み SCIP データの展開
  • 距離配列のデコード
  • 距離値から 2D 座標への変換
  • ローカル座標からスクリーン座標への変換

これにより、センサ入力の処理負荷を分散しながら、Unity 側の UI 処理や描画処理と共存しやすくしています。

3. 基本的な使い方


導入は Unity Package Manager から行えます。

https://github.com/MediaFrontJapan/URG-Unity.git?path=/Packages/com.mediafrontjapan.urg-unity

基本的な手順は次のとおりです。

  1. パッケージを追加する
  2. SCIPInputModules.prefab をシーンに配置する
  3. EventSystem をシーンに置く
  4. PC と UST-10LX を接続する
  5. Play Mode で C キーを押して設定 UI を開く
  6. IP アドレス、位置、角度、スケールを調整する
  7. C キーをもう一度押して設定を保存する

設定値は PlayerPrefs に保存されるので、毎回ゼロから調整し直さなくて済みます。

注意点

現状の前提は次のとおりです。

  • 対応センサは UST-10LX のみ
  • ドラッグによるキャリブレーションは Screen Space Overlay の Canvas 前提
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?