Legacy Documentation: Version 2018.1 (Go to current version)
LanguageEnglish
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Transform.SetParent

Switch to Manual
public void SetParent(Transform parent);
public void SetParent(Transform parent, bool worldPositionStays);

Parameters

parentThe parent Transform to use.
worldPositionStaysIf true, the parent-relative position, scale and rotation are modified such that the object keeps the same world space position, rotation and scale as before.

Description

Set the parent of the transform.

This method is the same as the parent property except that it is possible to make the Transform keep its local orientation rather than its global orientation. This is managed by setting the worldPositionStays parameter to false. When SetParent is called with only the single Transform argument the worldPositionStays argument is set to true.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public GameObject player;

//Invoked when a button is clicked. public void Example(Transform newParent) { //Sets "newParent" as the new parent of the player GameObject. player.transform.SetParent(newParent);

//Same as above, except this makes the player keep its local orientation rather than its global orientation. player.transform.SetParent(newParent, false); } }

Did you find this page useful? Please give it a rating: