- Видео 12
- Просмотров 24 657
DevPoodle
США
Добавлен 15 июн 2019
How to Make a Visor HUD - Using Godot Engine
Hello! This is a tutorial on how to make a visor-like HUD in Godot 4. It's loosely based on Metroid Prime's and Lethal Company's HUD. Here's a link to the git repository containing the project's source code: github.com/DevPoodle/yt-example-projects/tree/main/hud.
Thanks so much for watching!
Chapters:
0:00 Intro
0:44 Setting up a basic scene
2:06 Downloading a first person controller
3:03 Creating the HUD
5:02 Adding curvature to the overlay
6:42 Adding a parallax effect
10:11 Outro
Thanks so much for watching!
Chapters:
0:00 Intro
0:44 Setting up a basic scene
2:06 Downloading a first person controller
3:03 Creating the HUD
5:02 Adding curvature to the overlay
6:42 Adding a parallax effect
10:11 Outro
Просмотров: 213
Видео
How to Make a Snow Particle Effect - Using Godot Engine
Просмотров 1,3 тыс.Месяц назад
Hello! This is a tutorial on how to make a snow fall particle effect in Godot 4. Here's a link to the git repository containing the project's source code: github.com/DevPoodle/yt-example-projects/tree/main/snow_particles. Kenney's Holiday Kit: kenney.nl/assets/holiday-kit. I hope you have a very merry Christmas!
How to Procedurally Generate Terrain - Using Godot Engine
Просмотров 4,4 тыс.Месяц назад
Hello! This is a tutorial on how to procedurally generate 3d terrain in Godot 4. Here's a link to the git repository containing the project's source code: github.com/DevPoodle/yt-example-projects/tree/main/terrain. Thanks for reading the description and thanks for watching the video.💖
Adding Outlines to my 3D Pixel Art Shader - Using Godot Engine
Просмотров 1,7 тыс.2 месяца назад
Hello! This is a followup tutorial on my video about making a 3d pixel art shader (Previous Video: ruclips.net/video/dHbqsr-KjOg/видео.html). In this one, I take the shader we had before and add pixel outlines and highlights to it. Here's a link to the git repository containing the project's source code: github.com/DevPoodle/yt-example-projects/tree/main/3d_pixel_art_effect. Thanks for reading ...
How to Procedurally Generate Meshes - Using Godot Engine
Просмотров 5 тыс.2 месяца назад
Hello! This is a tutorial on how to procedurally generate 3d meshes in Godot 4. Here's a link to the git repository containing the project's source code: github.com/DevPoodle/yt-example-projects/tree/main/procedural_meshes. Thanks for reading the description and thanks for watching the video.💖
Making a 3D Pixel Art Shader Effect - Using Godot Engine
Просмотров 4,2 тыс.3 месяца назад
Hello! This is a tutorial on how to create 3D pixel art effect using Godot 4 shaders. Here's a link to the git repository containing the project's source code: github.com/DevPoodle/yt-example-projects/tree/main/3d_pixel_art_effect. Thanks for reading the description and thanks for watching the video.💖
Making a 3D Outline Effect - Using Godot Engine
Просмотров 2,2 тыс.3 месяца назад
Hi! This is a tutorial showing you how to create a dynamic 3d outline effect using the new Godot compositor and compute shaders. Here's a link to the example project on GitHub: github.com/DevPoodle/yt-example-projects/tree/main/outline_compositor_effect. Thanks for reading this, and thanks a lot for watching the video! I appreciate it. :) Timestamps: 0:00 Scene setup 1:00 Basic script 9:45 Basi...
Making a CRT Shader Effect - Using Godot Engine
Просмотров 5 тыс.4 месяца назад
Hi there! This is a tutorial on how to make a Godot 4 CRT screen effect using shaders. Here's a link to the project shown in the video: github.com/DevPoodle/yt-example-projects/tree/main/crt_screen_effect. Also, this video was heavily inspired by Acerola's video on the CRT effect using in Loop Hero. Here's a link to that excellent video: ruclips.net/video/aWdySZ0BtJs/видео.html. Thanks for read...
metal pipe? Metal Pipe!
Просмотров 1459 месяцев назад
This is my submission to Redline's Monthly Composing Challenge 9. It may or may not include metal pipe sounds.
Pinball Village - Town Music Jam #3 Submission
Просмотров 80Год назад
This is a submission to Town Music Jam #3. I made the music based off of the theme "Pinball City". I hope you enjoy listening to it! :D
Deltarune No-Hit | King Boss Fight
Просмотров 272 года назад
I defeat the king from Deltarune in both main routes without getting hit once. I had no weapon or armor upgrades during the fight. Pacifist: 0:00 Genocide: 2:50
Deltarune No-Hit | Jevil Boss Fight
Просмотров 382 года назад
This is footage of me defeating Jevil from Deltarune in both main routes without getting hit once. I also had no weapon or armor upgrades during the fight. Pacifist: 0:00 Genocide: 3:15
Thanks for the video, I enjoyed it and made a small modification that could be helpful if anyone is misunderstanding the resolution setting in the same way I was. For anyone curious, subdivision depth & width are the number of 'cuts' made, and not the number of faces the surface will be divided into. So for a 'Resolution' setting of 16, you would end up with a 17 * 17 grid where you might expect a 16 * 16 one. To do it the other way I simply subtract 1 from resolution at the following two lines in 'update_mesh()': plane.subdivide_depth = resolution ----> plane.subdivide_depth = resolution - 1 plane.subdivide_width = resolution -----> plane.subdivide_width = resolution - 1
Thank you for making these tutorials
I’m glad you like them 😄
Hello! I hope you find this video helpful. If you have any questions or suggestions, feel free to share them! ❤
10:09 i love the honesty XD thats how so much of learning a new environment feels to me
First shader tutorial that actually worked, thank you!
I think you can just use a control panel node anchored to the screen size instead of a mesh node so you dont have to worry about dimensions
That's a good idea! Using a control would be more flexible for different resolutions.
Thank you so much, you just ended 3 hours of searching for the right resources.
great channel
Is there a way to generate a collision sibling from this mesh?
I saw your other comment about using the HeightMapShape3D, but the update_data_from_image method does not seem to be working (or I am somehow using it incorrectly).
ConcavePolygonShape3D has a method called set_faces that just takes in a Vector3 array of vertices. You may be able to just pass in the vertex array to that method to get the right collision shape, although I haven’t tested it myself yet.
ty💛
Well, i did this on my phone, the 1 step where i was supposed to see the magic happen, the app crashes everytime...
I’ve never used the app version, so unfortunately I’m not sure if there’s any bugs or differences in it. I’d recommend opening an issue on the Godot Github describing the crash, and maybe someone will be able to figure out what’s going on.
I did the 1st part exactly like u did, yet when i try the display wireframe, it shows squares, not triangles. Do u know what could be wrong with it? On a side note, awsome tutorial, this is such a great thing to learn for me, many thanks from me!
I have no idea why it would display squares instead of triangles. It probably depends on which rendering backend your version of Godot is using.
Awesome tutorial, but really showed me I know nothing about math lmao...
I'm just learning Godot Shaders and this is really helpful!
for some reason when i do it with all the same set up, the shader renders the screen really small in the center of the viewport
It might be related to the size of the screen quad. It has to be the same as the resolution in the project settings.
This came up in my feed and I actually need this for an upcoming step in my game, thanks
Why not use a full rect color rect on the canvas layer?
That's another perfectly valid way of applying a shader to the screen. The method I used in the video was just the first that came to mind, although both should work the exact same.
Now we just need a video where you apply this terrain to the procedural sphere from your other video!
I've been thinking about that. I really love seeing procedural planet generation, so I'll probably end up making a video about it eventually.
Not a dev just ran into this on my feed. Good job, I always turn on CRT effects if a game will allow me to and I wish more modern pixel art game devs would take some time to implement a good CRT filter that is tailored to their game.
How would you add collision?
Godot has a HeightMapShape3D collider that you could use for adding collision to the terrain. It looks like it should be fairly easy to pass the height data to it, although I haven't had the time to test it myself.
Sorry it wasn't in a super obvious spot it was pretty simple
thank you man keep up the good work
@devpoodle i appreciate this tutorial, it's helpful to what I'm making. Any chance you know how to have the particles fly up from the ground? Currently it spawns in the air, flies up and looks goofy
@@Blemyz If you want them to start off from the ground, you can move the particle node down to below the floor
@devpoodle thank you! I'm a step closer to making what i want
Awesome work👏 Thanks for the tutorial ❤ You're underrated
Thanks so much!
**SOLVED** see comment below Having some trouble following, i suspect its a difference in the version of GDscript but i'm getting an error in line 23, var surface_array: Array [ ], i've typed along so my code and yours are the same, but i'm getting an error because its expecting a type to be declared for collection after [. My understanding is that GDScript is intuitively typed and that i don't have to declare the type and it will infer the correct data type, but this doesn't seem to be the case in my version. the script will not run and draw the triangle, it also wont if i declare [Array] in the curly braces, but the error message goes away. however, if i input Vector3 the error code changes and throws an issue with PackedInt32Array declared later in the indices variable. do i have to declare [Vector3] on line 23 and later add - as Float - after declaring the indices variable? currently using Godot 4.3.2, full script pasted below @tool extends MeshInstance3D @export var reload := false : set(new_reload): reload = false regenerate_mesh() var array_mesh: ArrayMesh func _ready() -> void: regenerate_mesh() func regenerate_mesh() -> void: if !array_mesh: array_mesh = ArrayMesh.new() mesh = array_mesh array_mesh.clear_surfaces() var surface_array := create_triangle() array_mesh.add_surface_from_arrays(mesh.PRIMITIVE_TRIANGLES, surface_array) func create_triangle() -> Array: var surface_array: Array [] # <-- error! expected type for collection after [ surface_array.resize(Mesh.ARRAY_MAX) var positions := PackedVector3Array() var normals := PackedVector3Array() var indices := PackedInt32Array() positions = [ Vector3 (0, 0, 0), Vector3 (1, 0, 0), Vector3 (1, 0, 1) ] normals = [ Vector3.UP, Vector3.UP, Vector3.UP, ] indices = [ 0, 1, 2 ] surface_array[Mesh.ARRAY_VERTEX] = positions surface_array[Mesh.ARRAY_NORMAL] = normals surface_array[Mesh.ARRAY_INDEX] = indices return surface_array
SOLVED! by getting rid of the square brackets after Array on line 23 the error went away and the triangle draws.
on closer inspection i was actually missing an = operator, which is not missing from the example code. the two lines which parse are both var surface_array: Array and var surface_array: Array = []
can you do a tut on how to make 3d isometric movement with this shader ???
I'll think about it, thanks for the suggestion!
Great video, I'm currently trying to randomly generate low poly asteroids, this will help me a lot
Thank you so much for this tutorial!
Beautiful VFX tutorial! There are so many possibilities just from the points you covered, thank you!
Amazing video! thanks for the explanation. I tried it out, then i was able to comment out the tangent arrays, and nothing happens. So what's the point of having it and where is it used?
@@joebarhouch2742 Good question! For some lighting effects, the tangents are used. I don’t know if the default Godot lights use it, but I wanted to include it just in case someone would need it later. 😊
@devpoodle sweet thanks! please keep the videos coming🙌
Thank you for this nice video. It helps a lot :)
Super informative tutorial! Straight forward and to the point. Thank you.
I’m happy you found it helpful!
Video: How to make Pixel Art effect RUclips when vid was 10 years old: I got you fam! **turns vid to 144p**
I was searching for something like this. You earned yourself a sub dude, keep doing such amazing work!
Thanks!
Beautiful explanation!
I appreciate every single video you post devpoodle. Merry Christmas
Thanks, I really appreciate it! 😊
Merry Christmas and Happy Holidays! I hope you'll all have a wonderful time. If you have any feedback or suggestions, I love hearing them. See you next year! 🎄🎄🎄
This is the stuff I love to see! Subbed. Keep making information like this more accessible!
Fantastic tutorial, thank you so much!
Прикольненько
awesome! thanks
Wow, this was very informative, nicely explained and fun to watch. Thank you very much for the upload. I left a like and a scubscription.
I’m glad you found it helpful! ❤️
man i did everything in the vid but it doesnt works. keep it up tho perfect vid
Great video! Anyone generating their own meshes like this should read up on vertex winding order and back-face culling. Though specifying the normals may render it unnecessary. The Godot docs make a point of mentioning a clockwise winding order so it will probably still come up at some point. It is a universal aspect of meshes so it is always good to know about. There is also an issue with your array mesh generation where you are appending duplicate points. You only need to append 4 new points for the first square. After that it only requires 2 new points for the first row/column and 1 new point to fill out the rest. Alternatively I imagine you could generate 4 new points but only for every other square in a checkerboard pattern. There are a number of ways to skin this cat but the idea is to not duplicate vertices. There would also still be duplicates along the edges of your cube but there is always a point where you have to call it good enough. There are different variants of spherical mesh geometries that people should look up as well - each with their own quirks. You are making a Quad Sphere here. There are also Icospheres and UV Spheres.
Thanks for the insight! I was aware that the plane had some duplicated vertices, but for the sake of making the code clearer, I chose to keep them anyway. I’ll try to make those sorts of choices clearer in future videos. 👍
Awesome!
Great tutorial man!
Thanks so much!
voce pode fazer um de comic? estou tentando criar uma para comic mas não estou sendo efetivo
thanks you made it simple.
Awesome video. Keep up the good work! One tip: You don't need to close the scene and re-open it. Simply press Ctrl+Shift+R or go to the Scene menu and select "Reload Saved Scene" :)
This was a great video! Although I conceptually eventually understood what was going on, it did make my brain hurt when trying to picture, in my mind, how the normal and tangent were facing or how they got calculated. Vectors are just not that intuitive and I think it would be a lot more digestive, if presented with something as simple as an animated arrow, turning around an axis. Several of the vector calculations and why normalizing all the vertices of a cube, makes a sphere, could benefit from a few more words (or an illustration).
Thanks so much for the feedback! I definitely am looking into more ways I can visualize the concepts in my videos, so hopefully I can make some of the math stuff easier to understand in the future.
Good to know! Thanks.