I decided to ditch raycasting and instead, instantiate bullets. I was wondering if I should create an array of bullets and when I press the Fire button, I shall make the object active through SetActive and then place the bullet where the gun is at. Or, should I instantiate on the spot? Which is more efficient? Thanks
Instantiate is slow. Object pooling is faster, which is the reason why anyone does it.
But come on; how did you not know that already, and why didn’t you search before asking?
Much has already been written on this topic.