Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Fabkins · Oct 31, 2011 at 11:05 PM · prefabinstatiate

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.

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

2 Replies

· Add your reply
  • Sort: 
avatar image
4
Best Answer

Answer by Rod-Green · Oct 31, 2011 at 11:25 PM

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();
Comment
Add comment · Show 3 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Fabkins · Oct 31, 2011 at 11:52 PM 0
Share

Perfect, thank you guys. Here is what the line looked like:

var newexplosion : GameObject = Instantiate(Resources.Load("Explode",GameObject), hit.point, transform.rotation);

After I copied the Prefab into a folder called "Resources" as instructed.

Is this quite a heavy routine? Does the resource get cached? Should you preload any resources you think you may want to use?

avatar image Rod-Green · Oct 31, 2011 at 11:58 PM 0
Share

I think unity might cache it internally however I would cache it to be safe.. i.e.

   if(myprefab == null)
         myprefab = Resources.Load("myprefab");

   var myInstance : GameObject = Instantiate(myprefab);
avatar image Fabkins · Nov 01, 2011 at 12:08 AM 0
Share

Looks like you can also load many using Resources.LoadAll and address them via an array.

Again thanks.

avatar image
2

Answer by kevork · Oct 31, 2011 at 11:24 PM

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

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

4 People are following this question.

avatar image avatar image avatar image avatar image

Related Questions

Instantiating many objects 1 Answer

Unity UI prefab instantiation bug 1 Answer

How to instantiate an object with scripts? 1 Answer

Troubles instatiating a gameobject with rotation 0 Answers

Trying to load a prefab but getting null error 4 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges