Actor Components Will Change the Way You Make Blueprints!! (Unreal Engine 5)

Поделиться
HTML-код
  • Опубликовано: 28 ноя 2024

Комментарии • 191

  • @GlassHandFilms
    @GlassHandFilms  2 года назад +7

    Hey guys! A lot of you were asking about a video that introduced actor components! Thank you for the suggestions and would love to hear what you guys want to see next! Thank you for the support

    • @codiroberts886
      @codiroberts886 2 года назад +2

      I've seen your other videos and today asked myself "wtf is an actor component?" and magically this appears. Thanks for the vid.

    • @GlassHandFilms
      @GlassHandFilms  2 года назад +1

      @@codiroberts886 awesome Codi! I hope this video helped! Cheers!

  • @JayTheDevGuy
    @JayTheDevGuy Год назад +5

    Specialized components talking to other specialized components is exactly what I needed to see to make this workflow finally click for me. Thank you so much for posting.

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      Amazing!! Thank you for sharing with me. :) Best of luck with your project, all the best! Cheers!

  • @darkarps
    @darkarps Год назад +9

    watching you (or anyone making instructional vids) make and then catch and recover from mistakes is an equally important part of the education imo! thank you so much for this!

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      Yes absolutely! I couldn't agree more! :) thank you very much!

  • @Doubleaa500
    @Doubleaa500 2 месяца назад +1

    This video was right under my nose the entire time and I only just now clicked on it!!!
    I didn't fully understand where and how to create separate components that you can just literally slot into different objects or actors in the game!!!
    THIS IS GREAT!!!

    • @GlassHandFilms
      @GlassHandFilms  2 месяца назад

      @@Doubleaa500 yeah it makes everything so modular and reusable :) cheers!

  • @TheAngryRubberDuck
    @TheAngryRubberDuck Год назад +2

    I'm learning UE5 through RUclips tutorials. Whenever I don't understand something, I'll watch a video like this and deep dive into something until I understand and then move onto the next thing. @14:20 is my freaking motto at this point.

    • @GlassHandFilms
      @GlassHandFilms  Год назад +2

      🤣🤣🤣 literally laughed out loud. I'd like to say it gets better, but you only challenge yourself more as you grow. Haha thank you for leaving a comment and the best of luck on your journey ❤️

  • @blankstare7435
    @blankstare7435 Год назад +4

    I am in school for game design, and I was messing around with a component yesterday and felt it would make my life much better and sure enough it does, thanks my man!!

  • @Flowerpot2905
    @Flowerpot2905 5 месяцев назад +1

    Very cool. Forgetting to add the components was probably the best part. We've all done it!... I'm glad I didn't pause the video to test if mine was working.

    • @GlassHandFilms
      @GlassHandFilms  5 месяцев назад

      Haha 😂 yeah it's easy to forget! Cheers :)

  • @telnaur
    @telnaur Месяц назад +1

    Dude great videos, came from the interfaces video and watched this next. Koodos to how you actually explain the what AND the why! It's refreshing and super helpful! I've been doing cinematics in Unreal for a couple years now and I'm beginning the journey of a solo-dev game so this has been helpful! Nice job

    • @GlassHandFilms
      @GlassHandFilms  Месяц назад

      @@telnaur awesome!! Thank you so much for the kind words. I wish you the very best in your dev journey! It's super fun ☺️ cheers!!

  • @erichturner9892
    @erichturner9892 3 месяца назад +1

    Great explanation! Nice and easy way to wrap my head around the Actor Component Blueprint class!! thank you for putting this out there, kinda thrown into the fire and this helps it not burn so much :D

    • @GlassHandFilms
      @GlassHandFilms  3 месяца назад +1

      @@erichturner9892 so awesome to hear your experience and how this helped :) I wanna do another video on this topic because they are SUPER powerful and a great way to add modularity to your projects. Cheers :)

  • @sometimesyouneverknow4906
    @sometimesyouneverknow4906 Год назад +1

    This answered a question i have had for a while, i.e. how to initiate the actor components once added. that part you glossed over like it was nothing, but when you don't know you can just call a reference to the actor component to trigger an event contained within it... well, my newbie ass is going to be spending some time cleaning up some things because this is so much more simple and more elegant and will eliminate a bunch of issues i would have had when i puzzled through it and used blueprint interfaces. So glad i am not further into the project, but it should be an easy fix. Lesson there being just because something works for now doesn't mean it is at all right. BPI probably would have called a damage event on anything that would have taken damage in the scene (assuming damage example).

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      Awesome! I'm very happy you checked out the video! Cheers 😁

  • @lotierm
    @lotierm 9 месяцев назад +1

    They are pretty tightly coupled. Only health component can live without others. So you can't say that you have independent components here. Death and damage components are not independent, so you can treat them as 1 that has tight coupling with health component.

  • @Angstjaeger
    @Angstjaeger Год назад +1

    The best way to explain actor components, I was lost

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      Awesome Alejandro I'm so happy to hear this! Cheers!

  • @Fasyle
    @Fasyle Год назад +1

    I'm new to UE and get so lost in all the tutorials. The coupling issue you mentioned in another video help me so much and this is great too. Love your authentic and transparent style. Hope to see more UE videos in the future!

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      Thank you so much for the kind comment :) I will definitely be back on the channel soon. Working a bit on a blender product in conjunction with another RUclips channel. I know it's not UE, but there will be more soon :) Cheers!

  • @jameshazelton5088
    @jameshazelton5088 2 года назад +5

    Great video - I'm really enjoying this series. You were asking about ideas for future videos - what I'd really like to see is an overview of a good way to strucutre a game / experience - i.e. what do you set up in the different other blueprint types such as game mode base, scene components etc. Not necessarily going into detail in each one but just the overall architecture you put in place when setting up your game and what functions you set up where. I've seen many videos on the invidual elements but a birds eye view would be super helpful! Anyway whatever you're up to next I'm looking forward to it!!

    • @GlassHandFilms
      @GlassHandFilms  2 года назад +1

      Hey James! This is something I really would love to create! I'm hoping I can find some time to put it together. Thank you for the awesome suggestion. Cheers!

  • @megtwin
    @megtwin 2 года назад +3

    Love the thorough explanations, and the fact you keep mistakes in as well as the fixes because they are most likely the ones that can happen.

    • @GlassHandFilms
      @GlassHandFilms  2 года назад +1

      Awesome thank you so much for the feedback!! I feel the same way. Thank you for checking out the video. cheers!

  • @benl.4903
    @benl.4903 Год назад +1

    I am not a native English speaker but you did a great job and I understood everything. Also I liked the little tips about BP. Thanks! I will watch more of your work.

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      Thank you so much, Ben! I really appreciate the feedback. :) Cheers!

  • @sahinerdem5496
    @sahinerdem5496 7 месяцев назад +1

    I enjoyed it. Thank you. The Component creation is the advanced level in UE or Unity.The main problem for me The Assets I buy and can't understand how to use them is my lack of understanding of Actor Components. You may see around some guys complain about asset is that he has the same lack of knowledge like me. Creating Components is scary to me, I can code and find any solution in Character and AnimBP or Actor BPs so I hope I can overthrow my fear and collect functions in components to achieve what i want to develop. Thank you for your help. Appreciated. Well clear tutorial it's 25 min and i didn't bore till end, loved your tutorial. Regards.

    • @GlassHandFilms
      @GlassHandFilms  7 месяцев назад +2

      Thank you for this comment 😊 I wish you nothing but the best in your unreal engine journey and I'm sure you will master actor components. Cheers!

  • @Billy-sj4vr
    @Billy-sj4vr 2 года назад +1

    Hey man I just wanna say how much I appreciate your channel and style, please keep the mistakes in these videos because I would run into the exact same problems and hearing your thought process just makes sense to me. Thank you so much!!!!

    • @GlassHandFilms
      @GlassHandFilms  2 года назад

      Dude that's so awesome! Thank you for the comment, Billy! Best of luck on your cg journey and I hope to make a video soon that can assist on that journey! Cheers!!

  • @swifty916
    @swifty916 Год назад +2

    This was an extremely informative and easy to follow lesson! Would love more videos like these!

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      awesome thank you for the feedback! I will get back to creating more content soon :) I'm about a month into a new job as a Unreal Engine Dev and it's been taking up most of my time, but really enjoy it :) A lot more I'd like to share!

  • @stephenbuehner3371
    @stephenbuehner3371 25 дней назад +1

    Thank you so much! Great tutorial, and helped me understand this so much easier. You're awesome dude!!!!!

    • @GlassHandFilms
      @GlassHandFilms  25 дней назад +1

      @@stephenbuehner3371 so great to read this comment! So happy it helped!! You are awesome as well!! Cheers! 😁

  • @clintmcgill7263
    @clintmcgill7263 Год назад

    Love the video. So glad that you take the time to show mistakes and how to correct them and you explain the "why" behind the "what". Makes it a ton easier to make my own things rather than just duplicate someone elses stuff when I know why you do something. Much better than the "tutorials" that say plug this in here and it works.

  • @gami2406
    @gami2406 Год назад +6

    Man, you're actually awesome. Just stumbled on your channel randomly and God am I grateful. You explain well, you're honest, and always have a smile ! Keep doing what you're doing man, especially does Unreal videos (please ahah) :)

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      Oh wow! thank you so much for comment!! I really appreciate your feedback and I hope to make more videos soon :) Hope to chat more! Cheers!

  • @thegreendude2086
    @thegreendude2086 Год назад +1

    Thank you for the video,
    Actor Components certainly are change you need to wrap your mind around to effectively use them and so I was unsure how to use them and for what, but this really helped

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      Thank you so much for checking it out!! It really does remind me of Unity where you create an object and attach single responsibility scripts to that object. It's pretty cool to have in your toolbox! :) cheers!

  • @dogdren1396
    @dogdren1396 2 месяца назад +1

    yo man i really appreciate the unreal 5 videos it's good stuff so thank you thank you

    • @GlassHandFilms
      @GlassHandFilms  2 месяца назад +1

      @@dogdren1396 my pleasure! Thank you for watching. I hope to do some more soon! Cheers 😁

  • @nill_unreall7229
    @nill_unreall7229 6 месяцев назад +1

    because I didn't find this video before .... thank you...❤❤

    • @GlassHandFilms
      @GlassHandFilms  6 месяцев назад

      You are most welcome 🤗❤️ cheers!!

  • @Vilde321
    @Vilde321 2 года назад +3

    Actually could you make a video about differences/different uses of blueprint interfaces & blueprint actor components??
    I am currently thinking about which to use for different things and I dont even mainly understand the benefits of either yet.

    • @GlassHandFilms
      @GlassHandFilms  2 года назад +1

      Hi there! As a high level explanation, I would use actor components in a situation where I need modularity. For example, I have a vehicle BP. I want to add thrusters, lasers, and windshield wipers (haha!). I can use components to add those functionalities and add them to other vehicle types as well.
      With interfaces, I want to provide functionality to something without specifying its implementation details. Think about a light switch, the electrical wire, and a light bulb. The electrical wire is the interface in this example. The switch has no idea what is on the other side of the current, it just promises a functionality without sending instructions to the light bulb about HOW to turn on. The switch could have a fan at the other end for all it cares 😂 I hope that makes sense! Keep going! Cheers!

    • @Vilde321
      @Vilde321 2 года назад

      @@GlassHandFilms Thanks for such a fast reply! I can kind of understand, probably I just have to keep messing around with these both to get better understanding... I did damaging enemies/things by interfaces in a previous project, but I really want to learn this better and maybe mix those two in somehow. (Im making minor sidescrolller stuff currently which is good for trying out stuff)

  • @xzeryawilliams2979
    @xzeryawilliams2979 Год назад +1

    This was a good intro to components. I think you should do a video of when to use them. There is so many ways to do things in unreal.

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      Thank you very much for the feedback. And the crazy thing is I was thinking the same thing tonight! I want to do a video over event dispatchers and then hopefully I can record a small video covering all the concepts I've talked about so far and when to use them :) cheers!

    • @xzeryawilliams2979
      @xzeryawilliams2979 Год назад

      @@GlassHandFilms Im subscribed, but if you can remember please message me when you upload your event dispatch video! Thanks!

  • @joepolidoro429
    @joepolidoro429 Год назад +1

    Nice work. I learned exactly what i was trying to figure out. Thanks for the aligment hotkey with the node/routes too.

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      This is so cool to hear! Thank you for sharing! Cheers ❤️

  • @napstablook5757
    @napstablook5757 8 месяцев назад +1

    I have a question. In the event graph for BP_Cube, you got the reference for player Character and casted it to the BP_ThirdPersonCharacter, took the capsule component and checked if that is overlapping with the HitBox component.
    Why didn't we just cast the "Other Actor" in the On Component Begin Overlap (HitBox) to the BP_ThirdPersonCharacter and checked if the "Other component" is the capsule component of BP_ThirdPersonCharacter?

    • @GlassHandFilms
      @GlassHandFilms  8 месяцев назад +2

      That's a completely valid way of doing it! The difference between the two methods we are proposing would be getting a reference to the player character. So your method would work with NPCs as well. Which may or may not be inherited from ThirdPersonCharacter :) I hope I am understanding you correctly

  • @projectgg6730
    @projectgg6730 Год назад +1

    i feel like you should check the death condition on the health component instead of the death component so that every time you apply damage you don't have the components communicate with each other. I also have been messing with unreal's built in damage types system and it is super useful. I realized while watching this that i basically have all of this just in my blueprints and how useful it would have been to use components instead of redoing health and damage for every enemy type. This is also super helpful for different gun types.

    • @SpasmAtaK
      @SpasmAtaK Год назад

      It would seem logical that for something to die it would need to have lived in the first place, so everything that can die must have had health at some point. Even if health was only 1 hp...

  • @Army21
    @Army21 Год назад +2

    Really great tutorial. One minor point, doing health

  • @ry6554
    @ry6554 Год назад +1

    I like to combine the use of blueprint interfaces with actor components, as I need to communicate actor components between each other without hard referencing them.
    I also figured out that I could override component functions by binding custom event dispatchers to custom events.
    This basically allows me to reuse code as much as possible, which is very nice.
    If you figure this out, could you do a video on it?
    I could explain it to you in more detail, but I might not respond promptly.

    • @alejandrodoradom
      @alejandrodoradom Год назад +1

      It would be great if you could explain how to communicate actor components between each other without hard referencing them. I have been looking for this particular subject for a while and I haven't been able to find anything online about it.

  • @Mario543212
    @Mario543212 Год назад +3

    "This was the whole point of the video and I forgot to add them." 😂

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      only the BEST content on this channel ;) hehe

  • @fanarshatal2692
    @fanarshatal2692 2 года назад +1

    Awesome Brandon! Thanks you a lot!!!!!!!

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      you are very welcome! thank you for watching :)

  • @Wild_Jou
    @Wild_Jou 2 года назад +2

    Could you teach how to move a player by dice between squares on a board? like a parcheesi or Monopoly

  • @Spoiledbologna
    @Spoiledbologna 10 месяцев назад +1

    This was such a fantastic video. Thank you so much

    • @GlassHandFilms
      @GlassHandFilms  10 месяцев назад

      Oh wow thank you so much for the comment. I really appreciate it and very happy you watched it! Cheers!

  • @thomaskneisel1854
    @thomaskneisel1854 Год назад

    why not using the eventdispatcher of the actor to emit messages and the components can react to the messages? The Hitbox component trigger some event on the actor including damage, the damage component get the message calculate the deal amount (+- resistence etc) and trigger the tookDamage Event on the actor and the health component took the damage, calulate the amount (+- shields etc) and could trigger a died/destroyed event, so you can have animation/sound/VFX components to react to this events, too. This feels more resusable and you decouple the components completly. I realy like your videos, thx :D

  • @ATomCzech
    @ATomCzech 11 месяцев назад +1

    Awesome tutorial. I would just increase font size a little bit, it is quit hard to read with youtube compression especially on non 4k screens.

    • @GlassHandFilms
      @GlassHandFilms  11 месяцев назад

      Thank you very much!! I always forget to do this with unreal engine and blenders UI 😅 I'll definitely try to keep that in mind for the future. Cheers!!

  • @joshua42777
    @joshua42777 8 дней назад +1

    Thank you so much for sharing! No more spaghetti code!

    • @GlassHandFilms
      @GlassHandFilms  8 дней назад +1

      @@joshua42777 you're very welcome! I honestly keep forgetting about actor components and then when I do remember, I kick myself for forgetting 🤣🤣 cheers!

  • @kfirkfir
    @kfirkfir 2 года назад +1

    Very good video thanks!

  • @Baleur
    @Baleur 2 года назад +1

    12:00 im totally new so this may be dumb.
    But this really confuses me, why do you add the "damage taken" amount into the same self-actor that is being attacked?
    Doesnt that mean that, if we have "Enemy-A", and select it in the editor and edit his "DamageAmount" variable to say 30, HE himself will now TAKE 30 damage regardless of who else is attacking him?
    Shouldnt the damage amount taken, be a component on the weapon itself?
    Or am i understanding this completely wrong? It seems to me what you're doing here is basically using "DamageAmount" as what SHOULD really be called "Health".
    Because you're not taking the TARGET's health and subtracting it, you're taking the components OWNER and subtracting the health, by the same OWNER's own "damageamount" value (which i here assume means DPS, or damage OUTPUT for instance the lethality of a weapon).
    Wouldnt this mean that the Box you're jumping on, uses its OWN damage output value, to hurt itself.
    Rather than using the CHARACTER's damage value (for instance the damage of a weapon or its jump slam attack)?
    So a peon with a wooden stick that deals 5 damage, would TAKE 5 damage no matter who attacks him, even if another knight with a silver sword that deals 50 damage would attack him.. Since the damage and health are getting the same owner.
    21:48 surely this top section should be in a seperate "damage applied" component of whatever weapon / projectile is attacking something?

  • @jensjensen4038
    @jensjensen4038 8 месяцев назад +1

    But can you reverse the float variable in the non transform variant in the blueprint? Also why is the boolean always in the elum next to is valid?

    • @GlassHandFilms
      @GlassHandFilms  8 месяцев назад +1

      I'm not sure how to answer your first question, can you please eraborate? As for the second question, are you asking about the death component? And why did I add the "is valid" and "bool" branch?
      If so I can answer that. The is valid checks to make sure that the death component is added to the blueprint class. This is a precaution to make sure the component is added. This also helps with errors and returning null exceptions. So it will keep your game from crashing if you forget to add it. It's also great for branching logic.
      So if the component is present and valid, we check the health and return true if it is less that 0, meaning the actor has died.
      I hope that helps!

  • @theapein
    @theapein 2 года назад +1

    How would you go about dealing with enemy attack that not only deals damage but also applies debuf to stats perhaps also adds bleed etc. Would you create separate components for every attribute player/enemy has or can you create one big component holding every stat? Also how to make it work with UI elements and basically update health/mana/energy bars, UI info about attributes etc. Would you update all attributes at once or one at a time? Not sure if my question makes sense xD it's quite a big one

  • @Radeonoff
    @Radeonoff 2 года назад

    pls make video about takin damage in general. we have a lot of damage functions and events in actor bps out of the box but i never saw anyone using them.

  • @Arrkail
    @Arrkail 2 года назад +1

    that's extremely helpful thank you so much for sharing!

  • @roryobrien6655
    @roryobrien6655 6 месяцев назад +1

    Question - If I intend to put these components on my player character, how can I make the damage amount be something controlled by outside factors - for instance if I want 3 different enemy ai who all have a hit strength of 10, 20, 50, respectively - how would I get this system to be responsive to all of the different damage calculations?

  • @guillermo3dcode
    @guillermo3dcode Год назад +1

    Thanks for this awesome tip ! I give you a like and suscribe 😃😃👍

  • @Vilde321
    @Vilde321 2 года назад

    How possible would it be to get a tutorial or some tips video about a custom movement component? I'd like to craft my own and dont know where to start! I'm very interested in these components!!

  • @QuiteDan
    @QuiteDan Год назад +1

    How would you go about fitting an ApplyDamage interface with these components?
    I'm imagining the actor receives the ApplyDamage message, and then it has to pass identical parameters over to the Damage Component?

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      Hey there! So if you had an interface called "ApplyDamage", you could have the damage component implement that interface and then you would get the APPLYDAMANGE EVENT to update your damage component. BTW, huge fan of yours and love what you are creating! Cheers :D

    • @QuiteDan
      @QuiteDan Год назад +1

      @@GlassHandFilms Haha thanks! Your blueprint series is making me want to refactor a bunch of things, but I must resist for now :D

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      @@QuiteDan :) I wish I could carve out more time for videos! I have a few more videos I would like to add to this subject. Hope to chat more in the future 😁

    • @QuiteDan
      @QuiteDan Год назад

      @@GlassHandFilms cheers! looking forward to it!

  • @plinyvicgames
    @plinyvicgames Год назад +1

    have you ever tried using interface events with components? they seem really powerful, but since most interface messages end up targetting actors instead of the components, the components can never really react to the messages without hard coupling the actor to the components.

    • @ZAPcon
      @ZAPcon Год назад

      From what I've read online, this isn't technically possible; however, I discovered that you can add all of your code into a Function of the Component, and then handle the Interface call on the Event Graph of the owning Actor (drag your component from the component list into the event graph and pull off of it to search for the Function).
      This will also allow for inheritance when you make a child version of the Actor (and seemingly no need to have to connect the function again, despite there not being anything on the Event Graph.
      One thing to note is that if you are looking for any exposed variables and don't see them in the Actor's Details panel in the Level Editor, you just need to scroll down a bit and select the Actor Component from the list. Then you can edit the exposed variables as you would normally.
      While this does work, I am not experienced enough to know if this setup is bad for performance in any way, but I will be using it for now, as it does exactly what I need it to. Good luck!

    • @plinyvicgames
      @plinyvicgames Год назад +1

      @@ZAPcon that works, but it makes me question the usefulness of components. i feel like components should be able to be added to ANY ACTOR and add their functionality. but doing that is basically just making a data container as a property in an actor...

  • @Andrew-wh7uy
    @Andrew-wh7uy 2 года назад +1

    Thank you a lot for the video! It was very useful.
    I have a question. You use events to call blueprints from components. But as a programmer it's more common for me to call functions instead of events. Might I do like that?

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      Absolutely! You can definitely do this Andrew! Thank you for watching :)

  • @shawnbecker1026
    @shawnbecker1026 2 года назад +1

    Hey thanks for the awesome video, do you know if it is possible to pass a custom event or input key into the blueprint component instead of setting the input action key in the
    component ? Basically so i can drop the component into a character and connect it to a custom event or custom input key

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      Hi Shawn! Thank you for watching the video! If I understand you correctly, it sounds like you are trying to create a modular setup where you can just add functionality really quickly. You are definitely on the right path. What I would do is create some custom events in your actor components. Then add you actor components to your character blueprints, and get a reference to them and call their custom events on input key press. Please let me know if I am helpful or not :) I could be misunderstanding you. Cheers!

  • @romanrehacek2739
    @romanrehacek2739 Год назад +1

    pretty tutorial, nice language, good explanation, i just wanted to know what and how to use the actor component so it only took me a few minutes of the tutorial to understand but i kept watching...i started to smile a little when you went to test it and didn't add the actor component to BP_cube, but hopefully everyone will laugh at themselves when they make a similar banal mistake. Thank you

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      Thank you, Roman! I try to be as honest and transparent as much as possible. To me, this channel is about sharing everything :) even the mistakes. Cheers!

  • @GewoonEenNick
    @GewoonEenNick 6 месяцев назад

    Thanks for this video!
    for everyone wanna use Force at location. use Extremely high values. otherwise it wont do stuff

  • @xionnine
    @xionnine Год назад

    Very cool tut, how can we get this to work while shooting it?

  • @JM-ty6uq
    @JM-ty6uq Год назад

    Thanks for the great vid! Helped me to understand actor components more deeply. One question I have: When is it appropriate (a good idea) to separate one actor component into multiple? For example, you could combine the Health, damage and death components into a 'LifeCycle' component, which contains the variables and events of all three. This would reduce the amount of components in your project, but it may make the combined component larger and messier to work with. I am not sure what would be the correct time to do the separation.

  • @gamerdweebentertainment1616
    @gamerdweebentertainment1616 2 года назад

    Ok so this fixed my gripe with having only one Begin Play :)
    I can create HUD pieces also for all of them, right? Cool Beans!

  • @ripples1072
    @ripples1072 Год назад

    I really like blueprints as someone who does not have coding knowellege but a lot of the ways to get functional setups seem unintuitive, reading the documentation can be unhelpful at times too (often it just says "do this")

  • @madeeasy7148
    @madeeasy7148 Год назад

    Hi, thanks for a great tut, everytime i watch a tutotrial on unreal i see people use nodes i never even knew about, i feel like i should know them all. How do you know what to use and when? I really feel like i dont know what nodes to use and where to connect them sometimes! Thanks

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      Hey there! I understand what you mean. To generally answer your question, it's hard to know everything or learn everything all at once. I would encourage you to keep reading about best coding practices and then try to implement them in unreal engine. Of course easier said than done. :) but as time goes on, you will start to develop a "smell" about the code that you write. You will think to yourself, "there has to be an easier way to do this" and eventually that feeling will lead you to more discoveries. Don't fret and try to have fun! :) there is such a thing as over engineering :) Cheers!

  • @Vistorri
    @Vistorri 2 года назад +1

    Great tutorial, cheers

  • @ripples1072
    @ripples1072 Год назад

    this is an awesome video thanks for doing more than just making a functional BP and taking time to educate about best practices. Can you make the text in your videos bigger? it is hard to follow along on my second monitor.

  • @drinkwwwaterrr
    @drinkwwwaterrr 2 года назад +1

    Super helpful, thanks :)

    • @GlassHandFilms
      @GlassHandFilms  2 года назад

      Awesome Jaime thank you for checking it out!

  • @2tired2sleep2
    @2tired2sleep2 2 года назад +1

    please do a video about state machines and animation blueprints/ montages

    • @GlassHandFilms
      @GlassHandFilms  2 года назад

      Awesome! Thank you for the suggestion! I will do my best to cover these topics in an upcoming video

    • @2tired2sleep2
      @2tired2sleep2 2 года назад

      @@GlassHandFilms thank you man, i cant figure it out for the life of me😓😭

  • @gryzlaw
    @gryzlaw Год назад

    Do you think that three components (health, damage and death) would probably work well as one?

  • @TheFunDimension
    @TheFunDimension 2 года назад +1

    Yo, ma dad. This is truly informative. Can you do a tutorial about how would you start making an rpg turn base like Final fantasy or something. But explain it like I’m five and also mentally challenged.

    • @GlassHandFilms
      @GlassHandFilms  2 года назад

      Hahaha thank you for the suggestion. I will try and do an example like this in the future where we make a vertical slice of a game. I think that would be super fun. Cheers!

  • @darkwraithcovenantindustries
    @darkwraithcovenantindustries 2 месяца назад +1

    why should we cast to the BP_ThirdPersonPlayer character instead of using an interface? I thought casting was not a good practice in Unreal?

    • @GlassHandFilms
      @GlassHandFilms  2 месяца назад +1

      @@darkwraithcovenantindustries great question! I would only cast to something if you know that these objects have to exist in memory at the same time. Casting will essentially force you to load any object into memory. So it's not good practice to load game objects that are not relevant to the character all the time. I hope that makes sense! Cheers

  • @Defenceless_baby
    @Defenceless_baby Год назад

    How would you Setup multiple dmg sources example - This character can take fire dmg but will not take Water dmg

  • @WestinsWorldStudio
    @WestinsWorldStudio Год назад

    Very interesting! I'm thinking of applying this Actor Component concept to a short list of enemy characters with different health and defense values etc. Would I create children Actor Components or incorporate these parent Actor Components and modify them within the various children enemy characters? If this makes any sense.... I'm trying to think this through from a parent/children perspective to which these Actor components would interact with.

  • @marcooasan1668
    @marcooasan1668 9 месяцев назад +1

    What is the different making an actor component than create a parent class that handles the health(for instance) and inherit to all child actors? lets say i am making an actor that has health so every child of it has health functions

    • @GlassHandFilms
      @GlassHandFilms  9 месяцев назад

      My first thought would be the modularity of design that you can accomplish with actor components. Let's say you had a table that needs health for some reason before it breaks :) I hope that helps! Cheers!

  • @jongofett2343
    @jongofett2343 Год назад +1

    is their a way to convert a bunch of objects into a bunch of seperate blueprints?

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      If they are placed into your level, you can create a blueprint class from the selected objects. You can also create custom editor blueprints to automate this process for you

  • @xzeryawilliams2979
    @xzeryawilliams2979 Год назад

    My get owner node is not returning the owner actor for my component. I am rewatching this video and I think its because my component is a Child Actor component instead of a regular blueprint component. Would this be correct? If so how do I get the owner of a Child Actor component?

  • @fathom3014
    @fathom3014 2 года назад +1

    First of all i appreciate this video, very insightful as im just learning unreal :D all the info i can get is great, im just curious how would you make different objects do different damage with this? like say different guns, just strictly talking about base damage not any headshot damage or anything like that. so like a pistol would do maybe 10 damage and a sniper does 50

    • @GlassHandFilms
      @GlassHandFilms  2 года назад

      Hey there! You can change the components variables on the blueprints. For example, you add a damage component, then select the variable and on the details panel you can set the default damage variable

  • @shrikerecords
    @shrikerecords 2 года назад +1

    Hey man - thanks for the great tutorial. I am having some issues with this - I have a main BP_plant, im trying to use a component which I have attached to the BP_plant to make it grow untill a max size is reached then spawn a fruit mesh on the plant.. the problem im having is that I cant seem to add code to a fruit mesh and i cant add meshes to a component.. how do i get these things to be referenceable?

    • @Baleur
      @Baleur 2 года назад

      I may be very stupid since im a beginner, but wouldnt you just do what he does in the start of the video? 2:00
      Select your fruit mesh, click "Blueprint" and select "convert selection to blueprint class" then "Harvest components" from "Actor" ?
      Then you have a blueprint of your mesh, which you can add code to, or add a component to.

  • @boristrendafilov2243
    @boristrendafilov2243 2 года назад +1

    That way can you set a different damage values for different "weapons", and different health values for "minions, bosses, etc."?

    • @GlassHandFilms
      @GlassHandFilms  2 года назад +2

      Hi there! You can set the different values in the components variables. Each component is an instance so you are able to change each one individually. Just select the variable and change it in the details panel in the blueprint. Cheers!

    • @boristrendafilov2243
      @boristrendafilov2243 2 года назад +1

      @@GlassHandFilms awesome thank you :)

  • @LegendOfCalvas
    @LegendOfCalvas Год назад +1

    Quick question, I made a health component and put it on an enemy, and it works. However when i put it on another enemy that i have. nothing happens, i have a print string to tell me when damage is applied, it works on the first monster but not the second. i set up the collision the same,etc. but nothing happens to the second enemy?

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      how are you applying the damage? It sounds like maybe you don't have a correct reference to the second monster? Maybe only a direct reference to the first?

    • @LegendOfCalvas
      @LegendOfCalvas Год назад

      @@GlassHandFilms In my "Apply damage" event i've got my sword trace set up and a node for "actor has tag" Set that tag to Damagable I made sure the new enemy had the same tag. but no luck

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      @@LegendOfCalvas hmm I would maybe do some checks and print strings to find what is happening. Maybe do some print strings to make sure the collisions are happening?

    • @LegendOfCalvas
      @LegendOfCalvas Год назад +1

      Yeah, i'll have to fiddle around with it.. I did not know about Components or Blueprint interfaces when I started my venture. and I swear it seems the more I learn, the more steps backwards I need to take. I've got one enemy set up, but I set everything up on it's event graph. Blood emitter/sounds/etc. the sword trace. I don't want all my enemies to die in the same way/play the same sounds. So i'm trying to i guess replicate what I did on the first enemies event graph.. and share it/change animations sounds. depending on what enemy it is.. No idea where to start so im just sitting here staring at youtube trying to smoke enough weed to spark some inner genius i pray i have somewhere! Thanks for the reply sir!

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      @@LegendOfCalvas I don't wish to confuse you, but a good idea that I try to keep in mind is "how can I build a system that I can go back and update easily if I want to?" You are definitely on the right track. Don't get discouraged :) Everyone goes through growing pains when they learn new things. It's kind of the dunning kruger effect. :) Remember SOLID programming principles (single responsibility principle, open-closed principle, Liskov substitution principle, interface segregation principle, and dependency inversion principle) I hope to do a video on this soon and how it applies to unreal engine. Cheers and good luck!

  • @roryobrien6655
    @roryobrien6655 Год назад

    I am having an issue with the overlap that as soon as I touch the character the health amount drops continually and basically disappears to zero in seconds. I could not for instance jump up and down, as soon as I jumped up it would count to zero and destroy. Any idea? Btw I am using a different set of meshes no the box exactly, so really I am running into the object not jumping on it, but I figure it should be the same

  • @rifat.ahammed
    @rifat.ahammed Год назад +1

    Thank you very Much

  • @Enite
    @Enite Год назад

    Still watching, so will delete if you answer it - but why would we have damage and health exist separate from each other? If something has health, it would need the functionality to be damaged. If something can be damaged, wouldn't it need to damage health? Is there a scenario in which they would exist independent from each other?

  • @JulioDevUnreal
    @JulioDevUnreal 11 месяцев назад +1

    thank you for video

    • @GlassHandFilms
      @GlassHandFilms  11 месяцев назад +1

      Awesome! I hope it helped you! Thank you for the comment Cheers!!

  • @wilsontrevillion8717
    @wilsontrevillion8717 Год назад

    HELLO!!! Great Video! I learned a lot but I am trying to get the third person to die...Can you make a video on that?

  • @shrikerecords
    @shrikerecords 2 года назад

    Great tutorial thanks! This doesnt seem to work with NPC's or other types of colisision box's (capsule ect) any ideas opn why that might be? :)

    • @shrikerecords
      @shrikerecords 2 года назад

      Ok worked out why it wasnt working - it was because the collision capsuale wasnt attached to the mesh - so when the NPC started moving around it didnt follow it in game and the player couldnt hit it. :)

  • @ohmyme13
    @ohmyme13 11 месяцев назад +1

    Hi, I have a question. Thanks beforehand.
    I want to have a house with many doors, but only do the event when 1 specific door out of all of them is opened, like a front door. I want to have a singular BP for the doors. In Unity you can just add a script to an object instance, how do I achieve something similar in Unreal? I seem to only be able to create and modify BPs themselves.

    • @GlassHandFilms
      @GlassHandFilms  11 месяцев назад +1

      You could use an actor component to achieve this. Or you could use a blueprint interface (I have a video of that on the channel). If you go the actor component route, you can have a box collision component on your door BP and check to make sure that the actor you are colliding with implements your actor component. Let me know if that makes sense. Cheers!

    • @ohmyme13
      @ohmyme13 11 месяцев назад +1

      ​@@GlassHandFilms Thanks for the reply!
      I'll also watch the interfaces video, heard they are better to use instead of casting when you can.

    • @ohmyme13
      @ohmyme13 11 месяцев назад +1

      @@GlassHandFilms ​ Hi again. I watched the video on Interfaces few days ago, and now came back to this one. It's pretty darn useful. I like reusing things, makes it billion times better & cleaner. Made an Interact system out of Interfaces and Line Traces.
      I'm beginning to get used to Unreal, even though it is stupidly, missing basic features sometimes. Like, it's insane to me that I have to Fix Up Redirectors.
      Though, it forced me to think about version control. With Unity I probably would have never thought about it until it would be too late.
      Great tutorials, short and to the point. Tha'ts why I keep coming back to your vids :p

    • @GlassHandFilms
      @GlassHandFilms  11 месяцев назад +1

      @@ohmyme13 hey there! Great to hear from you again!! That's so awesome to hear. And I strongly recommend looking into a version control system that works for you. It's literally a lifesaver. Especially working in a team. Right now I use git, git LFS, GitHub desktop. I find that it's the cheapest option for me. If you're interested I'll try and make a video on it. I've been way deep into VR for the quest 3. Thinking about making a lot of videos about that topic as well. Cheers 😁

    • @ohmyme13
      @ohmyme13 11 месяцев назад +1

      @@GlassHandFilms I'll watch if you make one! Git is the one I was going for too.
      If you'll make one, don't leave out more complex but needed things. Cheers man :)

  • @aprilhamlincom18
    @aprilhamlincom18 2 года назад +1

    Nice - but why did you make the variables as Health and DamageAmount public if you dont use them from outside?

    • @GlassHandFilms
      @GlassHandFilms  2 года назад +1

      haha I can't believe I forgot to show that functionality! but yes making them public will allow you to change them in the editor by selecting the component. Cheers!

    • @aprilhamlincom18
      @aprilhamlincom18 2 года назад +1

      @@GlassHandFilms i know, i was just wondering why you didnt show that 😅 also - couldnt you not just put all the logic in one single component instead of in three? At least in this case ...

    • @GlassHandFilms
      @GlassHandFilms  2 года назад

      @@aprilhamlincom18 yes absolutely! If that works well for your project, you can create all of the functions in one component.

    • @nigelferguson6203
      @nigelferguson6203 2 года назад +1

      you have to get rid of or increase the clamp to give object more health

  • @slodoco
    @slodoco 5 дней назад +1

    The problem is, this component is only reusable if all the things that die die in the same way.

    • @GlassHandFilms
      @GlassHandFilms  5 дней назад

      @@slodoco this is true in this video. The best thing you could do is try to abstract this even more so you could create variations

  • @manonthedollar
    @manonthedollar Год назад

    Between components, interfaces, and inheritance, I don't think I understand when to use each. Like a door. I think I would instinctually create a Door parent class, and a door can be opened, closed, have an open/closed current state, and it can be locked. Then I would subclass that to make my "real" doors. But I could also see implementing a door interface with those same things. Or add a "door" component or whatever. Ugh.

  • @gamerdweebentertainment1616
    @gamerdweebentertainment1616 2 года назад

    Oh Even doing Health Component, okay... hmmm... I was trying Custom/New Event Graph Approach :)

  • @gamerdweebentertainment1616
    @gamerdweebentertainment1616 2 года назад

    Why Override or it doesn't matter, just habit?

  • @_o__o_
    @_o__o_ 2 года назад +11

    y u look like ma dad ?

    • @dryzoFy
      @dryzoFy Год назад

      He is

    • @TommyGunsXL
      @TommyGunsXL Год назад +2

      He looks like my uncle so you are my cousin.

  • @ChimpoTalksGaming
    @ChimpoTalksGaming Год назад +1

    Don't ever delete the mustache. It makes you.

    • @GlassHandFilms
      @GlassHandFilms  Год назад

      If you take a look at my newest video, mustache is gone 😭

    • @ChimpoTalksGaming
      @ChimpoTalksGaming Год назад +2

      @@GlassHandFilms HOW DARE YOU, SIR!

    • @GlassHandFilms
      @GlassHandFilms  Год назад +1

      @@ChimpoTalksGaming hahaha! Who knows, it might make an appearance soon!!

  • @jeremydemarco8697
    @jeremydemarco8697 2 года назад

    Hi and thanks, I don't have is valid as a boolean but only as a fonction in my list, do you know why ? 11:03

    • @jeremydemarco8697
      @jeremydemarco8697 2 года назад

      Nevermind, there was Get componet "by" class and "By" class, I don't know the difference I am a total noob I barely understand what I do /D thanks !!

  • @OMG3Dmax
    @OMG3Dmax Год назад

    it's very difficult for me to understand how it works and how it works, probably because I need to learn some elementary lessons on function nodes and blueprints

  • @sherifhany386
    @sherifhany386 9 месяцев назад +1

    Why not use interfaces ?

    • @GlassHandFilms
      @GlassHandFilms  9 месяцев назад

      I have a video on the channel about using interfaces. Great thing about components, if you set them up in a modular way, you can easily add them to actors or blueprints

    • @sherifhany386
      @sherifhany386 9 месяцев назад

      I totally understand, I was just thinking why not combine a component and an interface together.. that way all the calls would be over the Interface and all the logic would be on the component

  • @Retrocaus
    @Retrocaus Год назад

    you can do all of this easily with gameplay ability system

  • @ChristopherFranko
    @ChristopherFranko 7 месяцев назад +1

    The audio of this video has ALOT of bass.

    • @GlassHandFilms
      @GlassHandFilms  7 месяцев назад

      I'm still trying to find a good EQ for my videos 🤣 good to know, I'll try to adjust in the future!

  • @oballard7795
    @oballard7795 2 года назад +1

    ƤRO𝓂O𝕤ᗰ 🤘

  • @Norrun-Dev
    @Norrun-Dev 10 месяцев назад

    The start of that music was awful.