I wish this channel would pop up at the top of the search results list when new developers search for tutorials. The amount of uninformed, or straight up wrong information on some of the channels is seriously worrisome. Thank you for taking the time to prioritize tutorial efficiency/helpfulness before views and reach. It is much appreciated
I almost fell out of my chair laughing when all the 'Hello's started popping up. I'm also someone who tried Gorka's RPG tutorial a few months back hoping to learn to build an early "learning prototype" for a game I'm currently co-developing, and by the time I got to the end of it, the performance was absolutely lousy and you couldn't build on top of it at all; I was almost afraid to even touch anything because adding anything just made the whole house of cards collapse. Attempting to add the "open world" towards the (at the time) end of the series made things just start breaking spectacularly. Instead of attempting to bug fix it myself, I just cut my time losses, wrote off the entire thing and decided to look elsewhere. It's an absolute shame how difficult it is to find learning resources for Unreal Engine beginners that preach good practices from the start. Glad I finally found a channel that does!
A combination of click bait, short videos (because an easy solution is more appealing to a beginner) rather than an in depth video, gets more views and recommendations, so those bad videos are what the search results bring back.
Ah this was specifically something I was learning about recently. Love to see your video, and love to see the community finally calling out the bad practices rampant in tutorials. I'd love a good straight forward video on best practices for UMG panels. I can't believe how often I see the canvas panel used to wrap everything individually.
Thank you for making us all A Better Game Dev! I love this series of videos ♥ Love the way you explain everything that happens behind the scenes making it all clear and better. Let's keep on learning! 💪
I’ve never made a game before, so I thought I’d bite the bullet and give it a go. One thing I make sure to do is ALWAYS watch and read many different ways to do one thing. Sometimes it’s better to do the harder things even if the outcome is something simple. It gives a better end result, and this video is proves why it’s important to not be lazy
That is ususally the thing in software development. You can build frameworks that take a long time before you start seeing any result of your work at all, but once it is in place, you will be able to develop much faster. Or you can do like these channels do, cut corners every step of the way and have a nightmare of a project with bugs and bad practices that is impossible to finish or even continue development on later on.
I saw that just after I posted. The only issue with it that i have, and that i find most other examples use is that you create a child of an item blueprint for each item, rather then having a data table row update the information.. thoughts? Which would get difficult to manage in games that are larger so i dont think its as scalable@@LeafBranchGames
I didn't need years of experience to see that there was a big problem with what he was "teaching". I think this also represents why so many games on the market are optimized like shit. Love your channel.
Thankyou for this, your tutorials are fantastic. i started my UE5 learning with gorkas RPG series and learnt how it evolves into a maddening spiral of cause and effect with no way to solve any bugs because of how he binds things and casts to things. Granted in his RPG series he makes the HP bar/EXT, correctly however every action in the game is a hard cast to the player, every enemy even its HP bar is dependent of the third person character as well as all actions and movement nothing is independent
Well yes, everything he does is copied from someone else. He doesn't understand how or why things work like they do. So he is geting big of others bad or good work. It is quite bad that that is the kind of knowledge new learners get exposed to, wasting their time learning bad ways and having to do it all over again.
I started learning Unreal Engine the same way, with Gorka Games RPG series tutorials. I stopped following his RPG tutorial series shortly after the climbing episodes. He leaves everything too vague, doesn't focus on the smaller issues that do add up, his way isn't modular or scalable, or his combo system is trash... he never completes any of the mechanics he starts... He started the series pretty well and then it became so basic...
This video is 100%. I have been saying this for years, even mentioning this in videos with bad implementation. Sadly, videos like yours are just a few, and videos with bad binding are everywhere. There are things that are great with binds, for example, ingame hud FPS counter, I can't imagine that without binding.
True on all counts. There are a few, exceedingly rare situations where it makes sense. But unfortunately not how it is being taught or used in tutorials for the vast majority.
@@LeafBranchGames I've been on a crusade in the comments sections of their videos about this very subject. A few have listened, so it's important to spread the knowledge and comment constructively to the teachers.
@@Yggdrasil777 Well, yes and no. The root problem of them teaching bad practices is that they don't understand what or why they are doing what they are doing, because the copied it from someone else. They are not out to teach, they are after views. You may tell them they should not be doing it in this way, then they will copy someone else that oes it better, but they still don't know why. They are still just copying someone else.
Couple of bindings here and there no big deal, but if scaled out to everything it becomes bad practice. Games should be event driven, not many use cases for bindings these days UE should depreciate it. Loving this series of videos keep up the good work.
Great video. If someone is a beginner who wants to optimize the logic, such as through event dispatchers or event center management, similar to the relay mode in the code, this can solve the problem of referencing UI in character classes
Yes, thank you very much for the clarification. For me, as a beginner, everyone actually is more smart than I do. When I watch a TH-cam video on the topic that is rated well and watched a lot, I always assume that I'm learning how to do it right. Now, after this video, I naturally ask myself: Why didn't you find this this kind of binding suspicious yourself? Without the video here, maybe never. So yeah, thank´s a lot!
What you are mentioning here is a core essence that many go through. When we start out and don't have any knowledge to leverage, what we find is what we think is the truth. So if you first encounter a bad tutorial, you will learn all the bad practices and it will maybe take a very long time if ever to find out. At that point you may have spent much time learning things that you will have no use of. It is very problematic.
This is a known issue. Only bad developers (like Gorka) would do this. That's why it annoys me when he shares his videos on UE5 fanpages and no one reviews his posts before accepting.
Gorka is using the bad code, but at least, he is the only guy on this ducking youtube who can spalin anything. You can't make games using his code examples, but you can make quick prototypes and learn some features. What is useful for game designers
@@krzysztofbulicz416 Is it useful for game designers to learn something with the wrong information so that when they try to make use of what the "learned" they don't understand why things are not working as intended? Doesn't sound like very useful for a game designer.
@@LeafBranchGames Designers don't write code. We simply have to find the coolest and most suitable solutions, then write them in a design document for the coders and the rest of the team to execute, conducting the implementation process. For us, it doesn't matter if the prototype code is optimal. Sometimes, instead of using a "progress bar," we are using the piece of paper on a stick. We don't design code logic, that's the responsibility of the lead programmer. Quick prototypes are meant to be just as quick as possible. Spending time on optimizing code is overkill. What matters is the MVP. Thanks to this dirty prototypes, the coders can write clean code. Until the designer came back with some iterations xd
By the way, don't get me wrong, I'm glad to found your channel. It's a great next step after channels like Gorka's, and please continue with your content.
Oh damn! I did NOT know that UI bindings run on tick, but of course they do, how else would they work. lol. Thank you for this! I'm so mad that Epic's own tutorials are why everyone thinks we need to use UI bindings. lol
I am glad to have found this channel. In the 5 videos I've watched so far, you do a great job. I understand what you are explaining, even if TH-cam has to translate it for me. Thank you for your work and you have my subscription. Only 799 to 20,000 subscribers. Good luck for the future. Ich bin froh diesen Kanal gefunden zu haben. In den 5 Videos die ich mir bisher angeschaut habe, machst Du Großartige Arbeit. Ich verstehe was du Erklärst, auch wenn TH-cam es für mich übersetzen muss. Danke für Deine Arbeit und Abo hast Du von mir. Nur noch 799 bis zu 20.000 Abonnenten. Viel Erfolg weiterhin.
Thank you for your kind words and support. I have actually considered createing dubbed versions of some of my videos to reach audiences like you. The reason I have not done it, was because I felt it would be weird if I referred to, for example, a button with a certain text, and the dubbing would not be saying the same word as it is named in the german unreal engine. Do you think that would be an issue or would it be managable?
@@LeafBranchGames You hear it, you see it and yet sometimes you read nonsense. That's why I set UE to English. It's easier, so there's no confusion when naming the node. I can also see visually what the node looks like. Because sometimes they only differ a little, so the different names just get in the way. TH-cam is quite good from English to German, especially if the speaker speaks well. Compliments to you. But sometimes the names are translated and sometimes not, so you can't rely on YT. Visual control is always better. I can't judge what it's like when there's a transcript, because I'm using English (automatically generated) => German under Use subtitles. I cannot judge how it is in other languages. It would be manageable but unnecessary, as you would then be just one of many. I recommend putting the UE5 in English and learning it that way. You're honored that you thought about it, but I don't think it's worth the extra work. In the beginning I would have been happy about it, but since there are many more English tutorials, it makes more sense to switch the UE to English. My German UE channels also have their UE in English. I hope you understood everything and I was able to share my experience with you and help you with your decision. Man hört, sieht es und doch liest man manchmal Stuss. Darum hatte ich UE auf Englisch gestellt. Das ist einfacher, damit entsteht keine Verwirrung bei der Knoten Benennung. Ich kann so auch optisch sehen wie der Knoten aussieht. Denn ab und an unterscheiden sie sich nur ein wenig, da störten die unterschiedlichen Benennungen nur. TH-cam ist recht gut von Englisch ins Deutsche, besonders wenn der Sprecher gut spricht. Kompliment an Dich. Aber Benennungen werden mal übersetzt und dann wieder mal nicht, da kann man sich nicht auf YT verlassen. Da ist die Optische Kontrolle immer besser. Wie es ist, wenn ein Transkript vorliegt, kann ich nicht beurteilen, da ich Englisch (Automatisch erzeugt) => Deutsch bei Untertitel verwenden eingestellt habe. Wie es in anderen Sprachen ist, kann ich nicht beurteilen. Es wäre beherrschbar aber unnötig, da du dann nur einer unter sehr vielen wärst. Ich empfehle die UE5 in Englisch zu stellen und sie auch so zu erlernen. Es ehrt dich das du darüber nachgedacht hast, aber ich finde es die Mehrarbeit nicht wert. Am Anfang wäre ich darüber Froh gewesen, aber da es viel mehr Englische Tutorials gibt ist ein Umstellen der UE auf Englisch sinnvoller. Dazu haben meine Deutschen UE Kanäle ihre UE auch auf Englisch.
An other alternative for visual indicators like health bars, would be to do them 100% in materials. Using a material parameter collection, this would be even simpler, since you don’t have to reference the specific material you are using in your UI.
@@LeafBranchGames Just as a small addition for those who are curious to try^^ Ben Cloward has an ongoing series about UI and materials atm! Love the "be a better game dev" series btw, there are so many tutorials with bad practices unfortunately... I wish something like this existed when I started with UE4 in 2014.
Sorry to hear that. This is unfortunately the effect of large channels promoting bad practice. They have a great reach and drowns out other channels teaching better ways. :/
@@LeafBranchGames unfortunately yeah, thank God I came across your channel, good thing that I don't watch much tutorials or rely on them, unless I'm exploring something new and for the UI was from when I was a beginner, so I kept doing these bad practices until this video, thank you! My jaw dropped when I saw that print screen printing all the time
As I get more experienced in gamedev, I also look back on some of the content creators I've followed earlier in my journey and I can see the bad practices and bad optimization. But my opinion on them has changed a bit lately. I think its important to not discount those types of channels completely because they're responsible for bringing a lot of new and aspiring devs into the community. They may have bad practices, but sometimes for someone brand new, getting something up and running quickly can be such a huge spark of inspiration. I think they have their place very early in someone's gamedev journey. And their audience is different than the more intermediate devs that hopefully grow out of that phase. Just my thoughts on it since I saw the thumbnail!
Unfortunately, it is a zero sum game. If a person is wanting to learn Unreal engine, they will likely pick 1 out of 10 youtube results. They will likely pick the videos with the many views or the highest shown result, they don't know that they will learn bad practices. They are very unlikely to watch all 10 results and find out which is good or bad. They are also unlikely to break free from those bad channels, since they now get suggest more from those channels. If they had instead been suggested a different video, from a channel that is more competent to begin with, they would have saved themselves time learning better from the start. This applies to everyone watching these videos. Every single view is one learner mislead.
Not to mention that we learned not just from experimentation, but from Epic's OFFICIAL videos where their own developers told us to use UI Bindings. lol.
Thats the issue, they are content creators, not real ue devs they pretend to be, they never evolve, thats why they constantly do yt tutorials and not games, cuz they dont know how to do a game properly, thats why they will promote again and again, bad practices, cuz they dont create real games, so they dont know the issues of a real game cuz they never did one. And ppl like that are teaching others... LOL Their simple tutorials will work without issues even with bad practices, a real game will not. The are basically misleading ppl that they know things. The only exception are those that at least mention its a bad practice and a quick setup and u shouldn't do it in a real game.
@@LeafBranchGames I agree completely on the quality part, I'm not defending that in the slightest. I don't agree that it's a zero sum game though. I used to watch those channels a lot a couple of years ago and I found your channel and others with higher quality from YT recommendations. I know I'm not the only one and I disagree that beginners will stick with one channel only if they really want to pursue game dev in Unreal. Many that are excited by what they see look for more content and other creators. My argument is that while the quality is not good, bringing more people into this hobby and potentially this career is always a good thing. This community only thrives and survives if it consistently grows and we get more people interested in it. To that effect, those lower quality channels are good for introducing more people to the hobby. Sure, many will probably leave once they're game doesn't package or they can't figure out why their performance is awful after following a bad tutorial. But overall I still think its a net positive to get more developers interested in game dev.
This is great content - thank you, you've earned a subscriber! I first realised "bind" was problematic a few years ago, and switched to Event Dispatchers to communicate with my HUD. For my current project I've taken a different approach and have zero (or very little) code in my Widgets at all. At begin play, the character gets a reference to the hud. If something needs to change (health, etc) the character reaches into the HUD and changes that value when needed. The Widget is just a canvas (pun intended) for other blueprints to update as needed. Seems pretty clean so far. Thoughts?
Thank you for the support! That works. My concern is that as a person who has not worked on your project, or for yourself if you are gone for a long time and come back, that you will instinctively look in the widget for logic, so it may not be the "logical" place for the code. For the widget to be changed outside of that specific blueprint can feel odd. If you at least have a function in the widget that is "update widget health" or whatever, and you always call that from other blueprints, you at least have a common funnel for your code, and you can backtrack where that function gets called in case you need to troubleshoot or expand on your logic.
perfect timing for a good review on this since its always weird to pick up in /any/ framework .. UE itself does not publicize these basic practices as much as they should probably
Gorka was the first channel I tried learning from and it took maybe 4 videos before I really realized something was off. Near constant errors that weren't properly tested for, everything felt like a mess, and pretty much nothing was built with forethought, he never seemed to fully understand what he was trying to do at given points. I saw he made a course on how to build a stealth game for GameDevTV, while searching Udemy at the time for some supplemental learning, and that has since made me be extra cautious about their unreal content. I have never even had Matt Aspland how up in my feed but that seems to be a good thing as well.
Yes. It is unfortunately a common journey people have to go through since his videos are promoted by the TH-cam algortihm. It is rough to try to learn something new and not being able to tell what is good or bad, so you find out far down the road.
So question with this, I have a VR project that features a tablet that the player can use as a in-world interactable menu. The tablet is stored on the players back, and the widget on the tablet is only active when the tablet is picked up and turns off when dropped. The widget displays the current real world time, which is pulled from a bind to get current time (now>gethour etc). What do you think is the best approach to do this? Should i fire off a timeline each for hour, minute, and seconds instead of a bind? Is that more efficient, or is this a case where the bind is more beneficial? I think as an alternative, i could fire it off every minute updating hour and minute and omit the seconds as they are not commonly displayed on tablets/phones. Thoughts?
well, I just tested it and answered my own question. this is absolutely a better solution than using the bind. I need to sync the timer up better with current time but overall its working. I removed the seconds as it was unnecessary information and now fire the timer by event every 60 seconds to update the hour and minutes. This obviously is a significantly better solution than the bind firing on tick. Thanks for the info and teaching me something new.
Glad to hear you sorted it out. What is best will depend very much on the design and what your needs are. If you need something updated frequently, then you want to pick a solution that handles that. If you don/t need such a high frequency of updating, then you can find something more performant and rare.
How expensive on memory is to have widget references as variables? I have about 5 references of UI stuff on my character and i cant help but feel bad about it.
Whats funny is I always thought this but every tutorial I watched used binding so I assumed it was standard practice and doing it the way I did it in Unity was over complicating it.
I can see how you would come to that conclusion. But no, it is not standard. It is a very bad practice and it is shown by the tutorial channels that are the least competent when it comes to Unreal engine. They generally just copy some other channel and don't know what or why they are doing it. It is fairly common like you said.
Again, I have to point out. The binding function has it's own purposes and that is why Epic Games keep it. Professionals use it all the time but with conditions. Other YT videos I have to agree they use it in the wrong way, but it's a way for you to understand how it works. They are meant to be easy to understand and straight to the point. It's not all bad like you said, otherwise why would Epic Games keep this binding function in the first place. Even their official documentation impelementation uses and encourage to use this method. In Fortnite they use it. I'm not to condemn your claim but to be open.
Everything has a purpose. But if the purpose for example is only for prototyping, and not to be used for continued development, then it should not really be taught as such. Like I said in the video, Epic is working on making a system that avoids the negatives of bindings.
So what if you have health regeneration or DoT damage? You'd have to use it on tick or you could maybe set on a set inverval but it won't be smooth when it's updating. Couldn't you use Invalidation Box with binding instead so it won't update when the health is staying still?
I have a question. I have previously made a stamina bar using a status component and I follow this tutorial to create a health bar which I then changed to be used by my status component. I have made a widget called Healthbar and a widget called Staminabar which are being used in a playerUI widget. The Healthbar updates and works as expected but for some reason I can't set the percent value on my Staminabar despite it's the exact same method. I get the "Blueprint runtime error "Accessed None trying to read property BP Player Character" Node: Set Percent Graph. I cast to my player BP at construct and sets the value of my status component
@@LeafBranchGamesplease advise: I want to load umg widget on screen, i will do it once at the start of the map. Logically I can do it from 3 places, hud, level, playerController class. Its inrelevant if hud class will be depreciated, its just another "level in hierarchy". Problem I got... IF I want to access widget from playerController while it was initiated by level class. How do I access it? and vice versa. If I have some logic in level class and I want to access my widget created from PlayerController class. (class mean blueprint). I did it using GetAllWidgetsOfClass and store obj ref locally, but i dont think this is nice/right way.
@@LeafBranchGamesplease advise #2: also doing so.. I cant be certain that my widget-obj-ref variable will be initiated correctly. Since it's all happen in BeginPlay.. I cant be guaranteed the order of initiation. So I might try to get ref to non-existing object. :( It did happen to me and I had to implement "delay 0.5 sec" before calling to find widget by class... again... looks messy.
I am not entirely sure whether the data would reach the widget correctly 100% of the time with the method I am about to mention, but couldn't you just bind to the character's On Any Damage event and have it update the widget through that? I could imagine it might need to wait for a frame, but that way you dont need to store all of your widgets as references in the HUD
You could bind an event dispatcher if you want sure, I show this a lot in my RPG series. But you may not want to have the widget process information isntead of just displaying the health reality. What if you for example have armor and the 10 damage in the any damage event needs to be mitigated down to 7. Then the widget will process 10 damage, or the even the mitigations, which should really not be in the widget.
I can not say for certain. So I would err on the side of caution and assume they are bad. I will make a note of this and try to get the the truth on the matter.
@@LeafBranchGames I agree! I guess it's a bit difficult to test since we can't log things when we set or read them (as far as I know) so it seems reasonable to assume they're bad :)
@LeafBranchGames Sorry I wasn't clear, I mean that I use bindings in my settings menu to display the current graphics setting, vsync, etc. I might be wrong but I think it doesn't matter because the settings menu isn't constantly loading during gameplay
@@HenrikMakesGames That is possibly the worst situation to have them. You will maybe change one settings every few seconds at most, but every single setting will be checking the value 100 times per second. So 1 update was needed but you had thousands of thousands of updates happening. You may or may not notice the performance hit, because your screen might not have much to display, but why would you even consider doing that?
Do you recommend any other ue5 channels that show the better solutions like you do? I don't want to watch any channels that will give me bad habits and make my projects run slow.
I am unaware of any channels that point out things in this manner. But if you want to know of some great channels, I have a playlist called great content creators, you can find it here: th-cam.com/play/PLNBX4kIrA68nNmiUEl79NYZJIeL62NuH4.html
I was surprised to see that the binding is called every tick. From my experience, a new value should only be assigned if it differs from the old value. So why would unreal engine implement it this way? The Devs at epic are extremely smart, so I doubt it's an oversight. Does it maybe have something to do with needing to update the ui as frequently as possible so the gameplay appears smoother? I'd really like to know why it was implemented this way!
@@LeafBranchGames I was reading into it and what it should be used for and it's basically as you had mentioned; light weight values/computations only. It was made so Devs wouldn't have to manually update hundreds of ui elements by hand, which makes sense.
That being said - I thought this was now less of an issue in UE5 as I thought the UI binding system has been rearchitectured - I have a vague recollection UE video stating this - I think it might have been that fantast UI Materials video... or perhaps the other one that shows the responsive cards system... @@LeafBranchGames
Hi, thanks for tutorials. Im using in Blueprint (PlayerCharacter_BP / NPC_BP) at Beginplay cast to Widget - create reference and make whole calculation HP/Mana in BP (like smooth decrease/increase hp bar) and then just send by reference result to Widget. Do you think is it good way?
TBF, even the unreal devs said that bindings are meant only for debug purposes and should never be used in a finished product for that exact same reason! Guess not many people indulge in reading documentation or listening to the Devs ( unreal engine devs)
Indeed. Unreal devs does not have as great of a reach to the new people wanting to learn Unreal engine, so they don't get exposed to this information and it gets lost.
Sure. But that is like turning the side mirrors on a card to make it more aerodynamic so it can move faster and overlooking that someone has stolen all your tires.
There could be an argument for very rare cases. Maybe a time being displayed that needs to be as accurate s possible, like for timed laps or performances. Or possibly a UI element that would need updating constantly, like a speedometer or something. But it is exceedingly rare. Most likely it is there for convenience, and very very light weight calculations where it might not have an impact.
I've noticed that over time as I've become better at UE I'm finding I'm coming across better quality tutorials and channels such as this one. There is so much bad advice out there.
Unfortunately, that is not what new learners are exposed to. So they all have to go through the bad ones. This is a problematic issue. So unless they reach your point where they go outside of those channels, they are kept learning the low quality.
Those Gorka Games tutorials are always simple and he always looks for easy ways to do stuff in unreal engine. Don't get me wrong, he's a good lad, but I stopped following his tutorials when I understood that his approach is far from the best even though it is simple.
Bro you could have just stated at the begining that it's a tic issue. You could of saved me 5 minutes. That's the problem with all these gosh darn tutorials
Yeah I could have. That might have been good for you. But for someone who doesn't understand tick, it would not be as clear cut. Even for someone who understand tick may not have believed it and wanted visual confirmation. Yet others may have understood all of these things but not known of a better alternative to it. You do not represent everyone, and no tutorial can fit everyones need. The tutorial can't be 20 seconds long as well as describe Unreal Engines architecture.
I wish this channel would pop up at the top of the search results list when new developers search for tutorials. The amount of uninformed, or straight up wrong information on some of the channels is seriously worrisome. Thank you for taking the time to prioritize tutorial efficiency/helpfulness before views and reach. It is much appreciated
Thank you. I very much appreciate those kind words. :)
I almost fell out of my chair laughing when all the 'Hello's started popping up.
I'm also someone who tried Gorka's RPG tutorial a few months back hoping to learn to build an early "learning prototype" for a game I'm currently co-developing, and by the time I got to the end of it, the performance was absolutely lousy and you couldn't build on top of it at all; I was almost afraid to even touch anything because adding anything just made the whole house of cards collapse. Attempting to add the "open world" towards the (at the time) end of the series made things just start breaking spectacularly. Instead of attempting to bug fix it myself, I just cut my time losses, wrote off the entire thing and decided to look elsewhere.
It's an absolute shame how difficult it is to find learning resources for Unreal Engine beginners that preach good practices from the start. Glad I finally found a channel that does!
A combination of click bait, short videos (because an easy solution is more appealing to a beginner) rather than an in depth video, gets more views and recommendations, so those bad videos are what the search results bring back.
Honestly this is a good idea, buildingboff the tutorials of others in a best practices way is interesting
Thanks for the feedback. :)
Ah this was specifically something I was learning about recently. Love to see your video, and love to see the community finally calling out the bad practices rampant in tutorials. I'd love a good straight forward video on best practices for UMG panels. I can't believe how often I see the canvas panel used to wrap everything individually.
Thank you, appreciate the feedback! Hopefully I can visit those topics in the future!
A good UI resource I use is Kekdot here on TH-cam.
Thank you for making us all A Better Game Dev! I love this series of videos ♥
Love the way you explain everything that happens behind the scenes making it all clear and better. Let's keep on learning! 💪
Thank you!
I’ve never made a game before, so I thought I’d bite the bullet and give it a go. One thing I make sure to do is ALWAYS watch and read many different ways to do one thing. Sometimes it’s better to do the harder things even if the outcome is something simple. It gives a better end result, and this video is proves why it’s important to not be lazy
That is ususally the thing in software development. You can build frameworks that take a long time before you start seeing any result of your work at all, but once it is in place, you will be able to develop much faster. Or you can do like these channels do, cut corners every step of the way and have a nightmare of a project with bugs and bad practices that is impossible to finish or even continue development on later on.
I would love to see your approach on inventories.@@LeafBranchGames
@@RastoDM I have an old inventory tutorial.
I saw that just after I posted. The only issue with it that i have, and that i find most other examples use is that you create a child of an item blueprint for each item, rather then having a data table row update the information.. thoughts? Which would get difficult to manage in games that are larger so i dont think its as scalable@@LeafBranchGames
@@RastoDM Your approach for inventory needs to be reflected by your need. Some games have many items, some have few but with affixes. It all depends.
I didn't need years of experience to see that there was a big problem with what he was "teaching". I think this also represents why so many games on the market are optimized like shit. Love your channel.
Thank you! Appreciate the kind words!
Thanks for this series, super helpful!
Glad to hear it!
Thankyou for this, your tutorials are fantastic. i started my UE5 learning with gorkas RPG series and learnt how it evolves into a maddening spiral of cause and effect with no way to solve any bugs because of how he binds things and casts to things. Granted in his RPG series he makes the HP bar/EXT, correctly however every action in the game is a hard cast to the player, every enemy even its HP bar is dependent of the third person character as well as all actions and movement nothing is independent
Well yes, everything he does is copied from someone else. He doesn't understand how or why things work like they do. So he is geting big of others bad or good work. It is quite bad that that is the kind of knowledge new learners get exposed to, wasting their time learning bad ways and having to do it all over again.
I started learning Unreal Engine the same way, with Gorka Games RPG series tutorials. I stopped following his RPG tutorial series shortly after the climbing episodes. He leaves everything too vague, doesn't focus on the smaller issues that do add up, his way isn't modular or scalable, or his combo system is trash... he never completes any of the mechanics he starts... He started the series pretty well and then it became so basic...
Top tier content as always.
Thank you!
Thank you! i was shocked when i knew that binding is tick everytime to check, new sub btw
Glad to hear it was enlightening! Thank you for the support!
This video is 100%. I have been saying this for years, even mentioning this in videos with bad implementation. Sadly, videos like yours are just a few, and videos with bad binding are everywhere. There are things that are great with binds, for example, ingame hud FPS counter, I can't imagine that without binding.
True on all counts. There are a few, exceedingly rare situations where it makes sense. But unfortunately not how it is being taught or used in tutorials for the vast majority.
@@LeafBranchGames I've been on a crusade in the comments sections of their videos about this very subject. A few have listened, so it's important to spread the knowledge and comment constructively to the teachers.
@@Yggdrasil777 Well, yes and no. The root problem of them teaching bad practices is that they don't understand what or why they are doing what they are doing, because the copied it from someone else. They are not out to teach, they are after views. You may tell them they should not be doing it in this way, then they will copy someone else that oes it better, but they still don't know why. They are still just copying someone else.
Couple of bindings here and there no big deal, but if scaled out to everything it becomes bad practice. Games should be event driven, not many use cases for bindings these days UE should depreciate it. Loving this series of videos keep up the good work.
Thank you, appreciate it!
Great video. If someone is a beginner who wants to optimize the logic, such as through event dispatchers or event center management, similar to the relay mode in the code, this can solve the problem of referencing UI in character classes
Thank you. :)
This series is gold
Thank you!
Yes, thank you very much for the clarification.
For me, as a beginner, everyone actually is more smart than I do. When I watch a TH-cam video on the topic that is rated well and watched a lot, I always assume that I'm learning how to do it right. Now, after this video, I naturally ask myself: Why didn't you find this this kind of binding suspicious yourself? Without the video here, maybe never.
So yeah, thank´s a lot!
What you are mentioning here is a core essence that many go through. When we start out and don't have any knowledge to leverage, what we find is what we think is the truth. So if you first encounter a bad tutorial, you will learn all the bad practices and it will maybe take a very long time if ever to find out. At that point you may have spent much time learning things that you will have no use of.
It is very problematic.
thx for teaching noobs like me not waste computation juice,much love man!
My pleasure!
This is the video that mademe subscribe+Patreon. I have no idea how I didn't discover you earlier
Thank you for your support!
TH-cam is hiding my content like precious gems, you need to work to find them!
This video amazes me and terrifies me at same time. I just star learning and seeing this it really worries me. Thank you for clear those points out…
My pleasure!
This is a known issue. Only bad developers (like Gorka) would do this. That's why it annoys me when he shares his videos on UE5 fanpages and no one reviews his posts before accepting.
More scrutiny is for sure needed.
Gorka is using the bad code, but at least, he is the only guy on this ducking youtube who can spalin anything.
You can't make games using his code examples, but you can make quick prototypes and learn some features. What is useful for game designers
@@krzysztofbulicz416 Is it useful for game designers to learn something with the wrong information so that when they try to make use of what the "learned" they don't understand why things are not working as intended? Doesn't sound like very useful for a game designer.
@@LeafBranchGames Designers don't write code. We simply have to find the coolest and most suitable solutions, then write them in a design document for the coders and the rest of the team to execute, conducting the implementation process.
For us, it doesn't matter if the prototype code is optimal. Sometimes, instead of using a "progress bar," we are using the piece of paper on a stick. We don't design code logic, that's the responsibility of the lead programmer.
Quick prototypes are meant to be just as quick as possible. Spending time on optimizing code is overkill. What matters is the MVP.
Thanks to this dirty prototypes, the coders can write clean code.
Until the designer came back with some iterations xd
By the way, don't get me wrong, I'm glad to found your channel. It's a great next step after channels like Gorka's, and please continue with your content.
Oh damn! I did NOT know that UI bindings run on tick, but of course they do, how else would they work. lol. Thank you for this! I'm so mad that Epic's own tutorials are why everyone thinks we need to use UI bindings. lol
My pleasure!
I am glad to have found this channel. In the 5 videos I've watched so far, you do a great job. I understand what you are explaining, even if TH-cam has to translate it for me. Thank you for your work and you have my subscription. Only 799 to 20,000 subscribers. Good luck for the future.
Ich bin froh diesen Kanal gefunden zu haben. In den 5 Videos die ich mir bisher angeschaut habe, machst Du Großartige Arbeit. Ich verstehe was du Erklärst, auch wenn TH-cam es für mich übersetzen muss. Danke für Deine Arbeit und Abo hast Du von mir. Nur noch 799 bis zu 20.000 Abonnenten. Viel Erfolg weiterhin.
Thank you for your kind words and support. I have actually considered createing dubbed versions of some of my videos to reach audiences like you. The reason I have not done it, was because I felt it would be weird if I referred to, for example, a button with a certain text, and the dubbing would not be saying the same word as it is named in the german unreal engine. Do you think that would be an issue or would it be managable?
@@LeafBranchGames You hear it, you see it and yet sometimes you read nonsense. That's why I set UE to English.
It's easier, so there's no confusion when naming the node. I can also see visually what the node looks like. Because sometimes they only differ a little, so the different names just get in the way. TH-cam is quite good from English to German, especially if the speaker speaks well. Compliments to you.
But sometimes the names are translated and sometimes not, so you can't rely on YT. Visual control is always better.
I can't judge what it's like when there's a transcript, because I'm using
English (automatically generated) => German
under Use subtitles.
I cannot judge how it is in other languages.
It would be manageable but unnecessary, as you would then be just one of many. I recommend putting the UE5 in English and learning it that way.
You're honored that you thought about it, but I don't think it's worth the extra work. In the beginning I would have been happy about it, but since there are many more English tutorials, it makes more sense to switch the UE to English. My German UE channels also have their UE in English.
I hope you understood everything and I was able to share my experience with you and help you with your decision.
Man hört, sieht es und doch liest man manchmal Stuss. Darum hatte ich UE auf Englisch gestellt.
Das ist einfacher, damit entsteht keine Verwirrung bei der Knoten Benennung. Ich kann so auch optisch sehen wie der Knoten aussieht. Denn ab und an unterscheiden sie sich nur ein wenig, da störten die unterschiedlichen Benennungen nur. TH-cam ist recht gut von Englisch ins Deutsche, besonders wenn der Sprecher gut spricht. Kompliment an Dich.
Aber Benennungen werden mal übersetzt und dann wieder mal nicht, da kann man sich nicht auf YT verlassen. Da ist die Optische Kontrolle immer besser.
Wie es ist, wenn ein Transkript vorliegt, kann ich nicht beurteilen, da ich
Englisch (Automatisch erzeugt) => Deutsch
bei Untertitel verwenden eingestellt habe.
Wie es in anderen Sprachen ist, kann ich nicht beurteilen.
Es wäre beherrschbar aber unnötig, da du dann nur einer unter sehr vielen wärst. Ich empfehle die UE5 in Englisch zu stellen und sie auch so zu erlernen.
Es ehrt dich das du darüber nachgedacht hast, aber ich finde es die Mehrarbeit nicht wert. Am Anfang wäre ich darüber Froh gewesen, aber da es viel mehr Englische Tutorials gibt ist ein Umstellen der UE auf Englisch sinnvoller. Dazu haben meine Deutschen UE Kanäle ihre UE auch auf Englisch.
@@WauzyThank you for the thoughtful and in depth reply. It is very much appreciated. :)
An other alternative for visual indicators like health bars, would be to do them 100% in materials. Using a material parameter collection, this would be even simpler, since you don’t have to reference the specific material you are using in your UI.
This is for sure true. But I am not great with material, I get by. But it is not where my expertise lies. It is for sure an alternative.
@@LeafBranchGames Just as a small addition for those who are curious to try^^ Ben Cloward has an ongoing series about UI and materials atm!
Love the "be a better game dev" series btw, there are so many tutorials with bad practices unfortunately... I wish something like this existed when I started with UE4 in 2014.
@@QuakeProBro Thanks for sharing! Glad to hear you like it!
Thank you!
My pleasure!
hey, that was cool!
thanks!
My pleasure!
yep , assign binding is much efficient, also abstract the health owner will also make widget reusable, good tutorial
Thank you!
wish I found this long ago. thought Bindings were just listeners.
Sorry to hear that. This is unfortunately the effect of large channels promoting bad practice. They have a great reach and drowns out other channels teaching better ways. :/
@@LeafBranchGames unfortunately yeah, thank God I came across your channel, good thing that I don't watch much tutorials or rely on them, unless I'm exploring something new and for the UI was from when I was a beginner, so I kept doing these bad practices until this video, thank you!
My jaw dropped when I saw that print screen printing all the time
thanks for this explanation, it is very helpful
My pleasure!
I hope u can make a series how to make games until finished with best practices, this thing is very rare in yt 😢
Possibly!
As I get more experienced in gamedev, I also look back on some of the content creators I've followed earlier in my journey and I can see the bad practices and bad optimization. But my opinion on them has changed a bit lately. I think its important to not discount those types of channels completely because they're responsible for bringing a lot of new and aspiring devs into the community. They may have bad practices, but sometimes for someone brand new, getting something up and running quickly can be such a huge spark of inspiration. I think they have their place very early in someone's gamedev journey. And their audience is different than the more intermediate devs that hopefully grow out of that phase. Just my thoughts on it since I saw the thumbnail!
Unfortunately, it is a zero sum game. If a person is wanting to learn Unreal engine, they will likely pick 1 out of 10 youtube results.
They will likely pick the videos with the many views or the highest shown result, they don't know that they will learn bad practices. They are very unlikely to watch all 10 results and find out which is good or bad. They are also unlikely to break free from those bad channels, since they now get suggest more from those channels.
If they had instead been suggested a different video, from a channel that is more competent to begin with, they would have saved themselves time learning better from the start. This applies to everyone watching these videos. Every single view is one learner mislead.
@@LeafBranchGamesagreed!
Not to mention that we learned not just from experimentation, but from Epic's OFFICIAL videos where their own developers told us to use UI Bindings. lol.
Thats the issue, they are content creators, not real ue devs they pretend to be, they never evolve, thats why they constantly do yt tutorials and not games, cuz they dont know how to do a game properly, thats why they will promote again and again, bad practices, cuz they dont create real games, so they dont know the issues of a real game cuz they never did one.
And ppl like that are teaching others... LOL
Their simple tutorials will work without issues even with bad practices, a real game will not. The are basically misleading ppl that they know things.
The only exception are those that at least mention its a bad practice and a quick setup and u shouldn't do it in a real game.
@@LeafBranchGames I agree completely on the quality part, I'm not defending that in the slightest. I don't agree that it's a zero sum game though. I used to watch those channels a lot a couple of years ago and I found your channel and others with higher quality from YT recommendations. I know I'm not the only one and I disagree that beginners will stick with one channel only if they really want to pursue game dev in Unreal. Many that are excited by what they see look for more content and other creators.
My argument is that while the quality is not good, bringing more people into this hobby and potentially this career is always a good thing. This community only thrives and survives if it consistently grows and we get more people interested in it. To that effect, those lower quality channels are good for introducing more people to the hobby. Sure, many will probably leave once they're game doesn't package or they can't figure out why their performance is awful after following a bad tutorial. But overall I still think its a net positive to get more developers interested in game dev.
Thanks for this, very helpful. Maybe the only time you might get away with using it is with a timer with milliseconds.
This is great content - thank you, you've earned a subscriber! I first realised "bind" was problematic a few years ago, and switched to Event Dispatchers to communicate with my HUD. For my current project I've taken a different approach and have zero (or very little) code in my Widgets at all. At begin play, the character gets a reference to the hud. If something needs to change (health, etc) the character reaches into the HUD and changes that value when needed. The Widget is just a canvas (pun intended) for other blueprints to update as needed. Seems pretty clean so far. Thoughts?
Thank you for the support!
That works. My concern is that as a person who has not worked on your project, or for yourself if you are gone for a long time and come back, that you will instinctively look in the widget for logic, so it may not be the "logical" place for the code. For the widget to be changed outside of that specific blueprint can feel odd.
If you at least have a function in the widget that is "update widget health" or whatever, and you always call that from other blueprints, you at least have a common funnel for your code, and you can backtrack where that function gets called in case you need to troubleshoot or expand on your logic.
perfect timing for a good review on this since its always weird to pick up in /any/ framework .. UE itself does not publicize these basic practices as much as they should probably
This is true. Epic maybe should be a bit more transperent on this front, since they are the prime authority on the subject since it is their engine.
thank you so much for this! But I also wonder what would be the best case to use UI bindings? Or we should never use them at all?
I would not use them even for prototyping personally.
Gorka was the first channel I tried learning from and it took maybe 4 videos before I really realized something was off. Near constant errors that weren't properly tested for, everything felt like a mess, and pretty much nothing was built with forethought, he never seemed to fully understand what he was trying to do at given points.
I saw he made a course on how to build a stealth game for GameDevTV, while searching Udemy at the time for some supplemental learning, and that has since made me be extra cautious about their unreal content.
I have never even had Matt Aspland how up in my feed but that seems to be a good thing as well.
Yes. It is unfortunately a common journey people have to go through since his videos are promoted by the TH-cam algortihm. It is rough to try to learn something new and not being able to tell what is good or bad, so you find out far down the road.
So question with this, I have a VR project that features a tablet that the player can use as a in-world interactable menu. The tablet is stored on the players back, and the widget on the tablet is only active when the tablet is picked up and turns off when dropped. The widget displays the current real world time, which is pulled from a bind to get current time (now>gethour etc). What do you think is the best approach to do this? Should i fire off a timeline each for hour, minute, and seconds instead of a bind? Is that more efficient, or is this a case where the bind is more beneficial?
I think as an alternative, i could fire it off every minute updating hour and minute and omit the seconds as they are not commonly displayed on tablets/phones.
Thoughts?
well, I just tested it and answered my own question. this is absolutely a better solution than using the bind. I need to sync the timer up better with current time but overall its working. I removed the seconds as it was unnecessary information and now fire the timer by event every 60 seconds to update the hour and minutes. This obviously is a significantly better solution than the bind firing on tick. Thanks for the info and teaching me something new.
Glad to hear you sorted it out. What is best will depend very much on the design and what your needs are. If you need something updated frequently, then you want to pick a solution that handles that. If you don/t need such a high frequency of updating, then you can find something more performant and rare.
Huge fan of this channel, I have a request: Can you please create some videos on vehicle part, very less concent is available
You mean like this? th-cam.com/video/tR3sSMD-D0E/w-d-xo.html
th-cam.com/video/YSA8PpeM8_E/w-d-xo.html
How expensive on memory is to have widget references as variables? I have about 5 references of UI stuff on my character and i cant help but feel bad about it.
I think this is Ok since UI references are not a million polygon model. And the fact that the UI on the screen is needed almost all the time.
Whats funny is I always thought this but every tutorial I watched used binding so I assumed it was standard practice and doing it the way I did it in Unity was over complicating it.
I can see how you would come to that conclusion. But no, it is not standard. It is a very bad practice and it is shown by the tutorial channels that are the least competent when it comes to Unreal engine. They generally just copy some other channel and don't know what or why they are doing it. It is fairly common like you said.
Again, I have to point out. The binding function has it's own purposes and that is why Epic Games keep it. Professionals use it all the time but with conditions. Other YT videos I have to agree they use it in the wrong way, but it's a way for you to understand how it works. They are meant to be easy to understand and straight to the point.
It's not all bad like you said, otherwise why would Epic Games keep this binding function in the first place. Even their official documentation impelementation uses and encourage to use this method. In Fortnite they use it.
I'm not to condemn your claim but to be open.
Everything has a purpose. But if the purpose for example is only for prototyping, and not to be used for continued development, then it should not really be taught as such. Like I said in the video, Epic is working on making a system that avoids the negatives of bindings.
So what if you have health regeneration or DoT damage? You'd have to use it on tick or you could maybe set on a set inverval but it won't be smooth when it's updating.
Couldn't you use Invalidation Box with binding instead so it won't update when the health is staying still?
Have you actually tried it and observed it isn't smooth?
lmao, someone got the balls to tell the truth here, thanks for that.
My pleasure!
I have a question. I have previously made a stamina bar using a status component and I follow this tutorial to create a health bar which I then changed to be used by my status component. I have made a widget called Healthbar and a widget called Staminabar which are being used in a playerUI widget. The Healthbar updates and works as expected but for some reason I can't set the percent value on my Staminabar despite it's the exact same method. I get the "Blueprint runtime error "Accessed None trying to read property BP Player Character" Node: Set Percent Graph. I cast to my player BP at construct and sets the value of my status component
This explains your issue th-cam.com/video/9PsoeBM82mk/w-d-xo.html
@@LeafBranchGames Tack! Jag ska spana in den
excellent. but how did you store reference to your HUD? Mine is initated through hud class (game mode setting). how did you get it player controller?
You can just create a widget called hud and add it to the viewport. The old HUD system is deprecated as far as I know.
@@LeafBranchGamesplease advise: I want to load umg widget on screen, i will do it once at the start of the map. Logically I can do it from 3 places, hud, level, playerController class. Its inrelevant if hud class will be depreciated, its just another "level in hierarchy". Problem I got... IF I want to access widget from playerController while it was initiated by level class. How do I access it? and vice versa. If I have some logic in level class and I want to access my widget created from PlayerController class. (class mean blueprint). I did it using GetAllWidgetsOfClass and store obj ref locally, but i dont think this is nice/right way.
@@LeafBranchGamesplease advise #2: also doing so.. I cant be certain that my widget-obj-ref variable will be initiated correctly.
Since it's all happen in BeginPlay.. I cant be guaranteed the order of initiation. So I might try to get ref to non-existing object. :(
It did happen to me and I had to implement "delay 0.5 sec" before calling to find widget by class... again... looks messy.
@@HumpaLumpaBiriBam Hopefully this will shed some light for you: th-cam.com/video/bdsROh8mQZk/w-d-xo.html
@@HumpaLumpaBiriBamInstead of begin play you can make use of onpossess event. Should be a better event for most UI cases.
I am not entirely sure whether the data would reach the widget correctly 100% of the time with the method I am about to mention, but couldn't you just bind to the character's On Any Damage event and have it update the widget through that? I could imagine it might need to wait for a frame, but that way you dont need to store all of your widgets as references in the HUD
You could bind an event dispatcher if you want sure, I show this a lot in my RPG series. But you may not want to have the widget process information isntead of just displaying the health reality. What if you for example have armor and the 10 damage in the any damage event needs to be mitigated down to 7. Then the widget will process 10 damage, or the even the mitigations, which should really not be in the widget.
Hmmm, I think you only demonstrate function bindings, but what about property bindings? Do they also suffer from the same problem?
I can not say for certain. So I would err on the side of caution and assume they are bad. I will make a note of this and try to get the the truth on the matter.
@@LeafBranchGames I agree! I guess it's a bit difficult to test since we can't log things when we set or read them (as far as I know) so it seems reasonable to assume they're bad :)
@@lambda-snail You may be able to discern it using Unreal insights. Feels a bit like killing a fly with a shotgun though.
Can bindings still work for an options menu that does not run in real time?
What kind of menu do you imagine exists outside of real time?
@LeafBranchGames Sorry I wasn't clear, I mean that I use bindings in my settings menu to display the current graphics setting, vsync, etc. I might be wrong but I think it doesn't matter because the settings menu isn't constantly loading during gameplay
@@HenrikMakesGames That is possibly the worst situation to have them. You will maybe change one settings every few seconds at most, but every single setting will be checking the value 100 times per second. So 1 update was needed but you had thousands of thousands of updates happening. You may or may not notice the performance hit, because your screen might not have much to display, but why would you even consider doing that?
@@LeafBranchGames I followed a shitty tutorial before I found yours 😢
Do you recommend any other ue5 channels that show the better solutions like you do? I don't want to watch any channels that will give me bad habits and make my projects run slow.
I am unaware of any channels that point out things in this manner. But if you want to know of some great channels, I have a playlist called great content creators, you can find it here: th-cam.com/play/PLNBX4kIrA68nNmiUEl79NYZJIeL62NuH4.html
Kekdot does wonderful UI work.
I was surprised to see that the binding is called every tick.
From my experience, a new value should only be assigned if it differs from the old value.
So why would unreal engine implement it this way?
The Devs at epic are extremely smart, so I doubt it's an oversight.
Does it maybe have something to do with needing to update the ui as frequently as possible so the gameplay appears smoother?
I'd really like to know why it was implemented this way!
It is unlikely to be used for anything other than prototyping except for maybe some value that really needs to be updated on a per tick basis.
@@LeafBranchGames I was reading into it and what it should be used for and it's basically as you had mentioned; light weight values/computations only.
It was made so Devs wouldn't have to manually update hundreds of ui elements by hand, which makes sense.
@@dorondavid4698 Indeed.
I was guilty of this in the past!!! Until I realised it was on tick
Indeed. The prevalence of it is wide spread.
That being said - I thought this was now less of an issue in UE5 as I thought the UI binding system has been rearchitectured - I have a vague recollection UE video stating this - I think it might have been that fantast UI Materials video... or perhaps the other one that shows the responsive cards system...
@@LeafBranchGames
@@MIKELENZTIPS It is something in the works, but I don't thing they have finished it yet. I do recall it from the road map in the past.
@@LeafBranchGamesthank you for clarifying 🙏
@@MIKELENZTIPS No problem
Hi, thanks for tutorials. Im using in Blueprint (PlayerCharacter_BP / NPC_BP) at Beginplay cast to Widget - create reference and make whole calculation HP/Mana in BP (like smooth decrease/increase hp bar) and then just send by reference result to Widget. Do you think is it good way?
No, your UI should be aware of your pawn/controller. Not the other way around.
I would suggest something like this: th-cam.com/video/bdsROh8mQZk/w-d-xo.html
Uisco is the king of bad practices
Thanks for the tip!
True, but I believe he has rebranded as "Unreal University"
TBF, even the unreal devs said that bindings are meant only for debug purposes and should never be used in a finished product for that exact same reason!
Guess not many people indulge in reading documentation or listening to the Devs ( unreal engine devs)
Indeed. Unreal devs does not have as great of a reach to the new people wanting to learn Unreal engine, so they don't get exposed to this information and it gets lost.
So what's the point of having the option to use Bindings?
Should this be removed from the engine all together?
It will probably become deprecated at some point.
Technically, [Divide] calculation is harder than [Multiply], so I could say do not divide by 100, multiply by 0.01 instead.
Sure. But that is like turning the side mirrors on a card to make it more aerodynamic so it can move faster and overlooking that someone has stolen all your tires.
Why do bindings even exist? Is there a use case where it is better to calculate UI each frame?
There could be an argument for very rare cases. Maybe a time being displayed that needs to be as accurate s possible, like for timed laps or performances. Or possibly a UI element that would need updating constantly, like a speedometer or something. But it is exceedingly rare. Most likely it is there for convenience, and very very light weight calculations where it might not have an impact.
As a coincidence , i also found this type of bindings are bad using printstring but in early stages of development
Makes sense
I've noticed that over time as I've become better at UE I'm finding I'm coming across better quality tutorials and channels such as this one. There is so much bad advice out there.
Unfortunately, that is not what new learners are exposed to. So they all have to go through the bad ones. This is a problematic issue. So unless they reach your point where they go outside of those channels, they are kept learning the low quality.
I think this is war between gorkagames, uisco and you)))))😂
Don't know who uisco is, but that is Matt Aspland, not Uisco.
@@LeafBranchGames my mistake. matt aspland, you wright
Those Gorka Games tutorials are always simple and he always looks for easy ways to do stuff in unreal engine. Don't get me wrong, he's a good lad, but I stopped following his tutorials when I understood that his approach is far from the best even though it is simple.
That something is simple is ususally a warning sign.
Early comment 💬
Well done!
I only like this cuz matt aspland is like the worst "gamedev" on youtube lol
Which is unfortunate considering how many people "learn" from him.
Haha those channels are great examples of bad practice in everything they post. Not just those two either, heh.
True!
Bro you could have just stated at the begining that it's a tic issue. You could of saved me 5 minutes. That's the problem with all these gosh darn tutorials
Yeah I could have. That might have been good for you. But for someone who doesn't understand tick, it would not be as clear cut. Even for someone who understand tick may not have believed it and wanted visual confirmation. Yet others may have understood all of these things but not known of a better alternative to it.
You do not represent everyone, and no tutorial can fit everyones need. The tutorial can't be 20 seconds long as well as describe Unreal Engines architecture.
@@LeafBranchGames I represent those who dont not understand blueprints. So it would be a benefit to everyone if you did.
@@buster5661 You represent a small subset of that demographic, sure.
Hi, I've been following you for some time now and I really enjoy your videos. Do you have a Discord server where I can get in touch with you?
Thank you! Yes, you can find the Discord link in the description of every video.