# outWeight

> Sets the outgoing weight for this key. The outgoing weight affects the slope of the curve from this key to the next key.

## Definition

* **Type:** Property
* **Namespace:** [UnityEngine](/engine/6000.0/script-reference/unityengine.md)
* **Assembly:** UnityEngine.CoreModule

```csharp
public float outWeight { get; set; }
```

### Remarks

The weight is a value between 0 and 1. Set [Keyframe.weightedMode](/engine/6000.0/script-reference/unityengine/keyframe/weightedmode.md) to [WeightedMode.Out](/engine/6000.0/script-reference/unityengine/weightedmode/out.md) or [WeightedMode.Both](/engine/6000.0/script-reference/unityengine/weightedmode/both.md) to include weight when calculating the slope of the outgoing curve.

Additional Resources: [Keyframe.inWeight](/engine/6000.0/script-reference/unityengine/keyframe/inweight.md).

### Examples

```csharp
using UnityEngine;

public class KeyFrameWeightExample : MonoBehaviour
{
    AnimationCurve  animCurve = null;

    void Start()
    {
        Keyframe[] ks = new Keyframe[3];

        ks[0] = new Keyframe(0, 0);
        ks[0].weightedMode = WeightedMode.Out;
        ks[0].outWeight = 0.5f;

        ks[1] = new Keyframe(4, 0);
        ks[1].weightedMode = WeightedMode.Out;
        ks[1].outWeight = 0f;    // Zero weight.  The segment will be linear if next keyframe <see cref="UnityEngine.Keyframe.inWeight"></see> is also zero.

        ks[2] = new Keyframe(6, 0);
        ks[2].weightedMode = WeightedMode.Out;
        ks[2].outWeight = 1f / 3f;    // 1/3 is the default weight in <see cref="UnityEngine.WeightedMode.None"></see> weightedMode.

        animCurve = new AnimationCurve(ks);
    }

    void Update()
    {
        if (animCurve != null)
            transform.position = new Vector3(Time.time, animCurve.Evaluate(Time.time), 0);
    }
}
```
