# smoothstep

Returns a smooth Hermite interpolation between 0 and 1, if *x* is in the range [*min*, *max*].

ret smoothstep(min, max, x) |
---|

## Parameters

Item | Description |
---|---|

min |
[in] The minimum range of the x parameter. |

max |
[in] The maximum range of the x parameter. |

x |
[in] The specified value to be interpolated. |

## Return Value

Returns 0 if *x* is less than *min*; 1 if *x* is greater than *max*; otherwise, a value between 0 and 1 if *x* is in the range [*min*, *max*].

## Remarks

Use the **smoothstep** HLSL intrinsic function to create a smooth transition between two values. For example, you can use this function to blend two colors smoothly.

## Type Description

Name | Template Type |
Component Type |
Size |
---|---|---|---|

x |
scalar, vector, or matrix |
float |
any |

min |
same as input x |
float |
same dimension(s) as input x |

max |
same as input x |
float |
same dimension(s) as input x |

ret |
same as input x |
float |
same dimension(s) as input x |

## Minimum Shader Model

This function is supported in the following shader models.

Shader Model | Supported |
---|---|

Shader Model 2 (DirectX HLSL) and higher shader models | yes |

Shader Model 1 (DirectX HLSL) | yes (vs_1_1 only) |