(1)Updateの場合
- 連射時にムラが出る。
(スクリプト)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Missile : MonoBehaviour
{
public GameObject missilePrefub;
public float missilespeed;
public AudioClip Sound;
private int timecount;
// Update・・・>毎フレームごとに呼ばれる(フレームレートの変動の影響を受ける)
// FixedUpdate・・・>一定秒後ごとに呼ばれる(間隔が一定になるメリットあり)
void FixedUpdate()
{
if (Input.GetButton("Jump"))
{
timecount += 1;
if (timecount % 2 == 0)
{
GameObject missile = Instantiate(missilePrefub, transform.position, Quaternion.identity);
Rigidbody missilerb = missile.GetComponent<Rigidbody>();
missilerb.AddForce(transform.forward * missilespeed);
AudioSource.PlayClipAtPoint(Sound, Camera.main.transform.position);
Destroy(missile, 2);
}
}
}
}
(FixedUpdateの場合)
- 連射が綺麗に一定間隔になる。