Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

ParticleProcessMaterial 2D Використання

Властивості технологічного матеріалу

Властивості ParticleProcessMaterial

Min, max і властивості кривої

Властивості цього матеріалу визначають, як частинки поводяться та змінюються протягом свого життя. Багато з них мають значення Min, Max і Curve, які дозволяють точніше налаштувати їх поведінку. Відношення між цими значеннями таке: коли частинка породжується, властивість встановлюється випадковим значенням між Min і Max. Якщо Min і Max однакові, значення завжди буде однаковим для кожної частинки. Якщо також встановлено Криву, значення властивості буде помножено на значення кривої в поточній точці часу життя частинки. Використовуйте криву, щоб змінити властивість протягом життя частинки. Таким чином можна виразити дуже складну поведінку.

Примітка

На цій сторінці описано, як використовувати ParticleProcessMaterial конкретно для 2D-сцен. Щоб дізнатися, як використовувати його в 3D-сцені, перегляньте Властивості технологічного матеріалу.

Довічна випадковість

Властивість Lifetime Randomness контролює, наскільки випадковим є час життя кожної частинки. Значення 0 означає, що випадковості взагалі немає, і всі частинки існують однаковий час, встановлений властивістю Lifetime. Значення 1 означає, що час життя частинки є повністю випадковим у діапазоні [0.0, Lifetime].

Прапори частинок

Спаун

Кут

Визначає початковий кут частинки (у градусах). Цей параметр переважно корисний випадковим.

../../_images/paranim11.gif

Швидкість

Напрямок

Це основний напрямок, в якому випромінюються частинки. За замовчуванням Vector3(1, 0, 0), це означає, що частинки випромінюються вправо. Однак, з налаштуванням сили тяжіння за замовчуванням, частинки будуть падати вниз.

../../_images/direction1.png

Щоб ця властивість була помітною, вам потрібна початкова швидкість, більша за 0. Тут ми встановлюємо початкову швидкість до 40. Ви помітите, що частинки випромінюються вправо, а потім опускаються через гравітацію.

../../_images/direction2.png

Розсіювання

Цей параметр – це кут у градусах, який буде випадковим чином додано в будь-якому напрямку до базового Direction. Розкид 180 випромінюватиме в усіх напрямках (+/- 180). Щоб розкид щось зробив, параметр "Початкова швидкість" має бути більше 0.

../../_images/paranim3.gif

Пласкість

Ця властивість корисна лише для 3D-частинок.

Ініціалізувати

Це швидкість, з якою будуть випромінюватися частинки (у пікселях/сек). Пізніше швидкість може бути змінена під дією сили тяжіння або інших прискорень (як описано далі).

../../_images/paranim4.gif

Анімована швидкість

Кутова швидкість

Кутова швидкість - це швидкість, з якою частинки обертаються навколо свого центру (в градусах/сек).

../../_images/paranim5.gif

Орбітальний вид праворуч

Використовується, щоб змусити частинки повертати відносно їх центру.

../../_images/paranim6.gif

Прискорення

Тяжіння

Гравітація, що застосовується до кожної частинки.

../../_images/paranim7.gif

Linear Acceleration (Лінійне прискорення)

Лінійне прискорення, прикладене до кожної частинки.

Radial Acceleration (Радіальне прискорення)

Якщо це прискорення позитивне, частинки прискорюються далеко від центру. Якщо негативне, вони поглинаються ним.

../../_images/paranim8.gif

Tangential Acceleration (Дотичне прискорення)

Це прискорення використовуватиме дотичний вектор до центру. Поєднання з радіальним прискоренням може принести хороші ефекти.

../../_images/paranim9.gif

В’язкість

Застосовує до частинок тертя, змушуючи їх зупинитися. Це особливо корисно для іскор або вибухів, які зазвичай починаються з високою лінійною швидкістю, а потім припиняються в міру згасання.

../../_images/paranim10.gif

Дисплей

Масштаб

Визначає початковий масштаб частинок.

../../_images/paranim12.gif

Кольорові криві

Колір

Використовується для зміни кольору частинок, що виділяються.

Варіація відтінку

Значення Variation задає початкову зміну колірного тону застосованого до кожної частинки. Значення Variation Random визначає коефіцієнт варіації колірного тону випадковістю.

Анімація

Примітка

Анімація фліпбука частинок ефективна, лише якщо CanvasItemMaterial, який використовується у вузлі GPUParticles2D або CPUParticles2D, було configured accordingly.

