hyperPad hyperPad Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Login

    Which more expensive: Broadcast or Conditional?

    Scheduled Pinned Locked Moved
    Help and Support
    5
    14
    521
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • KamdroidK
      Kamdroid @Deeeds
      last edited by Kamdroid

      @Deeeds You might want to ask the developers.

      I would think that a broadcast/broadcast receive would impact more than a conditional, since broadcast receive behaviours are always waiting for a message to be broadcasted to them.

      If you end up getting an answer, let me know too.

      D 1 Reply Last reply Reply Quote 0
      • D
        Deeeds @Kamdroid
        last edited by

        @Kamdroid I was kind of hoping they just read these forums as a matter of course. It's not like there's much in here ;)

        Except for my dribbles and rants.

        I'm not so sure about the listeners actively listening. This might be just a metaphor being used. They're probably sitting in an array or dictionary that's messaged only when a "broadcast" is sent, meaning highly efficient. Possibly more so than conditionals.

        boring story approaching: A friend of mine, a few years ago, spent a huge amount of time teaching me to not use ifs because he'd found them to be a bit of a drag in high frequency stuff. We were doing lots of particles, where the volume of activity was enormous, but we always wanted more. More particles = good! It was all C++ and he had some pretty tight stats on it all. Made me a believer, even if I didn't fully understand where he was headed with it all.

        The bottom line was polymorphism being used correctly, I'd dare say. He is a bright guy. I'm just a designer, but it fascinated me that he'd figure how to remove ifs like they were parasites.

        1 Reply Last reply Reply Quote 0
        • HamedH
          Hamed Admin
          last edited by

          Broadcasts are really fast. They are much faster than using collisions or something like that. @Deeeds it works like you think it is.

          D 1 Reply Last reply Reply Quote 1
          • D
            Deeeds @Hamed
            last edited by

            @Hamed BEST NEWS TODAY! I can and will base most of what I'm doing around them, then. And use them like function/method calls all over the place. I thought this might have been one of the ways you were making them useful.

            THANK YOU!!! Way to go!

            1 Reply Last reply Reply Quote 0
            • HamedH
              Hamed Admin
              last edited by

              @Deeeds The only thing i would suggest doing is leaving little comments for your self otherwise you will have a bunch of broadcasts and receives that you don't remember what they're for.

              D Aidan_FireA 2 Replies Last reply Reply Quote 0
              • D
                Deeeds @Hamed
                last edited by

                @Hamed Yeah, I have a Notes file with that sort of gunk. I've been meaning to request picking Event Keys operate like Behaviour On/Off where there's a long list of all possible ones, by alphabetical order, by object/original origin.

                1 Reply Last reply Reply Quote 0
                • Aidan_FireA
                  Aidan_Fire @Hamed
                  last edited by

                  @Hamed Are broadcasts expensive at all? For example, in my 3D project the faces of a shape have to conform to 3 points, I’ve done this (messily) by colliding with those 3 points (they’re in a tag) and then basically getting the position on a timer of the object it collided with. Is this at all more efficient that constantly broadcasting dynamic messages?

                  iTap DevelopmentI 1 Reply Last reply Reply Quote 0
                  • iTap DevelopmentI
                    iTap Development @Aidan_Fire
                    last edited by

                    @Aidan-Oxley I would think broadcast would be better. Because otherwise you have objects with collisions, but you wouldn’t need that if you didn’t use collide.

                    1 Reply Last reply Reply Quote 0
                    • HamedH
                      Hamed Admin
                      last edited by

                      The only expense is having a lot of logic in the receive message side. Physics engine is much slower to do those kind of tasks.

                      Aidan_FireA 1 Reply Last reply Reply Quote 0
                      • Aidan_FireA
                        Aidan_Fire @Hamed
                        last edited by

                        @Hamed The collision happens once. The face collided with one point, the turns off that collision and moves to another point. It does this 3 times with 3 separate collision behaviours. Once it’s done, it waits until everything else has finished loading, then runs a timer on the behaviours underneath the collisions so that it can get information on those 3 objects. So this is more efficient than broadcasting a message on a timer containing an objects position right?

                        1 Reply Last reply Reply Quote 0
                        • HamedH
                          Hamed Admin
                          last edited by

                          No broadcasting is still much faster. You can avoid timers and delays and collision take multiple time steps

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post