如何在Unity中的另一个GameObject的变换位置实例化一个对象?

问题描述 投票:0回答:1

对不起,我知道这是超基本的 完成了我的第一门Unity课程,正在制作我的第一款游戏,只是想在对手进球后,在层次结构中的PlayerPuckSpawn GameObject的位置生成一个冰球。目前只是写了一个进球时的方法。

    public void EnemyGoalScored()
        {
            StartCoroutine(EnemyScored());
            Destroy(gameObject);
            Instantiate(gameObject, PlayerPuckSpawn.transform.position); 
        }

这是在与冰球相关的脚本中,所以gameObject指的是冰球。 只是不记得怎么写脚本部分,告诉冰球在PlayerPuckSpawn的位置产卵,而这个位置是层次结构中的GameObject。 我知道这是超基本的,但是我在网上搜了一下,也翻了一下我的课堂笔记,都没有找到。 超级感谢任何能帮助我的人! :)

c# unity3d instantiation gameobject
1个回答
0
投票

Instantiate方法的一个变体有一个位置和旋转参数.要使用调用项目的世界坐标,做。

Instantiate(prefab_to_inst,transform.position,transform.rotation);

如果你不想复制旋转,也可以使用默认的rot。

Instantiate(prefab_to_inst,transform.position,Quaternion.identity);

要复制任何一个项目的位置,请在引用前加注 transform 来使用该物品的位置。

如果您有 GameObject puckspawn; 定义和填充。

Instantiate(prefab_to_inst,puckspawn.transform.position,puckspawn.transform.rotation);
© www.soinside.com 2019 - 2024. All rights reserved.