質問編集履歴
4
説明の補足
test
CHANGED
File without changes
|
test
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
####Scene understanding機能について
|
4
4
|
|
5
|
-
Scene UnderstandingはHoloLens2で取得した環境メッシュデータを分析し、壁や床といったオブジェクトの位置やメッシュデータを提供する機能です。
|
5
|
+
Scene UnderstandingはHoloLens2という透過型HMD(ヘッドマウントディスプレイ)で取得した環境メッシュデータを分析し、壁や床といったオブジェクトの位置やメッシュデータを提供する機能です。
|
6
6
|
|
7
7
|
現在自分はHoloLens2のScene Understandingの機能を使ったアプリケーションを、以下のサンプルプロジェクトを書き換えて作成しています。
|
8
8
|
|
3
内容の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
|
19
19
|
####Scene UnderstandingのUnityエディタ上でのデモ
|
20
20
|
|
21
|
-
HoloLens2とありますが、上記サンプルプロジェクトのサンプルシーンをunity上で開き、SceneunderstandingManagerオブジェクトにアタッチされたSceneUnderstandingDataProvider.csにおけるRun On Deviceをインスペクター上でオフにすることで、予め用意されたシーンを利用してunityエディタ上でどのようなオブジェクトが表示されるのかというデモを見ることができます。
|
21
|
+
HoloLens2とありますが、上記サンプルプロジェクトのサンプルシーンをunity上で開き、SceneunderstandingManagerオブジェクトにアタッチされたSceneUnderstandingDataProvider.csにおけるRun On Deviceをインスペクター上でオフにすることで、予め用意されたシーンを利用してunityエディタ上でどのようなオブジェクトが表示されるのかというデモを見ることができます。**今回の質問は、このUnity上の実行デモにおける動作に問題が生じていることに関してのものなので、HoloLens2とは関係なしに、Unityにお詳しい方がいましたらご回答いただけたら幸いです。**
|
22
22
|
|
23
23
|
|
24
24
|
|
2
内容の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,25 +6,25 @@
|
|
6
6
|
|
7
7
|
現在自分はHoloLens2のScene Understandingの機能を使ったアプリケーションを、以下のサンプルプロジェクトを書き換えて作成しています。
|
8
8
|
|
9
|
-
https://github.com/sceneunderstanding-microsoft/unitysample
|
9
|
+
[https://github.com/sceneunderstanding-microsoft/unitysample](https://github.com/sceneunderstanding-microsoft/unitysample)
|
10
10
|
|
11
11
|
|
12
12
|
|
13
13
|
また、Scene Understandingの概要・動作については以下のページを参考にしています。
|
14
14
|
|
15
|
-
https://qiita.com/Futo_Horio/items/2759f9ca2b892709ab66
|
15
|
+
[https://qiita.com/Futo_Horio/items/2759f9ca2b892709ab66](https://qiita.com/Futo_Horio/items/2759f9ca2b892709ab66)
|
16
16
|
|
17
17
|
|
18
18
|
|
19
19
|
####Scene UnderstandingのUnityエディタ上でのデモ
|
20
20
|
|
21
|
-
HoloLens2とありますが、上記サンプルプロジェクトのサンプルシーンを開き、SceneunderstandingManagerにアタッチされたSceneUnderstandingDataProvider.csにおけるRun On Deviceをインスペクター上でオフにすることで、予め用意されたシーンを利用してunityエディタ上でどのようなオブジェクトが表示されるのかというデモを見ることができます。
|
21
|
+
HoloLens2とありますが、上記サンプルプロジェクトのサンプルシーンをunity上で開き、SceneunderstandingManagerオブジェクトにアタッチされたSceneUnderstandingDataProvider.csにおけるRun On Deviceをインスペクター上でオフにすることで、予め用意されたシーンを利用してunityエディタ上でどのようなオブジェクトが表示されるのかというデモを見ることができます。
|
22
22
|
|
23
23
|
|
24
24
|
|
25
25
|
####実現したいこと
|
26
26
|
|
27
|
-
|
27
|
+
表示される壁や床といった各オブジェクトは、SceneRootと呼ばれるオブジェクトの子オブジェクトとして設置されます(初期状態ではエディタ上のRootという名前のオブジェクトが該当する)。自分は作成するアプリケーションの関係上、ワールド座標空間におけるカメラと、SceneRootを原点とするローカル座標空間のオブジェクトの位置関係を取得する必要があったため、まずSceneRootのワールド座標の位置および傾きを取得しようと試みようとしたところ、次のような問題が生じました。
|
28
28
|
|
29
29
|
|
30
30
|
|
@@ -42,9 +42,9 @@
|
|
42
42
|
|
43
43
|
|
44
44
|
|
45
|
-
と表示されるので、これを基準にオブジェクトを配置しているのですが、オブジェクト設置直前(SceneUnderstandingDisplayManager.cs内の298行目DisplaySceneObjectクラス内)
|
45
|
+
と表示されるので、これを基準に子オブジェクトを配置しているのですが、オブジェクト設置直前(SceneUnderstandingDisplayManager.cs内の298行目DisplaySceneObjectクラス内)に挿入した
|
46
46
|
|
47
|
-
Debug.Log(SceneRoot.transform.position)およびDebug.Log(SceneRoot.transform.rotation)
|
47
|
+
Debug.Log(SceneRoot.transform.position)およびDebug.Log(SceneRoot.transform.rotation)によると、コンソール上では
|
48
48
|
|
49
49
|
|
50
50
|
|
@@ -54,33 +54,19 @@
|
|
54
54
|
|
55
55
|
|
56
56
|
|
57
|
-
と表示されてし
|
57
|
+
と表示されていました。初期移動がないことはともかく、初期回転なしという、SceneRootのインスペクター上のRotationの値とは異なる値を取得していました。
|
58
58
|
|
59
59
|
|
60
60
|
|
61
61
|
### 試したこと
|
62
62
|
|
63
|
-
SceneRootを親としたCubeオブジェクトを作成したところ、実行の際はちゃんと傾いて表示されたのですが、position
|
63
|
+
SceneRootを親としたCubeオブジェクトを作成したところ、実行の際はSceneRootのインスペクターのRotationが示すように、ちゃんと傾いて表示されたのですが、positionやrotationの値はともに
|
64
64
|
|
65
|
+
(0.0,0.0,0.0)←position
|
65
66
|
|
67
|
+
(0.0,0.0,0.0,1.0)←rotation
|
66
68
|
|
67
|
-
|
68
|
-
|
69
|
-
```C#
|
70
|
-
|
71
|
-
GameObject localcube = GameObject.Find("localcube");
|
72
|
-
|
73
|
-
localcube.transform.position = Camera.main.transform.position;
|
74
|
-
|
75
|
-
localcube.transform.rotation = Quaternion.identity;
|
76
|
-
|
77
|
-
localcube.transform.parent = SceneRoot.transform;
|
78
|
-
|
79
|
-
Debug.Log(localcube.transform.localPosition);
|
80
|
-
|
81
|
-
Debug.Log(localcube.transform.localRotation);
|
82
|
-
|
83
|
-
```
|
69
|
+
となっていました。
|
84
70
|
|
85
71
|
|
86
72
|
|
1
初心者マーク記載
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
-
####Scene understandingについて
|
3
|
+
####Scene understanding機能について
|
4
4
|
|
5
5
|
Scene UnderstandingはHoloLens2で取得した環境メッシュデータを分析し、壁や床といったオブジェクトの位置やメッシュデータを提供する機能です。
|
6
6
|
|