Введение в частицы
|
Designed and maintained by Lennart Steinke
Перевод - Aidamir Taimasukov
Системы частиц удобны если необходимо анимировать много объектов одного вида. Вместо того, чтобы анимировать отдельно каждый объект, Вы только определяете некоторые правила, которые определяют как эти объекты перемещаются и какой форму принимают.
Использование Частиц в играх
----------------------------
Если Вы хотите моделировать фонтаны, фейерверки и динамику газов, Вы столконетсь с очень простыми правилами движения. Вы должны увеличить позицию в зависимости от скорости, скорость в зависимости от силы такой как гравитация, ветер или поле, излучаемым другим объектом в сцене.
Теперь, когда Вы знаете, что это такое, Вы могли бы задаваться вопросом, являются ли они полезными для игр. Сначала Вы могли бы использовать их для пуль (или лазеров, или ракет) в shoot'em играх. В jump'n'run игре, они могли бы использоваться, чтобы моделировать дождь, или рисовать адские камни (Вы помните
"Jumpman"?). Также можно использовать частицы, чтобы создать перемещающиеся звезды в игре научной фантастики. Они могли бы даже использоваться для вражеского перемещения.
Реализация
----------
Я предлагаю использовать связанный список, чтобы сохранить данные для каждой частицы, так как это позволит Вам добавлять новые частицы, когда Вы хотите (что является важным для примера фейерверка, который я буду придумывать). Если вы используете структурный подход, Вы нуждаетесь в структуре, чтобы содержать данные для каждой частицы, подпрограммы инициализации, подпрограммы модификации и подпрограммы рисования. Если Вы используете
OO, замените каждую "подпрограмму" на "метод" и "инициализацию" на "конструктор", и так далее. Выполните это как абстрактный класс, используя виртуальные методы для модификации и рисования, и вы сделаете вашу программерскую жизнь намного больше простой.
Теперь, давайте придумаем данные, в которых мы нуждаемся. Почти всегда нужна позиция и скорость. Срок жизни может быть необходимым, если Вы хотите автоматически уничтожать частицы после некоторого времени. Это могло бы быть удобно для фейерверка и пуль с ограниченным диапазоном действия. Другие вещи, которые Вы могли бы использовать: масса, цвет, и форма.
В заключении
------------
Системы частиц могут сделать вашу жизнь намного менее сложной. Я только поверхностно затронул возможности частиц. Для подробной информаци относительно систем частиц, проверьте некоторые другие страницы сети, описывающие работу с системами частиц.
|
[ главная ] [ Общеигровые статьи на GDsW ] [ DirectX ] [ Статьи по графике ] [ Статьи по AI ] [ Юмор ]
|