teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

改変2

2016/10/31 05:12

投稿

micro_1357
micro_1357

スコア7

title CHANGED
File without changes
body CHANGED
@@ -60,4 +60,41 @@
60
60
 
61
61
  どうぞよろしくお願いいたします。
62
62
 
63
- ###改変
63
+ ###改変
64
+ ```
65
+ using UnityEngine;
66
+ using System.Collections;
67
+
68
+ public class mvcam_new3 : MonoBehaviour
69
+ {
70
+ public Vector3 pos = new Vector3(-11, 0, 0);
71
+ private GameObject game_object01 = null;
72
+ private GameObject game_object02 = null;
73
+ public void Start()
74
+ {
75
+ game_object01 = GameObject.Find("Sphere100");
76
+ GameObject game_object02 = (GameObject)Resources.Load ("Prefabs/Sphere101");
77
+ Instantiate (game_object02,transform.position,transform.rotation);
78
+ }
79
+ void Update()
80
+ {
81
+
82
+ if (Input.GetKeyDown(KeyCode.Space) && pos.z < 300)
83
+ { //spaceキーの入力があり、かつx座標が300以下の場合にという条件文
84
+ pos.z += 30; //x座標を+30する(移動する)
85
+ transform.position = pos; //位置更新
86
+ print(transform.position.z); //コンソールを開くと座標が今どこにいるのかわかるのか書いてくれる
87
+ }
88
+ else if (Input.GetKeyDown(KeyCode.Space) && pos.z >= 300)
89
+ {
90
+ pos.z = 0;
91
+ transform.position = pos;
92
+ print(transform.position.z);
93
+ game_object01.SetActive(false);
94
+ //game_object02.SetActive(true);
95
+ game_object02.SetActive(true);
96
+ //game_object02.transform.gameObject.SetActive(true);
97
+ }
98
+ }
99
+ }
100
+ ```

2

改変したスクリプトを更新しました

2016/10/31 05:12

投稿

micro_1357
micro_1357

スコア7

title CHANGED
File without changes
body CHANGED
@@ -58,4 +58,6 @@
58
58
  ```
59
59
  このスクリプトではtransform.Findを使用していますが、非アクティブなオブジェクトを参照する事ができれば別の方法でも問題ありません。
60
60
 
61
- どうぞよろしくお願いいたします。
61
+ どうぞよろしくお願いいたします。
62
+
63
+ ###改変

1

分かり辛い表現があったので訂正

2016/10/31 05:09

投稿

micro_1357
micro_1357

スコア7

title CHANGED
File without changes
body CHANGED
@@ -4,7 +4,7 @@
4
4
  カメラに割り当てたスクリプトで、カメラのz座標が300の地点まで達するまでz座標を+30し、300の地点を超えるとオブジェクトAを非アクティブにし、同時に(非アクティブの)オブジェクトBをアクティブにする。
5
5
  というスクリプトを書きたいのですが、オブジェクトの取得が上手くいきません。
6
6
 
7
- 原因を調べてみたところ、startメソッドの時点でBox1/Sphere101の取得ができていないようです。
7
+ 原因を調べてみたところ、startメソッドの時点でオブジェクトBであるBox1/Sphere101の取得ができていないようです。
8
8
 
9
9
  非アクティブのオブジェクトを参照する為に、親オブジェクトがアクティブであれば参照が可能なtransform.Findを使用して、EmptyなオブジェクトBox1の子階層にSphere101を入れ、参照しています。__(画像参照)__
10
10