transform.parentを使うと、親オブジェクトのTransformコンポーネントを取得することが出来るのでそこから親オブジェクトのGameObjectを取得することできます。
void Start()
{
Transform parentTransform = transform.parent;
if (parentTransform != null)
{
Debug.Log("親オブジェクトの名前: " + parentTransform.gameObject.name);
}
else
{
Debug.Log("親オブジェクトは存在しません");
}
}
transform.rootを使うと、自身の最上位にある親オブジェクトのTransformコンポーネントを取得することが出来ます。
void Start()
{
Transform rootTransform = transform.root;
Debug.Log("ルートオブジェクトの名前: " + rootTransform.gameObject.name);
}
自身の親オブジェクトの親オブジェクトは、transform.parent.transform.parentのように書くことで取得することができます。
void Start()
{
Transform parentTransform = transform.parent.transform.parent;
if (parentTransform != null)
{
Debug.Log("親オブジェクトの親オブジェクトの名前: " + parentTransform.gameObject.name);
}
else
{
Debug.Log("親オブジェクトの親オブジェクトは存在しません");
}
}