Particules dans Godot 3, anti-aliasing de petites particules et système d'empreintes digitales sur les shaders

Utilisation de différentes particules dans Godot 3. Aucun effet de post-traitement.

Liens:

Démarrer WebGL2 et télécharger d' autres versions contiennent un lien vers itch.io .

Code source sur github .

L'article est divisé en sections:

  1. Lissage des petites particules, de différentes manières.

  2. Beaucoup de balles - des particules sans perte de performance. Et une projection 3D dans le shader.

  3. Système de décalcomanies d'espace d'écran.

  4. Autre.


1. Lissage des particules

J'utilise un objet plat 2 ou 4 fois plus grand que les graphiques affichés, les graphiques les plus critiques au centre de la texture ressemblent à ceci, à gauche il est 2 fois plus grand à droite que 4 fois:

Et le noir devient transparent.

L'idée est d'avoir au moins 1 pixel autour de la ligne de base, même aux plus petits angles de rotation et à la distance de l'objet. J'utilise un remplissage 4x sur l'objet le plus éloigné:

Le code du shader de base.shader de la ligne de particules AA comprend trois versions pour les tests - pas de filtrage, avec filtrage procédural utilisant une dFd*fonction et utilisant une texture, ordre de gauche à droite :


2. Projection de particules tridimensionnelles sur un plan

J'utilise la logique d'intersection et de projection dans le shader de fragment.

- 1000 - (GPU) , 1000 - GPU 100%. 1000 ( ) 25% GPU.

-:

, :

particle_cloud_base.shader .

iquilezles.org.


3. Screen space decals

Screen-Space-Decals, :

  1. , .

  2. dacal.

  3. Material-ID Decals .

:

Material-ID:

Godot render-pass, . Viewport :

material-ID (depth). (depth) . , Material-ID Viewport depth:

Viewport overhead, , - Debug ( ) , 0.25 1.


4.

- , , .

, , .

Garden Fireworks - @P_Malin.

- .

- .

- 360 1 , . :

:

Nvidia:

, Vetrex , Vulkan .

:

  1. 3d sketchfab CC-non comercial .

  2. patrickdearteaga.com

  3. MIT license.

Lien vers la liste des ressources utilisées .

Merci d'avoir lu cet article.




All Articles