Тёмный
No video :(

Grass Particles Shader, brief explanation, free download - Godot 4 

Pixezy
Подписаться 2 тыс.
Просмотров 1,3 тыс.
50% 1

Since godot 4.3 has huge improvements in particle shaders and I have found a solution to project (correctly) the grass on a surface based on the work of the author of Terrain3D plugin and I want to do other tutorials that require grass. I decided to make a brief explanation of how my shader works and share it for free on my patreon.
Several grass systems do the transformations inside the spatial shader. The ones that use meshinstance and the ones that use particles as well. They rotate and apply squash and strech to each instance of the grass. In the case of my shader it is not like that, it uses the direct transformation of the particle and only does rotations. It does use the spatial shader but only to apply color and noise to each particle. I prefer my solution because I like it and because I made it 😁 and it is the one I will use in next tutorials.
⚠️This explanation is not for beginners. I think if someone is brand new to shaders it might cause some frustration. But if you have already seen some of my tutorials, you may find it easier to understand.
If you feel lost here is a list of my tutorials, where I explain more in depth the topics covered in this tutorial.:
Wall of particles: • Wall of particles shad...
Hologram Shader: • Hologram Shader - Godot 4
Random and noise: • GODOT Shaders for NOOB...
The grid: • GODOT Shaders for NOOB...
DOWNLOAD FREE
/ grass-particle-99113042
HASHTAGS:
#godot4 #godot #shader #vfx

Опубликовано:

 

24 авг 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 13   
@Zuap
@Zuap 2 месяца назад
Found your channel recently: great job love the content! Have been working with MultiMesh for grass on my projects, never gave particles a chance (always assumed it would be more complex or less performative), but love your results. Gave it a try on a demo project and worked like a charm moving from one project to other, the visual result is awesome and the FPS impact don't seem different than a MultiMesh, in fact is looks better than some I tested in the past. Great job, and great learning material. Auto placing/projecting on an irregular terrain is the next step to be perfect. With a MultiMesh it is easy, with Particles never explored, but worth a try. Great work (and great initiative to share), will keep following.
@Marandal
@Marandal 4 месяца назад
This is impressive. thank you for showing us the way ❤
@nue_hazel
@nue_hazel 3 месяца назад
how to import this project to other project ? i really want try this grass in my project.
@pixezy8962
@pixezy8962 3 месяца назад
I don't know, this is not a plugin, so I think u have to copy the files manually.
@John-bg5gu
@John-bg5gu 6 месяцев назад
Thank you very much, it's def something I would need 😊 Subscribed. I am very new too Godot. Is there any tips on how to make this grass interract with characters/vehicles? 😊
@pixezy8962
@pixezy8962 6 месяцев назад
I think it's a matter of passing one or more positions (an array) of vec3 to the shader and then applying opposite rotation to each particle in relation to these positions. I might implement it later
@John-bg5gu
@John-bg5gu 6 месяцев назад
@@pixezy8962 thank you very much for the tip! I will try later too 😊
@Mrtargi
@Mrtargi 5 месяцев назад
Looks amazing!!! Can you explain why are you using Gpu particles for grass instead multimesh?
@pixezy8962
@pixezy8962 5 месяцев назад
It's difficult to answer, I have based my solution on two different projects, one using particles and the other using multi-mesh. The differences between multi-mesh and particles are very subtle, as both are optimized to render thousands of instances very efficiently. The main reason is personal, as I am much more comfortable with GLSL than Gdscript. With particles I hardly have to use Gdscript at all, and in the multi-mesh version it was hundreds of lines of code in Gdscript. Next, you can't animate instances in gdscript because it's very inefficient to traverse the entire instance array in each frame. You have to offload all the animation to the GPU, which means you have to pass it to the spatial shader. The particle shader has a default transformation matrix and you can manipulate it without worrying about performance since everything is running on the GPU and you have also the spatial shader to do transformations per vertex if you need to. In my case the rotations were enough. So there is no definitive answer, I used GPU particles because I love shaders.
@Mrtargi
@Mrtargi 5 месяцев назад
@@pixezy8962 thank you for the answer! It make sense, I've created a grass using vertex shader and interaction with the player and asdigned it to multimesh, but even the small patch of the grass is ruining FPS significantly
@OgrandeJunio14
@OgrandeJunio14 5 месяцев назад
Vídeo top!!!! parabéns.
@TheLastPhoen1x
@TheLastPhoen1x Месяц назад
Any performance gains over MultiMesh?
@pixezy8962
@pixezy8962 Месяц назад
Not really in this case. MultiMesh and particles are both handled by the GPU. The only difference might be a little lag at the beginning in the case of MultiMesh as it requires a cycle in GDScript to position the instances.
Далее
Godot: Hexagonal sphere v1
9:56
Просмотров 1,5 тыс.
Simple Flower Syrup @SpicyMoustache
00:32
Просмотров 2,4 млн
Godot 4 Post Processing: 3D Pixel Art Shader
9:48
Просмотров 62 тыс.
Now anyone can simulate flow for a 3D printer duct
11:17
DEMO Godot shader: Hologram
1:26
Просмотров 845
Learn GODOT 4 Compute Shaders with RAYTRACING!!
12:40
Volumetric Parallax Ice Shader in Godot
12:01
Просмотров 2,7 тыс.
What I Did To Optimize My Game's Grass
8:13
Просмотров 129 тыс.