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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.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# 如何使轨迹渲染器不受unity 3d中z轴运动的影响_C#_Unity3d_Unityscript_Game Development - Fatal编程技术网

C# 如何使轨迹渲染器不受unity 3d中z轴运动的影响

C# 如何使轨迹渲染器不受unity 3d中z轴运动的影响,c#,unity3d,unityscript,game-development,C#,Unity3d,Unityscript,Game Development,我正在制作一个3D游戏,我制作了一个带有轨迹渲染器组件的输入收集器。当存在z动作运动时,拖车渲染器将显示一些向前运动效果 有没有办法使轨迹渲染器仅显示特定的轴运动?我能想到的最好方法是使用轨迹创建一个单独的对象,并在渲染开始之前将其移动到您希望有轨迹的对象的位置,然后在渲染后重设其Z位置。像这样: [RequireComponent(typeof(TrailRenderer))] public class ZLimitedTrail : MonoBehaviour { public Tr

我正在制作一个3D游戏,我制作了一个带有轨迹渲染器组件的输入收集器。当存在z动作运动时,拖车渲染器将显示一些向前运动效果


有没有办法使轨迹渲染器仅显示特定的轴运动?

我能想到的最好方法是使用轨迹创建一个单独的对象,并在渲染开始之前将其移动到您希望有轨迹的对象的位置,然后在渲染后重设其Z位置。像这样:

[RequireComponent(typeof(TrailRenderer))]
public class ZLimitedTrail : MonoBehaviour {
    public Transform target;        

    private void Start() {
        Camera.onPreRender += SetPosition;
        Camera.onPostRender += ResetZPosition;
    }

    private void SetPosition() {
        // move it to where it should show
        this.transform.position = target.position;
    }

    private void ResetZPosition() {
        // reset Z position to 0
        this.transform.position = 
            new Vector3(this.transform.position.x, this.transform.position.y, 0);
    }
}
我还没有测试过,所以让我知道它是否有效