smoothstep()

Плавный переход от 0 к 1 на отрезке [edge0, edge1].

Сигнатураsmoothstep(edge0, edge1, x)

Возвращает 0.0 при x <= edge0, 1.0 при x >= edge1, а между ними — плавную интерполяцию по кубической кривой Эрмита (производные на концах равны нулю). Часто используется для мягких краёв и антиалиасинга масок.

float t = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
float edge = smoothstep(0.4, 0.6, dist); // мягкая граница
← Все записи: Функции шейдеров
Поддержать проект