Горизонт частиц
- 1 year ago
- 0
- 0
Систе́ма части́ц — используемый в компьютерной графике способ представления объектов, не имеющих чётких геометрических границ (различные облака, туманности, взрывы, струи пара, шлейфы от ракет, дым, снег, дождь и т. п.). Системы частиц могут быть реализованы как в двумерной, так и в трёхмерной графике .
Система частиц состоит из определённого (фиксированного или произвольного) количества частиц. Математически каждая частица представляется как материальная точка с дополнительными атрибутами, такими как внешний вид, скорость, ориентация в пространстве, угловая скорость, и т. п. В ходе работы программы каждая частица изменяет своё состояние по определённому, общему для всех частиц системы, закону. Например, частица может подвергаться воздействию гравитации, менять размер, цвет, скорость и так далее, и, после проведения всех расчётов, частица визуализируется. Частица может быть визуализирована точкой, треугольником, спрайтом , или даже полноценной трёхмерной моделью. При моделировании физики жидкостей часто используются метасферы , которые "сливаются" между собой.
В настоящее время (2024) не существует общепринятой реализации систем частиц. В разных играх и программах 3D моделирования свойства, поведение и внешний вид частиц могут принципиально отличаться.
В большинстве реализаций, новые частицы испускаются так называемым «эмиттером». Эмиттером может быть точка, тогда новые частицы будут возникать в одном месте. Так можно смоделировать, например, взрыв: эмиттером будет его центр. Эмиттером может быть отрезок прямой или плоскость: например частицы дождя или снега должны возникать на высоко расположенной горизонтальной плоскости. Эмиттером может быть и произвольный геометрический объект: в этом случае новые частицы будут возникать на всей его поверхности.
На протяжении жизни частица редко остаётся в покое. Частицы могут двигаться, вращаться, менять свой цвет и/или прозрачность, и сталкиваться с трёхмерными объектами. Часто у частиц задана максимальная продолжительность жизни, по истечении которого частица исчезает.
В трёхмерных приложениях реального времени (например в компьютерных играх) обычно считается, что частицы не отбрасывают тени друг на друга, а также на окружающую геометрию, и что они не поглощают, а излучают свет. Без этих упрощений обсчёт системы частиц будет требовать больше ресурсов: в случае с поглощением света потребуется сортировать частицы по удалённости от камеры, а в случае с тенями каждую частицу придётся рисовать несколько раз.
К частицам могут быть применены пространственные деформации: силовые поля, которые могут изменять вектор движения, скорости и другие параметры частиц. Примеры таких деформаций — ветер , гравитация , ударная волна , хотя все они являются иллюзиями. Пространственные деформации имеют визуальное представление только в программе для их редактирования, но они изменяют параметры управляемых ими частиц.
Простые системы частиц применяются практически во всех современных компьютерных играх и пакетах 3D моделирования. Система может быть очень сложной и применяться не только в графике, но и в научных расчётах: например, с помощью учитывающей законы физики системы частиц можно смоделировать поведение молекул газа.