【问题标题】:Child not moving with Parent Object子对象不随父对象移动
【发布时间】:2017-05-02 19:21:01
【问题描述】:

我有一个播放器对象,它执行进入汽车的动画,完成此动画后,我正在使用 animationEvent 调用一个函数 SettoParent(),效果很好。

必须将 Player 对象设置为 Car 对象的子对象,这样可以正常工作。

但是当我驾驶汽车时,玩家并没有与汽车一起移动。

函数SetToParent()附加到播放器对象

我使用了以下代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SettingParent : MonoBehaviour {

    public Transform parent;
    public Transform child;

    // Use this for initialization
    void Start () {

    }

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

    }

    public void SetToParent(){

        child.transform.parent = parent.transform;
    }
}

【问题讨论】:

  • 他们有刚体吗?
  • 脚本SettingParent附在哪里?
  • 它们都具有刚体,并且脚本附加到播放器对象。
  • 我在这里看到了一些更正。首先,您的脚本应该附加到您的 FullPlayerObject 以便使用 CameraRig 等移动整个 Player。其次,您的方法 SetToParent() 没有意义。

标签: c# unity3d


【解决方案1】:

childparent 变量已经是transforms,所以你可以如下使用它们 -

public void SetToParent(){
    child.parent = parent;
}

在检查器中将parent 设置为Car 并将child 设置为Player/FullPlayerObject

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    • 2018-12-17
    • 1970-01-01
    相关资源
    最近更新 更多