Щоб налаштувати фліпбук частинок для лінійного відтворення, установіть значення Speed Min і Speed Max на 1:

Налаштування анімації частинок для відтворення протягом життя частинки

Налаштування анімації частинок для відтворення протягом життя частинки

За замовчуванням цикл вимкнено. Якщо частинка закінчила відтворення до закінчення терміну служби, частинка продовжуватиме використовувати останній кадр фліпбука (який може бути повністю прозорим залежно від того, як розроблено текстуру фліпбука). Якщо цикл увімкнено, анімація повертатиметься до першого кадру та продовжуватиме відтворення.

Залежно від того, скільки зображень містить ваш аркуш спрайтів і скільки часу ваша частинка жива, анімація може виглядати неплавно. Зв’язок між часом життя частинки, швидкістю анімації та кількістю зображень на аркуші спрайтів такий:

Примітка

При швидкості анімації 1.0 анімація досягне останнього зображення в послідовності саме тоді, коли закінчується час життя частинки.

\[Анімація\FPS = \frac{Кількість\зображень}{Тривалість}\]

Якщо ви бажаєте, щоб фліпбук частинок використовувався як джерело випадкових текстур частинок для кожної частинки, залиште значення швидкості рівними 0 і замість цього встановіть Offset Max на 1:

Налаштування анімації частинок для випадкового зсуву викидів

Налаштування анімації частинок для випадкового зсуву викидів

Зауважте, що Fixed FPS вузла GPUParticles2D також впливає на відтворення анімації. Для плавного відтворення анімації рекомендується встановити значення 0, щоб частинка моделювалася на кожному відтвореному кадрі. Якщо це не підходить для вашого сценарію використання, установіть Фіксований FPS таким, щоб дорівнювати ефективній частоті кадрів, яку використовує анімація фліпбука (формулу див. вище).

Emission Shapes (Форми Випромінювання)

ParticleProcessMaterials дозволяє встановити маску випромінювання, яка визначає область і напрямок випромінювання частинок. Їх можна створити з текстур у вашому проекті.

Переконайтеся, що встановлено ParticleProcessMaterial і вибрано вузол GPUParticles2D. На панелі інструментів має з’явитися меню «Частинки»:

../../_images/emission_shapes1.webp

Відкрийте його та виберіть "Завантажити маску випромінювання":

../../_images/emission_shapes2.webp

Потім виберіть, яку текстуру ви хочете використовувати як маску:

../../_images/emission_shapes3.webp

З'явиться діалогове вікно з декількома налаштуваннями.

Маска випромінювання

З текстури можна створити три типи масок випромінювання:

  • Залиті пікселі: Частинки виникають з будь-якої області текстури, за винятком прозорих областей.

../../_images/emission_mask_solid.gif
  • Крайні Пікселі: Частинки виникають із зовнішніх країв текстури.

../../_images/emission_mask_border.gif
  • Спрямовані пікселі на межі: подібні до пікселів на межі, але додає додаткову інформацію до маски, щоб частинки могли випромінюватися подалі від меж. Зверніть увагу, що для використання цього потрібно буде встановити Initial Velocity.

../../_images/emission_mask_directed_border.gif

Кольори випромінювання

Capture from Pixel призведе до того, що частинки успадкують колір маски в місцях їх появи.

Після того, як ви натиснете «OK», маска буде згенерована та встановлена на ParticleProcessMaterial у розділі Spawn, а потім Position

../../_images/emission_shapes4.webp

Усі значення в цьому розділі були автоматично згенеровані меню «Завантажити маску випромінювання», тому їх, як правило, не слід змінювати.

Примітка

Зображення не слід додавати безпосередньо до Токової текстури або Текстури кольору. Натомість завжди слід використовувати меню "Завантажити маску випромінювання".

Налаштування технологічного матеріалу

Якщо вам потрібно змінити або реалізувати нові поведінки в коді шейдера, ви можете зробити це, перетворивши поточний ParticleProcessMaterial на class_ShaderMaterial. Існуючі властивості зберігаються в процесі перетворення. Увімкнені функції також впливатимуть на те, що присутнє в перетвореному коді шейдера.

Щоб це зробити, клацніть правою кнопкою миші на матеріалі в доці файлової системи та виберіть Конвертувати в ShaderMaterial. Ви також можете зробити це, клацнувши правою кнопкою миші на будь-якій властивості, яка містить посилання на матеріал, в інспекторі.