我做了一艘简单的宇宙飞船,它有一个分区系统。当我按下“空间”按钮时,飞船应该飞行,粒子系统应该实例化和播放。但它不是在玩。它在等级上似乎是克隆的,而不是玩的。
正如你所看到的,粒子效应是实例化的,但不起作用。它应该在飞船的底部发挥作用。
这些是密码
void FlyShip()
{
if (Input.GetKey(KeyCode.Space))
{
rb.AddForce(Vector3.up * jumpForce);
if (!takeoffSound.isPlaying)
{
// _rocketJetParticle is gameobject.
_rocketJetParticle = Instantiate(rocketJetParticle, new Vector3(transform.position.x, transform.position.y - 4, transform.position.z), transform.rotation);
takeoffSound.Play();
}
}
else
{
//Destroy(_rocketJetParticle);
takeoffSound.Stop();
}
}发布于 2021-02-22 05:00:35
确保将粒子分配给脚本,并使用调试模式检查粒子系统是否正常工作。
发布于 2021-02-22 07:30:31
rocketJetParticle = Instantiate(Vector3);
ParticleSystem ps =rocketJetPartivle.GetComponent<ParticleSystem>();
ps.Play();实例化包含gameObject的ParticleSystem。并命名为“rocketJetParticle”
从'rocketJetParticle‘gameObject中获取rocketJetParticle并将其命名为ps。
播放名为ps的particleSystem。
此外,为了获得更好的性能,我建议使用gameObject.setActive或enabled,而不是使用实例化&&破坏。
https://stackoverflow.com/questions/66306685
复制相似问题