回答編集履歴
3
あいう
test
CHANGED
@@ -1,26 +1,31 @@
|
|
1
|
-
objBの座標ーobjAの座標で行けますでしょうか?
|
2
1
|
|
3
|
-
```
|
4
|
-
Vector3 B = objB.transform.position-objA.transform.position;
|
5
|
-
//BはobjAを原点としたobjBの座標
|
6
|
-
```
|
7
|
-
objAの向きが反映されるなら
|
8
|
-
|
9
|
-
|
2
|
+
objCを作って以下のスクリプトをobjCに付けます
|
10
3
|
(objCにつけるスクリプト)
|
11
4
|
```
|
5
|
+
using System.Collections;
|
6
|
+
using System.Collections.Generic;
|
7
|
+
using UnityEngine;
|
8
|
+
|
9
|
+
public class スクリプトの名前 : MonoBehaviour
|
10
|
+
{
|
11
|
+
public GameObject objB;
|
12
|
+
// Start is called before the first frame update
|
13
|
+
void Start()
|
14
|
+
{
|
15
|
+
|
16
|
+
}
|
17
|
+
|
18
|
+
// Update is called once per frame
|
19
|
+
void Update()
|
20
|
+
{
|
12
|
-
transform.position=objB.transform.position;
|
21
|
+
transform.position=objB.transform.position;
|
22
|
+
Debug.Log(transform.localPosition);
|
23
|
+
//localPositionと打つときはtransformをつけ忘れないように...
|
24
|
+
Vector3 B = transform.localPosition;
|
25
|
+
//Bが出力です
|
26
|
+
}
|
27
|
+
}
|
13
28
|
```
|
14
29
|
そうしたらobjCをobjAの子オブジェクトにします
|
15
30
|
これで座標が出ると思います
|
16
|
-
//////////おまけ///////////
|
17
|
-
objCのスクリプトを以下のコードにするとDebug.LogでobjAから見たobjBの座標を教えてくれて出力も出してくれます
|
18
|
-
```
|
19
|
-
transform.position=objB.transform.position;
|
20
|
-
Debug.Log(transform.localPosition);
|
21
|
-
//localPositionと打つときはtransformをつけ忘れないように...
|
22
|
-
Vector3 objB = transform.localPosition;
|
23
|
-
//objBが出力です
|
24
|
-
```
|
25
31
|
|
26
|
-
|
2
向きが反映されるときの場合も書きました
test
CHANGED
@@ -4,3 +4,23 @@
|
|
4
4
|
Vector3 B = objB.transform.position-objA.transform.position;
|
5
5
|
//BはobjAを原点としたobjBの座標
|
6
6
|
```
|
7
|
+
objAの向きが反映されるなら
|
8
|
+
|
9
|
+
まずobjCを作ってobjCを常にobjBの座標になるようにします
|
10
|
+
(objCにつけるスクリプト)
|
11
|
+
```
|
12
|
+
transform.position=objB.transform.position;
|
13
|
+
```
|
14
|
+
そうしたらobjCをobjAの子オブジェクトにします
|
15
|
+
これで座標が出ると思います
|
16
|
+
//////////おまけ///////////
|
17
|
+
objCのスクリプトを以下のコードにするとDebug.LogでobjAから見たobjBの座標を教えてくれて出力も出してくれます
|
18
|
+
```
|
19
|
+
transform.position=objB.transform.position;
|
20
|
+
Debug.Log(transform.localPosition);
|
21
|
+
//localPositionと打つときはtransformをつけ忘れないように...
|
22
|
+
Vector3 objB = transform.localPosition;
|
23
|
+
//objBが出力です
|
24
|
+
```
|
25
|
+
|
26
|
+
|
1
AとBが逆でした...
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
objBの座標ーobjAの座標で行けますでしょうか?
|
2
2
|
|
3
3
|
```
|
4
|
-
Vector3 B = obj
|
4
|
+
Vector3 B = objB.transform.position-objA.transform.position;
|
5
5
|
//BはobjAを原点としたobjBの座標
|
6
6
|
```
|