Balatro motivated me to up my shadergame and now I find the fountain that quenches all my burning question. Searched for a way to inject parameters into shaders in an elegant way and this did it for me.
Super cute! I'd love to see you tackle the five different joker editions as well, especially polychrome (it's so pretty!). Those ones are definitely harder to do though, I know the dev spent a lot of time on them as he's talked about in interviews.
It feels like Balatro has more juice than a grocery store. As for the background shader, the closest I could find was a mixing paint shader on shadertoy, but I haven't looked into it too deeply.
A simple trick to figure out how to make the background shader: Extract it from the game! Simplest way is to just copy the .exe and rename it to .zip first. The background shader is in the resources/shaders directory. It's 52 lines of code.
This goes for any shader in any game Because of how they need to be compiled at run time for every gpu, they are normally packaged in as source code even in AAA games.
holy hell, this was a perfect video to get remotivated. Been needing a nice godot take on this game. easy sub and will enroll in ur juice course at some point!
i'd like to see a tour around the animation aspect of godot the build in functionalities and using some external or custumized assets like character cheets and how to merge and make transitions between the animations, i've been searching content about it, but are not to much good content like yours
Man, what an incredible tutorial! Thank you very much for existing! XD I have a question at 1:00, what kind of value should the variable angle_y/x_max be? Something like 45? What values did you use?
This video is super useful. Godot motivated me to learn how to program. I'm trying to create a card game, so the video is ideal. For now I learned how to create menus and navigate through them. I also learned how to localize languages. I made a button to toggle between English and Spanish, but I don't know how to create a code that allows the selected language to be memorized when closing the application. Another button to reset to default values would also be nice. Could you help me? Thank you very much! :D
I'm sure that someone that is more familiar with shaders will correct me, but the background looks like its using Fractal Brownian Motion together with color change. You can look up how to do that with the Book of Shaders online.
I'm always so happy to see when the Godot community in UA-cam comes up with videos like these, they're so informative and educational but also just so entertaining to me! If you could keep making videos like this as a series or something i'd love it. Thanks for making this!
The game is not compiled or obfuscated, so if you own the game you should be able to open the games lua source code and investigate what is going on with thate background shader
0:28 you HAVE to explain how this shader works. I tried to recreate it for 2 hours and failed miserably, then I tried to look at the source code of the shader and didn't understand anything at all (curse vector math!!!!!)
do you talk about your decision to use buttons for the cards anywhere? i am just getting started in godot and curious what the implications of such a choice would be in my own games.
I'm using buttons because they give me signals to know if we're hovering, clicking, etc and also because they would make supporting gamepad MUCH easier. That being said, you don't need them and you could recreate everything using Area2D for example
Working through this currently for the card game im making, great tips thanks so much for sharing! I'm getting a really weird issue with the "fake 3D" shader... I've got it mostly working using a viewport as per your video, but when rotating all the cards are upside down and stay that way when you leave the card area. Also hovering one card changes the rotation of all cards in hand, but I presume this is due to the way my individual project is set up. I'll need to take another look at everything, but I'd appreciate any thoughts re this!
I fixed the upside down issue, I had the default Angle X/Y Max set to 15 for some reason! It's been a long day... I still can't resolve the entire hand moving on mouse hover though, any help would be greatly appreciated!
The default angles are limited yes but you can change them without any problem. Every cards are moving because by default resources are shared in Godot. You can enable "local to scene" in your material to make sure it's going to be local to each card.
Thanks for this excellent video! I was inspired to give the background shader a shot, and have a pretty close approximation. You're right that it's noise warping. The twist effect for boss fights can be achieved by tweening a spiral + rotation parameter. I may post a detailed breakdown somewhere soon!
Balatro motivated me to up my shadergame and now I find the fountain that quenches all my burning question.
Searched for a way to inject parameters into shaders in an elegant way and this did it for me.
Excellent tutorial. Truck load of information in less than 10 minutes. Score: 10/10. Perfect. Good job.
I didn't realize you could create such amazing effects with so little code. Thank you.
SUMMONING ALGORITHM !
Perfect with this weekend's LD jam :)
Super cute! I'd love to see you tackle the five different joker editions as well, especially polychrome (it's so pretty!). Those ones are definitely harder to do though, I know the dev spent a lot of time on them as he's talked about in interviews.
Oh yeah there are some cool shaders to reproduce, but it's a bit out of my league for now!
@@mrelipteach hoping that acerola tackles it
It feels like Balatro has more juice than a grocery store. As for the background shader, the closest I could find was a mixing paint shader on shadertoy, but I haven't looked into it too deeply.
Love this one, I would love to see more like this. Exploring juicy games out there and reproducing their effects. Soo cool
Thanks! If you have recommendations for games you want me to explore, don't hesitate :)
Wow this is awesome. Would love to see more videos recreating effects from really 'juicy' games in Godot.
really helpful! lots of little details I'd not have thought of replicating.
Glad you liked it :)
Incredible, i definitely like the polish you give to make games stand out, the godot engine is really nice
A simple trick to figure out how to make the background shader: Extract it from the game! Simplest way is to just copy the .exe and rename it to .zip first. The background shader is in the resources/shaders directory. It's 52 lines of code.
This goes for any shader in any game Because of how they need to be compiled at run time for every gpu, they are normally packaged in as source code even in AAA games.
Incredible! Never knew this, thanks for the tip!
The card3D effect example helped me a lot . Thanks
You're welcome!
i was just implementing my own version of the card tilt effect using that same base shader :D crazy how the algorithm just works
Amazing tutorial!!!!! A lot of thanks!!!
holy hell, this was a perfect video to get remotivated. Been needing a nice godot take on this game. easy sub and will enroll in ur juice course at some point!
Welcome aboard!
Pretty neat! AAAAANNNNDDDD I bought your course 🤩
Awesome! Thank you!
Wow, it was a great and useful tutorials!
Glad to hear that!
THIS IS VERY GOOD
awesome thanks for sharing. edit: ha I have already bought and watched your juice course. Keep the juice coming.
Thanks for sharing, def going to use some of this if I make a card game.
Please do!
so good video! hope you could share whole project in video. I love it very much!
This information is GOLD!!!!
i'd like to see a tour around the animation aspect of godot the build in functionalities and using some external or custumized assets like character cheets and how to merge and make transitions between the animations, i've been searching content about it, but are not to much good content like yours
WoOo
thats impressive work
very interesting, will you also try to recreate the spiral from the background?
The card spiral in the intro or something else?
me bookmarking all your videos for when I have I time to dig more into godot: 👁👄👁
Ahhh awesome! Don't hesitate if you have any questions ;)
Great video packed with useful information. Subscribed.
Awesome vid, would love to see some of the backend card handling if you went in to that at all with this project.
I was waiting for the background 🥲
Some people gave intersting suggestions in the comments. You can look for FBM
Eyooo this is too good, you are one of the best godot content creators!
You are the best
Very very cool, learned a lot! Perfect mid level tutorial
Man, what an incredible tutorial! Thank you very much for existing! XD
I have a question at 1:00, what kind of value should the variable angle_y/x_max be? Something like 45? What values did you use?
Great tutorial, many thanks!
Glad you enjoyed it! Thank you for your donation :)
FencerDevLog uploaded a tutorial last month for a 'Warped plasma shader' that's exaclty the background swirling effect.
Thanks, I'll check it out!
As someone currently learning godot, this looks awesome and i cant wait to get to do this sorta stuff myself, once i start a proper project.
Good luck!
Would you make tutorial on foil and holographic effect shader? It is really beautiful but I have no idea how to replicate it.
Really cool! Thank you so much for sharing :) Quick question, where can I download the cards?
You can find them on my itch mreliptik.itch.io/playing-cards-packs-52-cards
@@mrelipteach thank you so much!
these are cool! can i use it for my project
Yes of course!
I nice to share and tech stuff is a lot of work in design. XD
Sir, may I repost your tutorial on a Chinese platform? UA-cam is not available in China.
Love the content! 🤩
Thank you 🙌
Great video!
Glad you enjoyed it
can you make a video talking about arctic eggs? i really want to make a low polly game in godot.
What would you like to see exactlyt? The low poly process?
@@mrelipteach i think recreating the mini game where you fry the eggs would be fun
Great video
4:21 huge missed opportunity to write Balatrecreation
Next time!
This video is super useful. Godot motivated me to learn how to program. I'm trying to create a card game, so the video is ideal. For now I learned how to create menus and navigate through them. I also learned how to localize languages. I made a button to toggle between English and Spanish, but I don't know how to create a code that allows the selected language to be memorized when closing the application.
Another button to reset to default values would also be nice. Could you help me? Thank you very much! :D
The Godot docs is a good ressource to get started: docs.godotengine.org/en/stable/tutorials/io/saving_games.html
I'm sure that someone that is more familiar with shaders will correct me, but the background looks like its using Fractal Brownian Motion together with color change. You can look up how to do that with the Book of Shaders online.
Ah yeah it seems it could be a great match
I'm always so happy to see when the Godot community in UA-cam comes up with videos like these, they're so informative and educational but also just so entertaining to me! If you could keep making videos like this as a series or something i'd love it. Thanks for making this!
you can make a prototype like axie infinity
Hell yeah
The game is not compiled or obfuscated, so if you own the game you should be able to open the games lua source code and investigate what is going on with thate background shader
Yeah totally. Someone made a Godot port of that shader and I think it's available on Godot shaders now
0:28 you HAVE to explain how this shader works. I tried to recreate it for 2 hours and failed miserably, then I tried to look at the source code of the shader and didn't understand anything at all (curse vector math!!!!!)
I think you should look at the math behind perspective calculation, it's not related to Godot
Great work! I would like to use this in my own projects. Could you add a license to your github repository by any chance? Thank you.
Yes, sure, I'm doing it asap
@@mrelipteach Thanks so much!
Wasn't Balatro's source code visable from within the steam release version openly?
Balatro is made with Lua so technically the code is visible yes as there's no mechanism to "hide"
Alternative title: Other people already did most of the work for creating Balatro's effects in Godot!
Oh yeah sorry next time I'll make sure to start by creating my own engine first
@@mrelipteach OS and microprocessor chip instructions too! 😤
do you talk about your decision to use buttons for the cards anywhere? i am just getting started in godot and curious what the implications of such a choice would be in my own games.
I'm using buttons because they give me signals to know if we're hovering, clicking, etc and also because they would make supporting gamepad MUCH easier. That being said, you don't need them and you could recreate everything using Area2D for example
Working through this currently for the card game im making, great tips thanks so much for sharing!
I'm getting a really weird issue with the "fake 3D" shader... I've got it mostly working using a viewport as per your video, but when rotating all the cards are upside down and stay that way when you leave the card area.
Also hovering one card changes the rotation of all cards in hand, but I presume this is due to the way my individual project is set up. I'll need to take another look at everything, but I'd appreciate any thoughts re this!
I fixed the upside down issue, I had the default Angle X/Y Max set to 15 for some reason! It's been a long day...
I still can't resolve the entire hand moving on mouse hover though, any help would be greatly appreciated!
The default angles are limited yes but you can change them without any problem.
Every cards are moving because by default resources are shared in Godot. You can enable "local to scene" in your material to make sure it's going to be local to each card.
@@mrelipteach Thank you so much, that fixed it!
FOR THE ALGORITHM!
@6:09 The shadow under the main deck card is too distracting.
Brilliant
Could you share your editor theme? It looks really neat
I'm using the one from passivestar: github.com/passivestar/godot-minimal-theme
@@mrelipteach Thanks!
Brouhhh... but how did y implement the dragging mechanism ??
You can look at the code. When I click on a card, I move it to the position of the mouse every time the mouse move
@@mrelipteach ok thanks cool #####
Lovely
Mate, this is awesome! Wish you lot of subscribers.
nice content
Thank you! 🙂
Amazing🎉
Sheeeesh
i actually don’t notice these effects because I use Xbox controller to play
Nice godot theme, where do i find it?
I think it's from Passivestar github.com/passivestar/godot-minimal-theme
Nice explanations, do you have a Github link? BTW I bought your Udemy course last year
Yes, it's in the description! Thank you, I hope you enjoyed it :)
Please make youtube in godot with api !!!!!
too bad, I wouldn’t be able to make this in Roblox with just 2D
Algorithm
There is a tut on how to decompile Balatro. ua-cam.com/video/hmnbda6hJVM/v-deo.html
I was hoping to see the card edition effects replicated... too bad. Most of this video boiled down to "I used someone else's shader"
What's the card edition effect? Sorry but this is what gamedev is like most of the time
@@mrelipteach Polychrome / Holo / Foil
make big tutorial how to make your game more juicy
Looks great! Good job 👍
Thank you! Cheers!
sprinkle some nodes
pour some juice 🧃
oh mighty algorithm
i summon you! 🙌
Thanks for this excellent video! I was inspired to give the background shader a shot, and have a pretty close approximation. You're right that it's noise warping. The twist effect for boss fights can be achieved by tweening a spiral + rotation parameter. I may post a detailed breakdown somewhere soon!
Super professionnel, bravo et merci
amazing video man
I was already wondering how some of these things work this is sick!
Glad you liked it!
Better title: “I used premade shaders to create effects from balatro”