- Home /
How to access a special Object from Code?
Hi. I'm beginner to unity. How to access a object from code? I use Instantiate function to create some object but when i use GameObject.Find("Ammo(Clone)"); the first object that Instantiated be selected and others do not be select!! Can any one help me?
GameObject.Find is only meant to return one object. It returns the first one it finds that matches the search criteria. But here's another question: If you're using Instantiate to create objects, why aren't you simply saving references to them when they get created? Notice that instantiate returns a reference to the object you create. You can save that in a variable and access it that way. GameObject.Find is mostly used to cache references for objects created in the editor.
You'd probably have to write a complete post on that to make it clear. read: beginner to unity
I'll try to elaborate a bit. You mentioned you used Instantiate to create objects. Look at its documentation for a few $$anonymous$$utes:
http://unity3d.com/support/documentation/ScriptReference/Object.Instantiate.html
Notice that it says "static function Instantiate (original : Object, position : Vector3, rotation : Quaternion) : Object". The final occurrence of the word "Object" is the return type of this function. It means it returns a reference to the object it instantiates. You can save that reference by setting a variable when you call the function:
var referenceToObject = Instantiate(...
The reference to the object is would also get returned by calling GameObject.Find... So ins$$anonymous$$d of using GameObject.Find to retrieve them later, save them in a variable when you call Instantiate.
Your answer
Follow this Question
Related Questions
Instantiate Different GameObject prefabs? 1 Answer
how to select and deselct an instantiated objects. 3 Answers
Checking if object intersects? 1 Answer
Instantiate as a child? 3 Answers
Instantiate ground/enemies 1 Answer