回答編集履歴

3

間違い

2022/08/05 11:39

投稿

katsuko
katsuko

スコア3491

test CHANGED
@@ -14,7 +14,7 @@
14
14
  // (normalizedは要らない気がするけど、念の為…)
15
15
  //obj1.Rotate(0, 0, Vector3.Angle(Vector3.right, lookLocalPos.normalized));
16
16
  // Angleだと180しか求められないので
17
- obj1.Rotate(0, 0, Mathf.Rad2Deg * Mathf.Atan2(y, x));
17
+ obj1.Rotate(0, 0, Mathf.Rad2Deg * Mathf.Atan2(lookLocalPos.y, lookLocalPos.x));
18
18
  }
19
19
  ```
20
20
 

2

コードの間違い修正

2022/08/05 11:39

投稿

katsuko
katsuko

スコア3491

test CHANGED
@@ -12,7 +12,9 @@
12
12
  lookLocalPos.z = 0.0f;
13
13
  // X軸が先の座標を向くように回転
14
14
  // (normalizedは要らない気がするけど、念の為…)
15
- obj1.Rotate(0, 0, Vector3.Angle(Vector3.right, lookLocalPos.normalized));
15
+ //obj1.Rotate(0, 0, Vector3.Angle(Vector3.right, lookLocalPos.normalized));
16
+ // Angleだと180しか求められないので
17
+ obj1.Rotate(0, 0, Mathf.Rad2Deg * Mathf.Atan2(y, x));
16
18
  }
17
19
  ```
18
20
 

1

ちょっと修正

2022/08/04 23:53

投稿

katsuko
katsuko

スコア3491

test CHANGED
@@ -1,6 +1,6 @@
1
1
  面白い課題なので、できれば自力で解決してほしいなぁ…、とは思います。
2
2
 
3
- Z軸が同じ向きであれば、obj1がLookAtすべき点はobj1のローカル座標のXY面上にあるはずなので、ローカル座標に変換して計算するのが手っ取り早いかなぁ、と思います。
3
+ Z軸で回転するのであれば、obj1がLookAtすべき点はobj1のローカル座標のXY面上にあるはずなので、ローカル座標に変換して計算するのが手っ取り早いかなぁ、と思います。
4
4
  (動作確認はしてません)
5
5
 
6
6
  ```cs