[英]Starting a Particle System in Unity with Buttons
大家好,我用 Unity 的粒子系統制作了火箭發射粒子,但我知道如何在按下推力引擎按鈕時激活它(W 和向上箭頭是我的按鈕) 這是我的代碼;
public class Rocket : MonoBehaviour
{
private Rigidbody2D rb;
public float amount;
public float MaxVelocity = 3;
public float RotationSpeed = 3;
// Start is called before the first frame update
void Start()
{
rb = GetComponent<Rigidbody2D>();
}
public void ThrustForward(float amount)
{
Vector2 force = transform.up * amount;
rb.AddForce(force);
}
// Update is called once per frame
void Update()
{
float Yaxis = Input.GetAxis("Vertical");
float Xaxis = Input.GetAxis("Horizontal");
ThrustForward(Yaxis);
Rotate(transform, Xaxis * RotationSpeed);
}
private void ClampVelocity()
{
float x = Mathf.Clamp(rb.velocity.x, -MaxVelocity, MaxVelocity);
float y = Mathf.Clamp(rb.velocity.y, -MaxVelocity, MaxVelocity);
rb.velocity = new Vector2(x, y);
}
private void Rotate(Transform t,float amount)
{
t.Rotate(0, 0, amount);
}
}
請幫助我如何使用按鈕統一啟動粒子系統謝謝!!
如果你有一個粒子系統,你可以在你的代碼中創建一個變量,如下所示:
public ParticleSystem particle;
particle.Play();
public class Rocket : MonoBehaviour { private Rigidbody2D rb; public ParticleSystem particle; public float amount; public float MaxVelocity = 3; public float RotationSpeed = 3; // Start is called before the first frame update void Start() { rb = GetComponent<Rigidbody2D>(); } public void ThrustForward(float amount) { Vector2 force = transform.up * amount; rb.AddForce(force); particle.Play(); } // Update is called once per frame void Update() { float Yaxis = Input.GetAxis("Vertical"); float Xaxis = Input.GetAxis("Horizontal"); ThrustForward(Yaxis); Rotate(transform, Xaxis * RotationSpeed); // You Can Do Exactly Same Thing For Arrow Key // To Get Better Rusults Try Messing With The Particle System's Settings } private void ClampVelocity() { float x = Mathf.Clamp(rb.velocity.x, -MaxVelocity, MaxVelocity); float y = Mathf.Clamp(rb.velocity.y, -MaxVelocity, MaxVelocity); rb.velocity = new Vector2(x, y); } private void Rotate(Transform t,float amount) { t.Rotate(0, 0, amount); } }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.