Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 统一:化身创造_C#_Unity3d_Avatar - Fatal编程技术网

C# 统一:化身创造

C# 统一:化身创造,c#,unity3d,avatar,C#,Unity3d,Avatar,我正在Unity中制作我自己的头像生成器,我被困在需要实现的几个关键点上 现在,我已经获得了Unity在其Mechanim教程中提供的化身,我给了帽子一个标签,并在该位置实例化了一个对象。这一点只是一个作为子对象附加到模型头部的空游戏对象。但是,在动画播放时,我在使新生成的对象移动并与头部保持在一起时遇到问题。当化身移动时,帽子只是停留在一个静止的位置 如何使帽子与玩家的头部保持一致,并随着动画的旋转而移动和旋转 我的代码非常简单,因为我之前没有尝试做我正在做的事情的经验,即使有人能为我指出如何

我正在Unity中制作我自己的头像生成器,我被困在需要实现的几个关键点上

现在,我已经获得了Unity在其Mechanim教程中提供的化身,我给了帽子一个标签,并在该位置实例化了一个对象。这一点只是一个作为子对象附加到模型头部的空游戏对象。但是,在动画播放时,我在使新生成的对象移动并与头部保持在一起时遇到问题。当化身移动时,帽子只是停留在一个静止的位置

如何使帽子与玩家的头部保持一致,并随着动画的旋转而移动和旋转

我的代码非常简单,因为我之前没有尝试做我正在做的事情的经验,即使有人能为我指出如何在Unity中构建一个化身创建者的正确方向,我也会很感激

我的代码如下:

    public GameObject equipItem;
public GameObject hat;

// Use this for initialization
void Start () 
{
    hat = GameObject.FindGameObjectWithTag("Hat");
}

// Update is called once per frame
void Update () {

}

void OnGUI()
{
    if(GUI.Button(new Rect(0,0, 100, 50), "Equip Item"))
    {
        SpawnWeapon();
    }
}

void SpawnWeapon()
{
    Instantiate(equipItem, hat.transform.position, hat.transform.rotation);
}

您缺少的是使新对象成为您希望它跟随的对象的子对象。这可以在新对象的变换中完成

void SpawnWeapon()
{
    GameObject newObject = Instantiate(equipItem, hat.transform.position, hat.transform.rotation) as GameObject;
    newObject.transform.parent = hat.transform;
}
这与将新对象拖动到“inspectors hierarchy”窗口中的另一个对象上相同,从而使其继承对父对象所做的所有转换