【问题标题】:Unity: avatar creationUnity:头像创建
【发布时间】:2014-01-27 11:36:32
【问题描述】:

我正在 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);
}

【问题讨论】:

    标签: c# unity3d avatar


    【解决方案1】:

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

    void SpawnWeapon()
    {
        GameObject newObject = Instantiate(equipItem, hat.transform.position, hat.transform.rotation) as GameObject;
        newObject.transform.parent = hat.transform;
    }
    

    这与将新对象拖到检查器层次结构窗口中的另一个对象上相同,从而导致它继承对父对象所做的所有转换

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多