Yep
Yep
  • 158
  • 24 099
Downloadable RigidBody2D and Area2D Playground for Godot 4 !
Hey everyone !
Thought I'd share what was initially a small learning tool I made for myself, to figure out and test how RigidBody2D and Area2D behave in Godot 4, and became this kinda fun "playground".
Each shell is a RigidBody2D with distinct properties and you can add Area2Ds to the scene with a menu, which affect some areas' gravity or velocity damping (antigrav pad, black hole, pool....)
You can also apply forces and impulses to the shells with your keyboard or by clicking the controls on screen, or drag'n'throw individual shells
If you want to tweak this, all the code is available here:
github.com/EvilYep/Godot-RigidBodies
And here's a link to an exported version if you just wanna quickly test :
github.com/EvilYep/Godot-RigidBodies/blob/main/Export/Rigid%20Bodies.exe
Enjoy !
(If you're interested I can make a longer videos detailing how everything works "under the hood", it's quite simple)
มุมมอง: 443

วีดีโอ

Sprite Color Variation in Godot 4 with a simple shader
มุมมอง 3.2Kปีที่แล้ว
Hi ! Here's how you can color some sub-regions of a sprite dynamically in code with a simple shader material in Godot 4 Always looking for improvements, if you can suggest some leave them in the comments ! Hope you enjoy ! Happy coding !
Sea of Thieves - Punching rowboats in the air
มุมมอง 15ปีที่แล้ว
The power of a 10 Strength gem
Sea of Thieves - Whoooops..... then BOOM !
มุมมอง 10ปีที่แล้ว
Totally surprised me here...
Sea of Thieves - Megalodon vs. Sloop
มุมมอง 7ปีที่แล้ว
A brutal Meg....
Sea of Thieves - Farming Ancient Skeletons on Community Day
มุมมอง 17K2 ปีที่แล้ว
Well that was a good Community Day ! I guess Tribute Peak raising the probabilities of them spawning might not be a legend after all..... (got a couple more but forgot to record them) Music Credit : 331Erock - th-cam.com/video/lEHIwxGA17Y/w-d-xo.html
Sea of Thieves - The Flying Sloop
มุมมอง 82 ปีที่แล้ว
Guess that sloop was made of rubber
Sea of Thieves - Deadly Explanations
มุมมอง 82 ปีที่แล้ว
Sea of Thieves - Deadly Explanations
Sea of Thieves - The invincible chicken
มุมมอง 162 ปีที่แล้ว
Sea of Thieves - The invincible chicken
Sea of Thieves - My wheel is drunk !
มุมมอง 82 ปีที่แล้ว
Sea of Thieves - My wheel is drunk !
Sea of Thieves - The season 7 experience
มุมมอง 132 ปีที่แล้ว
Sea of Thieves - The season 7 experience
Sea of Thieves - My ship doesn't want me aboard
มุมมอง 62 ปีที่แล้ว
Sea of Thieves - My ship doesn't want me aboard
Sea of Thieves - The Flying Reaper Flag
มุมมอง 82 ปีที่แล้ว
Sea of Thieves - The Flying Reaper Flag
Sea of Thieves - Pinball Dock
มุมมอง 222 ปีที่แล้ว
Sea of Thieves - Pinball Dock
Overwatch - Hanamura (attack) Speedrun - Symmetra Gameplay
มุมมอง 83 ปีที่แล้ว
Overwatch - Hanamura (attack) Speedrun - Symmetra Gameplay
Overwatch : quelques temps forts avec Symmetra (HD)
มุมมอง 27 ปีที่แล้ว
Overwatch : quelques temps forts avec Symmetra (HD)

