Documentation

​
​

Development

User Acquisition

Monetization

Industry

Unity Studio

Open Unity Studio

Unity Studio

​
​
Unity Studio
  • What's new in Unity Studio
  • Introduction to Unity Studio
  • Launch Unity Studio
  • Create your first Unity Studio project
  • Develop with Unity Studio
    • The Unity Studio interface
    • Save your progress
    • GameObjects
    • Assets
    • Materials
    • Scene settings
    • Logic
      • Introduction to Logic
      • Create a Logic script
      • The Logic Editor interface
      • Methods, variables, and parameters
      • Nodes
        • Event Listener nodes
        • Event nodes
        • Action nodes
          • MoveByValue node
          • MoveToValue node
          • ScaleToValue node
          • ScaleByValue node
          • RotateByValue node
          • RotateToValue node
          • Set Active node
          • Wait node
          • Set Text node
          • Wait Until node
          • Instantiate node - expression
          • Instantiate node - statement
          • Destroy node
          • Set variable value node
          • Play animation node
          • Pause animation node
          • Stop animation node
        • Constant nodes
        • Flow Control nodes
        • Operator nodes
        • Utility nodes
      • Logic examples
    • The UI Creator
    • Animation
    • AI features
  • Collaborate in Unity Studio
  • Export drafts to the Unity Editor
  • Publish and share
  • Troubleshooting Unity Studio issues
  • Report bugs and share feedback
  • Manage your analytics and marketing preferences
  1. Unity Studio
  2. Develop with Unity Studio
  3. Logic
  4. Nodes
  5. Action nodes

Instantiate node - expression

Create a new instance of a specified GameObject in the scene and return the new GameObject.
Read time 2 minutes
Last updated 6 months ago

Use the Instantiate node to create a new copy of an object during play. This is useful if you want to spawn assets or UI elements whenever you need them.

Socket

Type

Description

Object
GameObject
The object to duplicate. When the node runs, it creates a new copy of this object. The new object uses the original’s default position and rotation. You can move or rotate it afterward with other nodes.

Variables

Expand the Instantiate node to view available variables you can use:

Variable

Type

Description

position
Vector3
The position where the new GameObject will be created in the scene. By default, it uses the original object's position, but you can specify a different position if needed.
rotation
Quaternion
The rotation of the new GameObject when it's created. By default, it uses the original object's rotation, but you can specify a different rotation if needed.
scale
Vector3
The scale of the new GameObject when it's created. By default, it uses the original object's scale, but you can specify a different scale if needed.
transform
Transform
The Transform component of the new GameObject. This is useful for modifying the position, rotation, or scale of the new object after it's created.
name
string
The name of the new GameObject. By default, it uses the original object's name with
(Clone)
appended to it, but you can specify a different name if needed.
activeSelf
bool
A Boolean that indicates whether the new GameObject is active in the scene. By default, it uses the original object's active state, but you can specify a different state if needed.

Methods

Expand the Instantiate node to view available methods you can use:

Method

Description

SetActiveA method that allows you to enable or disable the new GameObject in the scene. This is useful for controlling when the object should be visible or interactable after it's created.
GetComponentA method that allows you to access a specific component on the new GameObject. This is useful for modifying the behavior or properties of the new object immediately after it's created, such as changing its color or adding a script.
AddComponentA method that allows you to add a new component to the new GameObject. This is useful for dynamically adding functionality to the new object after it's created, such as adding a Rigidbody for physics interactions or a Collider for collision detection.
To stringA method that returns a string representation of the new GameObject, including its name and position. This can be useful for debugging or logging purposes to understand what object was created and where it is in the scene.

Additional resources

  • Instantiate statement node
  • Unity Engine - Instantiate
  • Actions nodes

Copyright © 2026 Unity Technologies
LegalPrivacy PolicyCookiesDocumentation Terms of UseDo Not Sell or Share My Personal InformationYour Privacy Choices (Cookie 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.

Some pages are machine-translated for convenience, and may contain inaccuracies. In the event of conflicting information, the English version is authoritative.

  • On this page
    • Variables

    • Methods

    • Additional resources


Report a problem with this page