.
.
.
.
Учебник: Раздел / Модуль /
Опубликовано 00 месяц 2026
title
.
.
.
.
Теория
Когда мы пишем random(), кажется, что все случайные значения ведут себя одинаково: число просто появляется в диапазоне. Но для дизайна важен не только диапазон, а то, как часто появляются разные значения внутри него. Одно распределение создаёт ровную россыпь, другое — сгущение около центра, третье — редкие экстремальные выбросы. Это похоже на настройку кисти: сама форма может быть кругом или квадратом, но характер изображения рождается из плотности, повторяемости и вероятности.
Распределение — это правило, которое описывает вероятность результата. Если бросать точку полностью равномерно, каждая позиция получает одинаковый шанс. Если усреднить несколько случайных чисел, значения начнут чаще собираться около середины. Если использовать нормальное распределение, большинство точек окажется рядом с центром, а края станут редкими, но важными акцентами. В креативном коде это позволяет управлять не одним объектом, а целой визуальной статистикой композиции.
Распределение превращает случайность из хаоса в режиссуру: мы не знаем точный результат, но знаем его поведение
В этом уроке мы будем смотреть на распределения как на композиционный инструмент. Равномерная случайность подойдёт для нейтрального фона и честной сетки. Треугольная — для мягкого сжатия к середине. Гауссова — для облаков, скоплений, орбит и живых масс. Взвешенный выбор — для палитры, где один цвет работает как основной, а другой появляется как акцент. Важно, что распределение можно применять не только к координатам: оно управляет размером, цветом, прозрачностью, углом поворота, плотностью рядов и даже выбором формы.
- Равномерное распределение даёт всем значениям одинаковый шанс и хорошо показывает «чистую» случайность.
- Сумма случайностей смещает результат к центру: крайние значения становятся реже.
- Взвешенный выбор позволяет управлять вероятностью цвета, формы или состояния без сложной математики.
Практика: техника
Начнём с равномерного распределения. Здесь каждый круг получает случайное смещение внутри своей ячейки, но сама сетка остаётся центрированной. Такой приём полезен, когда нужно сохранить модульную структуру и добавить ей живости: элементы не разваливаются, потому что случайность ограничена рамкой ячейки.
Равномерное распределение: точки свободно двигаются внутри одинаковых модулей, но композиция остаётся собранной.
Теперь изменим не диапазон, а саму вероятность. Если сложить два случайных числа и разделить результат пополам, значения около середины будут появляться чаще. Это называют треугольным распределением: оно простое, быстрое и очень дизайнерское, потому что мягко собирает элементы вокруг выбранной оси.
Треугольное распределение: средние значения встречаются чаще, поэтому паттерн уплотняется в центральной зоне.
Для ещё более выразительного сгущения используем гауссово распределение. В p5.js для этого есть функция randomGaussian(). Она возвращает значения вокруг среднего: чаще рядом с ним и реже далеко от него. В визуальной системе это похоже на облако, пятно внимания или центр тяжести. Мы не расставляем точки вручную, но задаём им вероятностный портрет.
Гауссово распределение: большинство частиц остаётся около центра, а редкие выбросы создают напряжение по краям.
Вывод и синтаксис
Распределения помогают проектировать случайность не как набор сюрпризов, а как систему. Равномерное распределение подходит для ровной вариативности, треугольное мягко собирает значения около середины, гауссово создаёт плотные облака с редкими выбросами, а взвешенный выбор управляет частотой цветов и форм. В генеративной графике это почти то же самое, что композиционные правила в плакате: где должно быть много, где мало, где ритм, а где акцент.
random(min, max); // равномерное случайное число
(random() + random()) / 2; // простое треугольное распределение
randomGaussian(mean, deviation); // нормальное распределение вокруг среднего
if (random(1) < probability) { ... } // событие с заданной вероятностью
Задание
Координаты — не единственное место, где нужны распределения. Часто важнее решить, какой цвет будет основным, какой станет редким акцентом, а какая форма появится только в особых местах. Для этого подходит взвешенный выбор: мы задаём варианты и их веса, а алгоритм выбирает результат с нужной частотой.
Взвешенный выбор: большинство модулей остаётся спокойным, а яркие формы появляются как акценты.
Финальное задание собирает все идеи в один генеративный постер. Здесь есть гауссовое облако, взвешенная палитра, распределение размера и режимы движения. Попробуй менять настройки так, чтобы получить не просто другую картинку, а другой характер вероятности: более спокойный, более плотный, более резкий или почти орбитальный.
Задание: настрой вероятностный постер, где разные распределения управляют позицией, размером, цветом и движением.
Понравилась статья?
Если есть предложения по улучшению, мы будем рады твоему сообщению
.
.
.
.
Следующий материал
Шумовые текстуры
.
.
.
.