ความคิดเห็น

  • @BrandonfromStLouis
    @BrandonfromStLouis 20 วันที่ผ่านมา

    Anyone who is interested in dropping the 'if' statement can instead use the following to accomplish the same thing but with a branchless programming condition instead: shader_type canvas_item; uniform vec4 target_color : source_color; void fragment(){ vec4 current_color = texture(TEXTURE, UV); float get_green = step(current_color.r + current_color.b, current_color.g); COLOR.rgb = mix(current_color.rgb, target_color.rgb * current_color.g, get_green); }

  • @KazoWAR
    @KazoWAR หลายเดือนก่อน

    when i try to do this, changing the color of one node effects them all. what do i have to do the make it only effect one node at a time?

    • @_yep_
      @_yep_ หลายเดือนก่อน

      Hi ! I haven't used Godot in a while so I'm not sure how to do it, but your issue must be that you have only one instance of that node, and you duplicate it. You need to instanciate several different nodes. Here's the code if you need : github.com/EvilYep/Godot-RigidBodies/tree/main/ShaderDemo

  • @Toxic_Trash_0706
    @Toxic_Trash_0706 3 หลายเดือนก่อน

    I've looking for this specific tutorial

  • @VaunaKiller
    @VaunaKiller 3 หลายเดือนก่อน

    In case you want change multile colors - DeveloperEzra channel has "How I Made Palette Pixel Shader From Scratch in Godot" video on that

  • @VaunaKiller
    @VaunaKiller 3 หลายเดือนก่อน

    To avoid using "if" statement: I though maybe we can just replace it with equivalent in math operation. E.g. instead of "skipping" operation alltogether, we could ensure that "undersired" colors aren't affected. ChatGPT suggested the following code (I haven't tested it yet, but the gist of it looks alright): """ uniform vec4 new_color; uniform sampler2D TEXTURE; in vec2 UV; out vec4 COLOR; void fragment() { vec4 current_color = texture(TEXTURE, UV); vec3 condition = vec3(equal(current_color.rgb, vec3(0.0, current_color.g, 1.0))); float factor = step(0.0, current_color.g) * condition.r * condition.b * condition.g; COLOR.rgb = mix(current_color.rgb, new_color.rgb * current_color.g, factor); COLOR.a = current_color.a; } """ And the explanation: - `condition` checks if the current_color matches the criteria (0, current_color.g, 1). - `factor` is 1 if the `condition` is met and current_color.g is greater than 0, otherwise it is 0. - mix function blends current_color.rgb and new_color.rgb * current_color.g based on `factor` Not sure if that will boost the perf or degrade it though

    • @DrZ_5000
      @DrZ_5000 3 หลายเดือนก่อน

      if you want to dive deeper into this topic: It's called "branchless programming". Basically avoid if statements, since they use instruction prefetch at assembly code level. That may lead to less performant code (since lots of operations are actually never executed after prefetched by the CPU/GPU, in case the condition is false).

    • @VaunaKiller
      @VaunaKiller 3 หลายเดือนก่อน

      @@DrZ_5000 hey! Yeah, I'm aware of the concept, but thanks nonetheless ! :) Maybe someone else would stumble upon it here. To add to the topic: branchless programming is also relevant even in interpreted languaes / JIT (e.g. it does make sense both in Javascript and Java/JVM apps), since it allows interpreter (or compiler) to generate less branches -> that in turns leads to additional optimizations too.

  • @pros_0143
    @pros_0143 4 หลายเดือนก่อน

    y'really have to dig up on youtube to find straightforward tutorials like these.

  • @Singleraxis
    @Singleraxis 6 หลายเดือนก่อน

    Thank u very much, this is a quality of life change. Was initially trying to make different sprites for each type of color. The real tough work is converting all the sprite indexes to any desired RGB value that isn't used.

  • @glassmarble996
    @glassmarble996 8 หลายเดือนก่อน

    hi. links not working

    • @_yep_
      @_yep_ 8 หลายเดือนก่อน

      Hi ! Oh sorry I just saw TH-cam is shortening links in video descriptions... Here it is : github.com/EvilYep/Godot-RigidBodies

  • @DanielTheFox
    @DanielTheFox 8 หลายเดือนก่อน

    Hey there, just wanted to let you know that your tutorial helped me with the color shader in my 2nd game while learning GameDev! 😁👋 Many thanks again for sharing! 👍😎 The game is called "Santa Catch" and is uploaded to Itch. (See link in bio) Unfortunately, TH-cam doesn't let me post links here... ​

  • @DanielTheFox
    @DanielTheFox 9 หลายเดือนก่อน

    Nice tutorial, thanks a lot! :) It was actually a life saver for me while getting color comparison to work in order to replace certain parts of my pixel art sprites dynamically. I ended up using two dummy colors ("full green" and "full red") which I replace dynamically for each instance of an object in my game which I'll publish soonish. Background: Colors are vectors of floats in Godot and comparing floats via '==' is highly unreliable. So after loosing almost 2 days for debugging and trial & error, I ended up using your idea of using a "full green" which omits the rounding errors when dealing with floating point numbers (colors) in Godot's shader language. ;)

    • @_yep_
      @_yep_ 9 หลายเดือนก่อน

      This is so cool !! I'm so glad this actually did help someone ! What kind of game are you working on ? Is it the one on your channel ? Working with floats can be a real pain, yes ^^, especially with a variable type that contains 3 or 4 of them.... I just happened to notice there wasn't anything but green in those colors when working on the sprite, which got me thinking "mmm I wonder if this is intentional, what can I do with that ?". I then fiddled a bit with this until I kinda "found" that trick, shaders are so hard to comprehend sometimes.... I kinda remember there was a "magic" function in Godot that was comparing 2 vectors and was returning true if they were "close enough" but I can't find it any more. Was it in Godot 3 ? Was it only for Vec2 or 3s ? Did I hallucinate this ? A quick search leads to the latter unfortunately, but I found a Stack Overflow thread called "How to compare two colors for similarity/difference" which is fascinating. I guess the Quick-and-Dirtyness of this method might still be a good compromise for game dev, where we always try to optimize and use little tricks like this to save on computation power. The only thing that still bothers me though is that "if" statement. I'm sure there a way to do the exact same thing without it, I just can't wrap my head around that shader logic sometimes, I work in web dev both front and back but this s*** is another level of abstraction from forms and http responses. Can really seem like black Voodoo magic the first time you get to it ^^

  • @ismaildikmen7476
    @ismaildikmen7476 ปีที่แล้ว

    what is the name of this island

    • @_yep_
      @_yep_ ปีที่แล้ว

      Tribute Peak, aka the Shores of Gold, you go there eventually by following the Tall Tales (the "story mode")

  • @eyemjo
    @eyemjo ปีที่แล้ว

    Hey man nice video. Little piece of advice tho - when fishing in that spot at the Shores of Gold, leave one skeleton alive so no others spawn, it works.

  • @eyemjo
    @eyemjo ปีที่แล้ว

    Bro didn’t spend Community Day being a Reaper or tryna grind out like 20 FOTD, he simply chose to fish.

    • @_yep_
      @_yep_ ปีที่แล้ว

      I already did pretty much everything the game had to offer at that time (Reapers vs Athenas PVP wasn't out back then)

  • @user-vsdf82fd9s
    @user-vsdf82fd9s ปีที่แล้ว

    Hello, I'm a foreigner, so I'm not very good at English, so I was having a hard time finding materials related to Godot4, and I'm very happy to find this video. Thank you!

    • @_yep_
      @_yep_ ปีที่แล้ว

      Thank you ! Glad you liked it and I hope this can be useful for you ! ;)

  • @randomjimbitz512
    @randomjimbitz512 ปีที่แล้ว

    I have tried this with a different green sprite and it does nothing... it is added to the sprite, but the shader does not apply ... any help?

    • @_yep_
      @_yep_ ปีที่แล้ว

      Have you checked the RGB values of the "green" of your sprite ? It have to have a R and B value at 0 for the shader to work (though technically you should be able to use any value between r, g and b. You just need to have 2 channels at 0, while the other one will represent the "shadow" of the color)

  • @piousthepious
    @piousthepious ปีที่แล้ว

    This was very cool!

    • @_yep_
      @_yep_ ปีที่แล้ว

      Thanks ! ;)

  • @EvanFirecat
    @EvanFirecat ปีที่แล้ว

    WHAT. I DIDN'T KNOW HOW EASY IT WAS TO GET THEM THERE!??!?! I WISH I DID THAT ON COMMUNITY DAY...

  • @MXedits_1
    @MXedits_1 ปีที่แล้ว

    That's not "Farming", my dude.

    • @_yep_
      @_yep_ ปีที่แล้ว

      ok

    • @mickiemaccamoo
      @mickiemaccamoo 11 หลายเดือนก่อน

      Can't get much closer to farming them.

  • @fawnixdeerest
    @fawnixdeerest ปีที่แล้ว

    #SoTAnniversaryPromo niceeeee

  • @teteu1511
    @teteu1511 ปีที่แล้ว

    My keyboard broke two days before this event so a couldn’t play

  • @mrchunkssot9748
    @mrchunkssot9748 ปีที่แล้ว

    Monkey island music 10

  • @shadowbonnie2763
    @shadowbonnie2763 ปีที่แล้ว

    Releases Is on Xbox game pass Doesn't explain Leaves

  • @michawszoa6386
    @michawszoa6386 ปีที่แล้ว

    Everyone on yt said that you should spend 15 minutes max on island to get ancient skeletons, is that true?

    • @_yep_
      @_yep_ ปีที่แล้ว

      Basically no. From what I understand about Ancient Skellies and what I know about game development, my best guess is to assume every "skeleton spawn" (which usually spawns 2/3 skellies) has an extremely low chance to spawn an ancient one. Of course this probability is just a variable that could be lowered, raised, guaranted or prevented depending on conditions. Same with the SG. Just luck and probabilities

  • @Qubold
    @Qubold 2 ปีที่แล้ว

    I got 1k ancient coins and nobody believes me...

    • @_yep_
      @_yep_ 2 ปีที่แล้ว

      Well I believe you. Before that footage I was playing with friends and we killed 3, that amounts to about 1k in total.... And another friend told me he gathered 5 crews on a fort, taking turns in killing these, and they all got 1 to 2k so....

    • @rmngrnk6752
      @rmngrnk6752 ปีที่แล้ว

      There are 3 tiers ancient skdletons 1st - 100-200 coins, 2nd - 200-500 and 3d - 500-1000 something like that

  • @AbdulHadi-sh4rn
    @AbdulHadi-sh4rn 2 ปีที่แล้ว

    What if ur any emi g5 twitter g5 and 4 people fishing for 2 hours with voyage on

    • @_yep_
      @_yep_ 2 ปีที่แล้ว

      I don't think emissary boosts ancient coins.... The community day multiplier didn't. But yeah, I think being more people could maybe increase the spawn rate

  • @grimmy2313
    @grimmy2313 2 ปีที่แล้ว

    "Ancient Skellys spawn more frequently" they say? I spent many hours with bounty Captain voyages when the Community reached grade five, only got like one, then I wandered the Shores of Gold. Fished, gathered supplies, even did some emotes while waiting and all I got was occasional skeletons, felt like the spawn rate never changed on the 17th while others got coins galore. I'm mad, but I should be laughing at how bad I was at finding Skellys the same way everybody else is at the largest island in the game. 😂

    • @_yep_
      @_yep_ 2 ปีที่แล้ว

      Aaah that's too bad.... A guess an increase on a very small chance is still a very small chance.... It's still RNG. If I were them I would have implemented a kind of "pity-timer" so that everyone could at least get 1 or 2...

    • @Xygon
      @Xygon 2 ปีที่แล้ว

      I noticed very quickly that there are some server requirements that decide whether or not ancient skeletons, dead servers that are ready for a merge don't spawn them according to the wiki. Might be some other parameters as well that decide whether or not they can spawn. Me and my crew didn't get any for an hour or so, switched serves and got one after about 5 min on the first fort we went to

    • @Creeperplays28
      @Creeperplays28 ปีที่แล้ว

      I got none lmaoo, played all day on the shores of gold. My luck is that bad lol.

    • @Xygon
      @Xygon ปีที่แล้ว

      @@Creeperplays28 My crew noticed quickly that some servers simply didn't spawn ancient skeletons, maybe you were in a "dead" server

    • @Creeperplays28
      @Creeperplays28 ปีที่แล้ว

      @@Xygon oh well that could explain alot i have around 800hours and in my time never got any...

  • @radu5112
    @radu5112 2 ปีที่แล้ว

    I got 14 on shores of gold in 6 hours

    • @steelemerald300
      @steelemerald300 2 ปีที่แล้ว

      Got a job bozo

    • @_yep_
      @_yep_ 2 ปีที่แล้ว

      GG !

    • @ShanyeSoT
      @ShanyeSoT ปีที่แล้ว

      @@steelemerald300 hilarious

  • @blue_scarlettv9960
    @blue_scarlettv9960 2 ปีที่แล้ว

    What island is this?

    • @_yep_
      @_yep_ 2 ปีที่แล้ว

      It's Tribute Peak, in the Shores of Gold (you can only access there by doing the Tall Tales)

  • @Xygon
    @Xygon 2 ปีที่แล้ว

    Good stuff! How long did you spend on the island for these spawns? (trying to gather info)

    • @_yep_
      @_yep_ 2 ปีที่แล้ว

      About 3 or 4 hours I'd say

  • @ghxst1111
    @ghxst1111 2 ปีที่แล้ว

    Do you have to do this entire thing in 1 session?

    • @_yep_
      @_yep_ 2 ปีที่แล้ว

      Unfortunately yes.... But if you start at Ashen Reaches and finish at Smuggler's it'll be much faster

    • @ghxst1111
      @ghxst1111 2 ปีที่แล้ว

      @@_yep_ I'm currently doing it with scuttling my ship lmao I started at ancient spire went to ashen reaches and I'm making my way to smugglers bay by scuttling 💀

  •  2 ปีที่แล้ว

    7:50 Old Faithful Island 18:30 Smugglers' Bay 31:00 Wanderer's Refuge 44:07 Kraken's Fall 01:22:05 Ashen Reaches

    • @metalheadfan666
      @metalheadfan666 2 ปีที่แล้ว

      God thank you the discord sucked at telling people how to do this ty

    • @HonestAuntyElle
      @HonestAuntyElle 2 ปีที่แล้ว

      ​@@metalheadfan666 the discord was making quick documentation, so people could follow in their footsteps **whilst** racing each other for first. I've since tried to make a small text guide to fit within a couple of posts, but discords text limit is painful. if you want something better edited, rarethief have their draft guide out.

    • @_yep_
      @_yep_ 2 ปีที่แล้ว

      @@HonestAuntyElle Yeah that's why I finished by Ashen Reaches... We didn't have the answer yet ! Thank you and everyone on the discord ! Couldn't have done anything without you people !

  • @blitzy7961
    @blitzy7961 2 ปีที่แล้ว

    Thanks

  • @volkrym6130
    @volkrym6130 2 ปีที่แล้ว

    gg!