More Related Content Similar to HoloLensハンズオン:AirTap & SpatialMapping編 (20) More from Takashi Yoshinaga (20) HoloLensハンズオン:AirTap & SpatialMapping編44. スクリプトの記述
public class RcvAirTap : MonoBehaviour , IInputClickHandler
{
// Start関数は初期化のために一度だけ実行される
void Start () {
}
// Update関数は毎フレーム実行される
void Update () {
}
}
IInputClickHandlerにカーソルを合わせ、
ヒントからInplement interfaceを選択
45. 現状確認
using HoloToolkit.Unity.InputModule;
public class RcvAirTap : MonoBehaviour , IInputClickHandler
{
//AirTapされたときに呼び出される関数
public void OnInputClicked(InputEventData eventData)
{
throw new NotImplementedException();
}
void Start () {
}
void Update () {
}
}
throw new NotImplementedException();
不要なのでこの1行は削除
47. AirTapの取得と表示
public class RcvAirTap : MonoBehaviour , IInputClickHandler
{
//AirTapされたときに呼び出される関数
public void OnInputClicked(InputEventData eventData)
{
Debug.Log("AirTap!");
}
void Start () {
InputManager.Instance.
PushFallbackInputHandler(gameObject);
}
void Update () {
}
}
このスクリプトが貼り付けられている
オブジェクト(gameObject)に
AirTapの通知が来るように登録
51. スクリプトを用いたオブジェクトの生成
public class RcvAirTap : MonoBehaviour , IInputClickHandler
{
//Cube prefabを扱う変数
public GameObject original;
//AirTapされたときに呼び出される関数
public void OnInputClicked(InputEventData eventData)
{
//Cube prefabの情報を用いて立方体を実体化
GameObject cube = GameObject.Instantiate(original);
//自分からみて前方1.2mの位置を空間内の位置に変換
cube.transform.position =
Camera.main.transform.TransformPoint(0, 0, 1.2f);
Debug.Log("AirTap!");
}
/*以下省略*/
54. 立方体の個数に制限を設ける
//複数の立方体を保存する入れ物
List<GameObject> list = new List<GameObject>();
public void OnInputClicked(InputEventData eventData)
{
GameObject cube = GameObject.Instantiate(original);
cube.transform.position =
Camera.main.transform.TransformPoint(0, 0, 1.2f);
if (list.Count == 10)
{
Destroy(list[0]); //一番古いCubeを空間から削除する
list[0] = null; //Destroyだけでは完全に消えないのでnull代入
list.RemoveAt(0); //listの0番目にはnullが残っているので削除
}
list.Add(cube);
}
57. 実機で動かそう : 出力の際の設定
Short nameを
自分の名前に
icon Other Settings
Virtual Reality
Supported
Publishing Settings
Package Nameを
自分の名前に
59. 実機で動かそう : Build
Add OpenScenes
Universal Windows Platform
Switch Platform
・ Target device
HoloLens
・ UWP Build Type
D3D
最後にBuild
73. Any questions?
ご質問・ご相談、お気軽にどうぞ
Name:
吉永 崇 (Takashi Yoshinaga)
Affiliation・Title:
(公財) 九州先端科学技術研究所 研究員
Others:
(1) ARコンテンツ作成勉強会主催
(2) Microsoft MVP for Windows Development
taka.yoshinaga @tks_yoshinaga
YoshinagaTakashi