ดังนั้น Part 3 จะใช้ Object Pooling เข้ามาใช้งานเพื่อให้ Performance ของเกมเราดีขึ้นนั้นเอง
using UnityEngine;
public class BulletController : MonoBehaviour
{
public float speed = 5.0f;
public float distroyTime = 2.0f;
void OnEnable()
{
Invoke("Distroy", distroyTime);
}
void Distroy()
{
gameObject.SetActive(false);
}
void OnDisable()
{
CancelInvoke();
}
void Update()
{
transform.Translate(Vector3.forward * speed * Time.deltaTime);
}
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
GameObject obj = ObjectPooling.current.GetPooledObject();
if (obj == null)
{
return;
}
obj.transform.position = bulletPosition.position;
obj.transform.rotation = bulletPosition.rotation;
obj.SetActive(true);
}
}
ปล. มีอะไรแนะนำได้นะครับ
NO GAME NO DREAM!!!!