Ru/Creating A Fire Particle: Difference between revisions
m (add {{lang}}) |
m (obsolete language category) |
||
(3 intermediate revisions by 3 users not shown) | |||
Line 4: | Line 4: | ||
Эта краткая статья даст Вам понять как создавать партикл огня вот такого типа: | Эта краткая статья даст Вам понять как создавать партикл огня вот такого типа: | ||
:[[ | :[[File:Fire particle.jpg|200px]] | ||
Line 24: | Line 24: | ||
=== Оператор === | === Оператор === | ||
С помощью оператора мы заставим наши партиклы двигаться, | С помощью оператора мы заставим наши партиклы двигаться, иcчезать и т. д. | ||
В табличке операторов добавьте '''movement_basic''' . Эта штукенция определяет базовые движения партикла. | В табличке операторов добавьте '''movement_basic''' . Эта штукенция определяет базовые движения партикла. | ||
Измените '''gravity''' на 0 0 50 . Гравитация направляет огонь в нужную сторону. 0 0 50 направляет его вверх как в реальности. | Измените '''gravity''' на 0 0 50 . Гравитация направляет огонь в нужную сторону. 0 0 50 направляет его вверх как в реальности. | ||
Если установить 0 0 -50 то огонь будет направлен вниз. Далее добавьте '''Oscillate_Vector'''. | Если установить 0 0 -50 то огонь будет направлен вниз. Далее добавьте '''Oscillate_Vector'''. | ||
Этот оператор поможет создать "волновой | Этот оператор поможет создать "волновой эффект" (wavy fire effect). | ||
Этот эффект поможет придать реализма и живости огню, а не чтобы он стоял статичным и не двигался. Примерно вот такую функцию колебаний мы будем использовать: | Этот эффект поможет придать реализма и живости огню, а не чтобы он стоял статичным и не двигался. Примерно вот такую функцию колебаний мы будем использовать: | ||
Line 35: | Line 35: | ||
В '''Oscillate_Vector''' возле '''oscillation rate min''' измените значение на -0.400000006 -0.400000006 0 и '''oscillation rate max''' на 0.400000006 0.400000006 0 . | В '''Oscillate_Vector''' возле '''oscillation rate min''' измените значение на -0.400000006 -0.400000006 0 и '''oscillation rate max''' на 0.400000006 0.400000006 0 . | ||
Измените '''oscillation frequency min''' на 0.5 0.5 1 , далее '''oscillation frequency max''' на 1 1 0 . С этим закончили. | Измените '''oscillation frequency min''' на 0.5 0.5 1 , далее '''oscillation frequency max''' на 1 1 0 . С этим закончили. | ||
Добавим '''Lifespan Decay''' этот оператор поможет уничтожить (чтобы он плавно | Добавим '''Lifespan Decay''' этот оператор поможет уничтожить (чтобы он плавно исчез) партикл после некоторого времени. | ||
давайте сделаем "затухания партикла" (альфы). Добавляем '''Alpha_Fade_In_Random''' в нем изменяем '''fade in time min''' на 0.3000000119 | давайте сделаем "затухания партикла" (альфы). Добавляем '''Alpha_Fade_In_Random''' в нем изменяем '''fade in time min''' на 0.3000000119 | ||
и '''fade in time max''' на 0.400000006 . Теперь добавим '''Alpha_Fade_Out_Random''' и измените в нем '''fade out time min''' на 0.349999994 и '''fade out time max''' на 0.5 | и '''fade in time max''' на 0.400000006 . Теперь добавим '''Alpha_Fade_Out_Random''' и измените в нем '''fade out time min''' на 0.349999994 и '''fade out time max''' на 0.5 | ||
С операторами закончили. | С операторами закончили. | ||
=== Инициализаторы === | === Инициализаторы === | ||
Line 65: | Line 64: | ||
На этом всё. На этом примере можно сделать много похожих партиклов. | На этом всё. На этом примере можно сделать много похожих партиклов. | ||
{{ACategory|Particle System}} | |||
{{ACategory|Tutorials}} | |||
[[Category:Russian]] | [[Category:Russian]] |
Latest revision as of 03:43, 22 August 2024
Обзор
Эта краткая статья даст Вам понять как создавать партикл огня вот такого типа:
Базовые свойства
Создайте новую партикл систему и назовите её. Мы должны определится с главными свойствами партикла. В главной таблице партиклов нажмите properties (свойства). Измените максимальное количество партиклов (max_particles) на 40. Теперь выберите material, нажмите ... и в браузере выберите текстуру. Для примера пусть будет particle\fire_particle_4\fire_particle_4.vmt Установим bounding_box_min на -512 -512 -512 и bounding_box_max на 512 512 512 Измените color на оранжевый. В этих настройках мы закончили. Переключаемся на рендеринг (табличка render ).
Рендер
Всем партиклам нужна какая-то визуализация. Мы же это будем делать с помощью рендера render_animated_sprites. Создайте и внутри его измените значение animation_rate на 0.8999999762 и измените animation_fit_lifetime на 1. Рендер настроили. Теперь нажмите на таблице operator.
Оператор
С помощью оператора мы заставим наши партиклы двигаться, иcчезать и т. д. В табличке операторов добавьте movement_basic . Эта штукенция определяет базовые движения партикла. Измените gravity на 0 0 50 . Гравитация направляет огонь в нужную сторону. 0 0 50 направляет его вверх как в реальности. Если установить 0 0 -50 то огонь будет направлен вниз. Далее добавьте Oscillate_Vector. Этот оператор поможет создать "волновой эффект" (wavy fire effect). Этот эффект поможет придать реализма и живости огню, а не чтобы он стоял статичным и не двигался. Примерно вот такую функцию колебаний мы будем использовать:
В Oscillate_Vector возле oscillation rate min измените значение на -0.400000006 -0.400000006 0 и oscillation rate max на 0.400000006 0.400000006 0 . Измените oscillation frequency min на 0.5 0.5 1 , далее oscillation frequency max на 1 1 0 . С этим закончили. Добавим Lifespan Decay этот оператор поможет уничтожить (чтобы он плавно исчез) партикл после некоторого времени. давайте сделаем "затухания партикла" (альфы). Добавляем Alpha_Fade_In_Random в нем изменяем fade in time min на 0.3000000119 и fade in time max на 0.400000006 . Теперь добавим Alpha_Fade_Out_Random и измените в нем fade out time min на 0.349999994 и fade out time max на 0.5 С операторами закончили.
Инициализаторы
Добавим инициализатор для установки начального состояния партикла. Добавьте Radius Random и установите radius_min на 3 и radius_max на 10 . Это сымитирует партикл с заданным радиусом. Если хотите больший огонь, то установите radius_max на 50. Далее добавьте Alpha Random, установите alpha_min на 120 и alpha_max на 200. Добавьте Rotation Random ничего не изменяя. Добавьте Position Within Sphere Random , установите distance_bias на 1 1 0 и speed_max на 10. Установите speed_in_local_coordinate_system_min и speed_in_local_coordinate_system_max на 0 0 5 . Это спавнит партикл в заданной сфере и с заданной скоростью. Добавьте Lifetime Random и измените lifetime_max на 1.25 и lifetime_min на 1 . Это установить в партикле время жизни партиклов рандомно в пределах этих цифр. Добавим Sequence Random и установите sequence_max и min на 2 Теперь добавляем osition Modify Offset Random и установим offset in local space 0/1 на 1. С инициализацией закончили.
Излучатели
Теперь последнее действие это добавление главной функции, которая оживит наш огонь. Добавьте emit_continuously и теперь наш огонь зажжется в окне превью!) Измените emission_rate на 50.
Заключение
На этом всё. На этом примере можно сделать много похожих партиклов.