Фильтр, не имеющий аналога в ФШ. Название ему дал, вероятно программист(ы), его создавший. Название, опять же вероятно, отражает основное предназначение фильтра — создание текстур, не случайно они прописаны в наборах по умолчанию. Однако мы занимаемся программой Affinity PHOTO (фото здесь ключевое слово) и посему ищем и находим только то, что нам нужно, то есть «фотографическое».
Цитата из Справки: «Фильтр «Процедурная текстура» позволяет выполнять ряд манипуляций с пикселями, используя предопределенные функции и заданные пользователем переменные. По сути, вы можете создавать собственные фильтры с настраиваемыми параметрами.»
Фильтр довольно сложен для простого пользователя, которым являюсь и я, поскольку требует знания ну хотя бы основ программирования.
Цитата из Справки: «Для эффективного использования фильтра необходимо изучить имеющийся в нем ряд основных компонентов, которые будут перечислены ниже». Это (цитирую из мануала): Строки уравнений, Каналы для воздействия, Переменные, Функции.»
Цитата из ответа техподдержки: «Многие процедурные функции текстур являются прямыми отображениями общих математических функций в C / C ++ и т. Д. Поэтому пользователю для эффективного использования фильтра PT потребуются некоторые знания в этой области.»
Пожалуй для одного этого фильтра стоило бы (действительно стоило бы) выпустить отдельное руководство, получилось бы довольно объёмное чтиво, но оно действительно нужно.
«Орешек знаний твёрд, но всё ж мы не привыкли отступать…»
Итак, интерфейс Procedural Texture (после нажатия на + в строке Equations появляется формула-выражение, использованное для выбранного (выбранных) каналов R, G, B, A:

Внизу расположен набор пользовательских переменных разных типов, которые используются в формулах.
Ну всё, давайте попробуем чего-нибудь «сообразить».
Проинвертируем красный канал:

(Если хотите посмотреть только красный канал в ч/б, отключите остальные в палитре Channel)

Примитивный «односторонний миксер каналов» (R*a+G*b+B*c)/3 :

Тут можно пофантазировать и использовать для создания маски (R*a+G*b+B*c)*2-0.5:

Или же использовать фильтр непосредственно как маску:

Сделаем что-то посерьёзней. Например, маску цветовой насыщенности. Для начала порассуждаем, очень нужная, полезная и, я считаю, необходимая процедура. Насыщенность определяется разницей между максимальной и минимальной яркостью в каналах, вычислив эту разность попиксельно max(R,G,B)-min(R,G,B), получим искомый результат, который усилим кривыми ( полученное можно использовать для создания маски цветовой насыщенности):

Или «относительная» маска цветовой насыщенности (max(R,G,B)-min(R,G,B))/min(R,G,B):

Пока мы остановимся на имеющихся достижениях, а напоследок я порекомендую двух человек, достигших больших успехов по использованию Procedural Texture, вернее их достижения.
Andrew Buckle -специалист по текстурам (а вдруг кому-нибудь из «фотографистов» будет интересно)
Dave Straker YouTube канал InAffinity for Affinity Photo — здесь всё исключительно по фото, плюс целый мир макросов, большей частью основанных на Procedural Texture.Рекомендую.
Пока всё.