Hi,
I’m trying to instantiate a bullet from a c# script. I want to be able to specify the bullet in the inspector.
public Rigidbody m_Bullet;
Then I try to instantiate it as followed:
Rigidbody newBullet = (Rigidbody)Instantiate( m_Bullet, transform.position, transform.rotation );
newBullet.velocity = m_ShootingDirection * 25.0f;
Physics.IgnoreCollision( newBullet.collider, transform.root.collider );
This however doesn’t appear to be working properly, since it can’t cast to the Rigidbody. I did get it working using the following code:
GameObject bulletGameObj = Instantiate(Resources.Load("Towers/Default/p_BulletDefault"), transform.position + m_ShootingDirection*1.0f, Quaternion.identity) as GameObject;
Rigidbody newBullet = bulletGameObj.rigidbody;
But then I have to specify the path to the bullet, which I don’t want to hard-code… Is there any way I can add a prefab in the inspector ? (I could use a string assigned in the inspector, but I don’t really like that either, I want to be able to assign the prefab itself, is that possible?)
Thanks!