質問編集履歴
6
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -95,41 +95,4 @@
|
|
95
95
|
yield return new WaitForSeconds(waitTime);
|
96
96
|
action();
|
97
97
|
}
|
98
|
-
```
|
99
|
-
|
100
|
-
###追記②
|
101
|
-
ご回答ありがとうございます。追記しました。
|
102
|
-
```C#
|
103
|
-
GameObject pObject;
|
104
|
-
ParticleSystem particle;
|
105
|
-
|
106
|
-
//ここでパーティクルが停止される時間を指定
|
107
|
-
float particleDelayTime = .01f;
|
108
|
-
|
109
|
-
void Awake()
|
110
|
-
{
|
111
|
-
pObject = GameObject.FindGameObjectWithTag ("ParticleSystem");
|
112
|
-
particle = pObject.GetComponent<ParticleSystem> ();
|
113
|
-
particle.gameObject.SetActive(false);
|
114
|
-
}
|
115
|
-
|
116
|
-
void Update()
|
117
|
-
{
|
118
|
-
if (Input.GetKey(KeyCode.F) && particle.isStopped) {
|
119
|
-
particle.gameObject.SetActive (true);
|
120
|
-
particle.Simulate (4.0f, true, true);
|
121
|
-
particle.Play ();
|
122
|
-
StartCoroutine (delay (particleDelayTime, () => {
|
123
|
-
particle.gameObject.SetActive (false);
|
124
|
-
}));
|
125
|
-
//for Debug
|
126
|
-
Debug.Log ("A");
|
127
|
-
}
|
128
|
-
}
|
129
|
-
|
130
|
-
IEnumerator delay(float waitTime, UnityAction action)
|
131
|
-
{
|
132
|
-
yield return new WaitForSeconds(waitTime);
|
133
|
-
action();
|
134
|
-
}
|
135
98
|
```
|
5
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -97,4 +97,39 @@
|
|
97
97
|
}
|
98
98
|
```
|
99
99
|
|
100
|
-
###追記②
|
100
|
+
###追記②
|
101
|
+
ご回答ありがとうございます。追記しました。
|
102
|
+
```C#
|
103
|
+
GameObject pObject;
|
104
|
+
ParticleSystem particle;
|
105
|
+
|
106
|
+
//ここでパーティクルが停止される時間を指定
|
107
|
+
float particleDelayTime = .01f;
|
108
|
+
|
109
|
+
void Awake()
|
110
|
+
{
|
111
|
+
pObject = GameObject.FindGameObjectWithTag ("ParticleSystem");
|
112
|
+
particle = pObject.GetComponent<ParticleSystem> ();
|
113
|
+
particle.gameObject.SetActive(false);
|
114
|
+
}
|
115
|
+
|
116
|
+
void Update()
|
117
|
+
{
|
118
|
+
if (Input.GetKey(KeyCode.F) && particle.isStopped) {
|
119
|
+
particle.gameObject.SetActive (true);
|
120
|
+
particle.Simulate (4.0f, true, true);
|
121
|
+
particle.Play ();
|
122
|
+
StartCoroutine (delay (particleDelayTime, () => {
|
123
|
+
particle.gameObject.SetActive (false);
|
124
|
+
}));
|
125
|
+
//for Debug
|
126
|
+
Debug.Log ("A");
|
127
|
+
}
|
128
|
+
}
|
129
|
+
|
130
|
+
IEnumerator delay(float waitTime, UnityAction action)
|
131
|
+
{
|
132
|
+
yield return new WaitForSeconds(waitTime);
|
133
|
+
action();
|
134
|
+
}
|
135
|
+
```
|
4
更新
title
CHANGED
File without changes
|
body
CHANGED
@@ -97,22 +97,4 @@
|
|
97
97
|
}
|
98
98
|
```
|
99
99
|
|
100
|
-
###追記②
|
100
|
+
###追記②
|
101
|
-
ご回答ありがとうございます。
|
102
|
-
|
103
|
-

|
104
|
-
```C#
|
105
|
-
GameObject pObject;
|
106
|
-
ParticleSystem particle;
|
107
|
-
|
108
|
-
//ここでパーティクルが停止される時間を指定
|
109
|
-
float particleDelayTime = .2f;
|
110
|
-
|
111
|
-
void Awake()
|
112
|
-
{
|
113
|
-
pObject = GameObject.FindGameObjectWithTag("ParticleSystem")
|
114
|
-
particle = pObject.GetComponent<ParticleSystem> (); //←24行目
|
115
|
-
particle.gameObject.SetActive(false);
|
116
|
-
}
|
117
|
-
```
|
118
|
-
> Assets/GameObjectScript.cs(24,24): error CS1525: Unexpected symbol `particle'
|
3
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -63,7 +63,7 @@
|
|
63
63
|
|
64
64
|
ご教授のほどよろしくお願いします。
|
65
65
|
|
66
|
-
###追記
|
66
|
+
###追記①
|
67
67
|
ご回答ありがとうございます。追記しました。
|
68
68
|
```C#
|
69
69
|
//ここでパーティクルが停止される時間を指定
|
@@ -95,4 +95,24 @@
|
|
95
95
|
yield return new WaitForSeconds(waitTime);
|
96
96
|
action();
|
97
97
|
}
|
98
|
-
```
|
98
|
+
```
|
99
|
+
|
100
|
+
###追記②
|
101
|
+
ご回答ありがとうございます。
|
102
|
+
|
103
|
+

|
104
|
+
```C#
|
105
|
+
GameObject pObject;
|
106
|
+
ParticleSystem particle;
|
107
|
+
|
108
|
+
//ここでパーティクルが停止される時間を指定
|
109
|
+
float particleDelayTime = .2f;
|
110
|
+
|
111
|
+
void Awake()
|
112
|
+
{
|
113
|
+
pObject = GameObject.FindGameObjectWithTag("ParticleSystem")
|
114
|
+
particle = pObject.GetComponent<ParticleSystem> (); //←24行目
|
115
|
+
particle.gameObject.SetActive(false);
|
116
|
+
}
|
117
|
+
```
|
118
|
+
> Assets/GameObjectScript.cs(24,24): error CS1525: Unexpected symbol `particle'
|
2
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -64,7 +64,7 @@
|
|
64
64
|
ご教授のほどよろしくお願いします。
|
65
65
|
|
66
66
|
###追記
|
67
|
-
|
67
|
+
ご回答ありがとうございます。追記しました。
|
68
68
|
```C#
|
69
69
|
//ここでパーティクルが停止される時間を指定
|
70
70
|
float particleDelayTime = .2f;
|
1
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
キー入力とUpdateとLateUpdateを利用して、パーティクルを一瞬だけ表示したいと考えています。
|
3
3
|
|
4
4
|
仕様:
|
5
|
-
Fキーを押した瞬間だけ、パーティクルを表示する。それ以外の時はパーティクルは非表示。
|
5
|
+
Fキーを押した瞬間だけ、指定した再生位置でパーティクルを表示する。それ以外の時はパーティクルは非表示。
|
6
6
|
|
7
7
|
###試したこと
|
8
8
|
|
@@ -61,4 +61,38 @@
|
|
61
61
|
|
62
62
|
しかし、UpdateとLateUpdateを使う仕様自体がbad codeであるのならば、代替の方法を教えて頂きたいです。
|
63
63
|
|
64
|
-
ご教授のほどよろしくお願いします。
|
64
|
+
ご教授のほどよろしくお願いします。
|
65
|
+
|
66
|
+
###追記
|
67
|
+
|
68
|
+
```C#
|
69
|
+
//ここでパーティクルが停止される時間を指定
|
70
|
+
float particleDelayTime = .2f;
|
71
|
+
|
72
|
+
void Awake()
|
73
|
+
{
|
74
|
+
pObject = GameObject.Find ("Particle System");
|
75
|
+
particle = pObject.GetComponent<ParticleSystem> ();
|
76
|
+
particle.gameObject.SetActive(false);
|
77
|
+
}
|
78
|
+
|
79
|
+
void Update()
|
80
|
+
{
|
81
|
+
if (Input.GetKeyDown ("f") && particle.isStopped) {
|
82
|
+
particle.gameObject.SetActive (true);
|
83
|
+
particle.Simulate (4.0f, true, true); //追記。
|
84
|
+
particle.Play (); //追記。
|
85
|
+
StartCoroutine (delay (particleDelayTime, () => {
|
86
|
+
particle.gameObject.SetActive (false);
|
87
|
+
}));
|
88
|
+
//for Debug
|
89
|
+
Debug.Log ("A");
|
90
|
+
}
|
91
|
+
}
|
92
|
+
|
93
|
+
IEnumerator delay(float waitTime, UnityAction action)
|
94
|
+
{
|
95
|
+
yield return new WaitForSeconds(waitTime);
|
96
|
+
action();
|
97
|
+
}
|
98
|
+
```
|