Struggling with Instatiating a prefab

I’m trying to Instatiate a Prefab by looking it up. The following code works:

var explosion: GameObject; 

function update()
{
  ....somestuff...
 var newexplosion =	Instantiate (explosion, hit.point, transform.rotation);
}

This relies on me assigning the Prefab in the Editor’s Inspector. But what I really want to do is:

function update()
 .... somestuff....
var newexplosion =Instantiate (GameObject.Find("Explode"),hit.point,transform.rotation);
}

This doesnt work unless I have an instance of the prefab Explode called “Explode”.

Hence, what I want is to instatiate an object using the prefab’s name.

Its no doubt a very newb question but I just cant seem to get it.

You need to load the resource and then instantiate that reference:

  var myprefab : GameObject = Instantiate(Resources.Load("myprefab"));

Note this will only load assets stored in the resources folder … also I’ve noticed that the resource database might not have a link to your prefab (if you just created it) so I suggest adding this line initially:

  //Remove before build/release
  UnityEditor.AssetDatabase.Refresh();

If you put the prefab in a “/Resources” folder, you can use Resources.Load.