Unreal Engine Interaction - Event Dispatchers tutorial

Поделиться
HTML-код
  • Опубликовано: 9 мар 2023
  • #unrealengine #tutorial
    Welcome to the final episode in our Unreal Engine Basics series! Today, we bring it all full circle by incorporating an event dispatcher into our bouncing ball actor. The objective is to create a seamless interaction where each bouncing ball can respond to the event dispatcher, executing unique logic whenever another bouncing ball broadcasts an event. Let's wrap up our learning journey on a high note!
  • НаукаНаука

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

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

    Very good introduction for beginner as me, I dont know why few people watch this. it's very clear and useful, it shoud be recommended much

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

      Thanks a lot! I was trying to make focused on people how are not complete beginners, but also not experts yets. Something you can follow and fill in the gaps on with stuff that you might know is possible but aren't 100% sure on how to do.
      I also wish this was recommended more :p

  • @harrysanders818
    @harrysanders818 9 месяцев назад +2

    I really like your naming! I once read "Good code should read like a story" , it has so many benefits vs cryptic and haphazard naming.

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

      Thanks! I think it comes from my background not being in science. I learned programming like a spoken language rather than math equations.
      I like stuff like this
      If
      "the_door_is_open"
      then
      "walk_through()

  • @nordiclegacystudios
    @nordiclegacystudios 11 месяцев назад +2

    I was looking for a simple tutorial just to get the basics of Event Dispatchers. I think you nailed it :)

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

      Thanks!
      I really appreciate it Any other subjects you'd like to see like this?

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

    Best Explaination so far, thanks a lot

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

      Thanks! I really appreciate it. Its comments like this that really motivate me to make videos :D

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

    Great tutorial!! Thanks for sharing it!! I appreciate it!!

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

      Thanks alot! Glad you liked it 🙂

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

    It would be fun to have each of them randomly "react" wirh a "gasp" or an "oh no!" When they get destroyed and when the last one is left it could beg not to be destroyed! Lol
    This has a big gameplay aspect for when you are trying to find clues or collectibles in a game map and the mission trigger is only activated once the last item or mission is complete!!

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

      Hah! thats a really good idea.
      what I really love about game development is that you can actually create fun and engaging gameplay only using simple methods. You don't need to know all of unreal engine to make a game. Just learn a few things, look out for opportunities to make something fun and build the game
      Would love to see it if you were to build this :D

  • @user-yk2dc6yr7q
    @user-yk2dc6yr7q 7 месяцев назад

    0:00 my timestamp, going to try to learn more about event dispatchers

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

      Awesome! let me know how it goes and if there is something I can add in future videos :D

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

    👍👍👍👍👍👍

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

      Thank you! :D

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

    is there a way to do this without using get all actors of class?

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

      Yeah definitely!
      One way would be to make it so that on BeginPlay each one of the spheres register itself to a global object. For example, create an array on the gamemode called "ActorsToMonitor" or something like that.
      That way you don't have to do GetAllActorsOfClass() but can rather do GetGamemode->GetActorsToMonitor and loop through that to bind
      This is a pattern called "publish-subscribe" in computer science and can be tricky to solve well in some cases. The problem to solve is you need to know which actors are publishing (or broadcasting events) and which actors should subscribe (or bind to the events).
      But if the pub-sub relation ship never changes. that is on BeginPlay the actor should always just listen to a set number of actors then GetAllActorsOfClass is fine
      If you want to do this dynamic, where new actors are spawned into the level and you want the listener to bind to the new actors then having them register to a global object like I mentioned could work.
      The real tricky part starts when you need to also remove the bindings based on some criteria, like if an actor has moved too far away from the listener then remove the binding and if it gets close enough add it :)

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

    Good stuff man!
    One question, when you are binding to the event (Around 3:50) you attach an output array of BP_bouncingballs to a single input. Does UE5 automatically do a "for each loop" there? Thanks!

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

      Thanks a lot!
      The Bind Event node is made in a way that it accept an array as an input. So the event will bind to either a single entry or every entry in an array.
      Behind the scenes its probably doing a "for each loop" when it does the binding, but for us in blueprint land we can use it like this :D

  • @PeterWraaeMarino
    @PeterWraaeMarino 3 месяца назад

    over complicated to demostrate dispatchers

    • @gisli
      @gisli  3 месяца назад

      Thanks for the feedback! do you have an example of a good resource to tech event dispatcher?

    • @PeterWraaeMarino
      @PeterWraaeMarino 3 месяца назад

      @@gisli my advice is to start the default third person scene (everybody will have the same starting position when doing the tutorial). Then keep the dispatcher as simple as possible, something like when you run into a cube you get an event. Simply is the way to go.