"деформирование" изображения на iOS

Я пытаюсь найти способ сделать что-то похожее на это на iOS:

Кто-нибудь знает простой способ сделать это?

1 ответ

Я не знаю, что такое oneliner, но вы можете использовать OpenGL для рендеринга текстурированной сетки с квадратиками, которая имеет одинаковые распределения текстурных координат.

Экзамен сетки 2x2:

{0.0,1.0} {0.33333,1.0} {1.0,1.0}


{0.0,0.33333} {0.33333,0.33333} {1.0,0.33333}


{0.0,0.0} {0.33333,0.0} {1.0,0.0}

Если вы перемещаете общие вершины соседних квадратиков (например, в вашем примере), пока сохраняются текстурные коорды, вы получаете эффект варпа. Для использования OpenGL ES требуется тривиальный вершинный и фрагментарный шейдер, особенно если вы хотите сгладить эффект warp, который линейно интерполируется на квадрат/треугольник в его простой форме.

licensed under cc by-sa 3.0 with attribution.