Pull to refresh

Comments 8

SDF по формулам довольно просты и производительны, но на самом деле для практического проекта вам может быть лучше использовать текстуры с SDF. Благодаря интерполяции из текстуры можно получить значительно большую детализацию, чем разрешение текстуры, это используется в шрифтах на основе SDF.
И текстуры можно просто плавно смешивать и интерполировать в шейдере.
По такой текстуре тоже должны работать SDF, получится плавный морфинг из любой фигуры в любую.
Конечно нужно смотреть на конкретные примеры, потому что морфинг сложных форм может выглядеть странно, но можно получить очень интересные эффекты.

Благодарю за идею с использованием SDF через текстуры. При более сложных формах действительно могут возникнуть артефакты, но можно углубиться в сторону MSDF с текстурами вместо процедурного подхода.

еффект SDF можно и в редакторах настроить например в GIMP, будет минус вызов мсдфген, там еще с мипмапами посмотреть может (это пример можно и забить на эти тайлы и генерить в атлас и оттуда вытягивать )

На тему генерации SDF для растровых изображений была очень обстоятельная статья (см. также обсуждение).

можно и 3д морфать например бурление сферы через нойс, накидать текстур в SRC1_ALPHA и сделать спектральную сферу )

Насколько оправдано использовать OpenGL ES, если новых версий не предвидится, а поддержка Vulkan все шире? Или до более менее существенного применения вулкана еще далеко и можно успеть все переписать? Часто такой такой подход можно встретить в продакшене?

морф тема я морфом делаю волны на шейдере в 3д в шейдере нужен noise,

вводная у Acerola sin wave

Скрытый текст
        float noise = pnoise(vec3(vertexPosition) + time,vec3(35)); 
        float displacement = noise / 10.0; 
        vec3 newPos = vec3(vertexPosition); 
        float j=2*3.1415/20.0; 
        float wave = 0.01*(33*sin(j*(vertexPosition.x-5*time))+(33*cos(j*(vertexPosition.z-5*time)))) ; 
        newPos.y = wave; 
        newPos.y += vertexPosition.y + vNorm.y *displacement; 

Скрытый текст
тут fov просто 80
тут fov просто 80

Sign up to leave a comment.

Articles