| 41 | } |
| 42 | |
| 43 | float Smoothstep(float value0, float value1, float alpha) |
| 44 | { |
| 45 | alpha = std::clamp(alpha, value0, value1); |
| 46 | |
| 47 | // Scale, bias, and saturate alpha to [0, 1] range. |
| 48 | alpha = std::clamp((alpha - value0) / (value1 - value0), 0.0f, 1.0f); |
| 49 | |
| 50 | // Evaluate polynomial. |
| 51 | return (CUBE(alpha) * (alpha * ((alpha * 6) - 15.0f) + 10.0f)); |
| 52 | } |
| 53 | |
| 54 | float Smoothstep(float alpha) |
| 55 | { |
no outgoing calls
no test coverage detected