Announcement

Collapse
No announcement yet.

[Plugin] OSC for UE4

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

    #76
    As far as I can tell, your blueprints look good.

    I think your issue is that your send address is 127.0.0.1, which mean "myself".
    So the Android is sending to itself, not the PC.

    When a network communication does not work, try to break your problem into many sub problems with tools you know are reliable.
    Example : use TouchOSC on Android to send messages, use an OSC monitor software on Windows to test the receiving part (there might be a firewall, a misconfiguration), etc.

    Comment


      #77
      Originally posted by monsieurgustav View Post
      As far as I can tell, your blueprints look good.

      I think your issue is that your send address is 127.0.0.1, which mean "myself".
      So the Android is sending to itself, not the PC.

      When a network communication does not work, try to break your problem into many sub problems with tools you know are reliable.
      Example : use TouchOSC on Android to send messages, use an OSC monitor software on Windows to test the receiving part (there might be a firewall, a misconfiguration), etc.
      Thanks! I´m using the TouchOSC on Android and it´s working. Also the OSC monitor works fine. The problem is in the app I´m doing in Android that doesn´t seem to connect with the PC. I changed the IP but it still doesn´t work. I´m thinking that maybe the problem is the Android permits but I´m not sure. Do you have another idea about what else might be messing up with the communication would be of much help Click image for larger version

Name:	android_permission.jpg
Views:	1
Size:	245.7 KB
ID:	1093261

      Comment


        #78
        Did you click "set as default" in the OSC plugin settings ?
        That's a tricky thing: unless you click "set as default", the settings are ignored by the build.

        Also, know that you're (one of) the first person to use the plugin on Android !
        I failed to set-up an Android dev env (maybe because if my out of date device), so I can't really help you on any Android specific problem.
        If you can "remote debug" the OSC plugin (put a breakpoint in the C++ "SendOsc" function) it should be OK.

        Comment


          #79
          Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci Merci !!!!!

          Your plugin is just fantastic. It's really nice of you to keep it up to date. Please keep up the good work ;-)

          I tried using it with 4.10.1 and my it would work but really unreliably... meaning sometime it would crash. Sometime not. But as I have a really minimal knowledge of programming I am not sure the problem was your plugin. Actually pretty sure it was not. Here is my post about my crash. I might be helpful...

          https://answers.unrealengine.com/que...101-crash.html

          So for now I got back to 4.7.

          Still thank you so much. Please keep supporting it ;-)

          Comment


            #80
            Glad you like it !

            I had a look at your crash log, and they seem unrelated to the OSC plugin.
            If they are actually related, feel free to post an issue on the GitHub !

            Comment


              #81
              Hi m.gustav.

              Just started using this on a project - it works very well!

              Thanks for your effort kind efforts in the community.

              Is there a way to define the addresses/ports at runtime?

              Dan

              Comment


                #82
                Hi !
                Sorry for the late answer : at the time it was not possible, but now it is !
                The latest commit add the AddSendOscTarget blueprint function.

                Guillaume

                Comment


                  #83
                  That's great! I'll look forward to fiddling with that soon.

                  Great work!

                  Dan

                  Comment


                    #84
                    Hi Monsiergustav,

                    I've been using the plugin to great effect with touchosc - you probably know it. I'm sending commands out of the engine into my iPad to update text fields - because TouchOSC has only non-wrapping text labels I'm using 4 or 5 labels per block of text - and there are about 25 of these blocks.

                    In short I've got a stack on a timer in the engine which I often send 100+ osc commands to. Is there a way to bundle lots of commands into one osc transmission for a more optimised

                    A label might be a string sent to /data/label(n)/text 100 times - I have to throttle the osc txrate or I lose data

                    Thanks! And great work.

                    Dan

                    Comment


                      #85
                      Hi !
                      Indeed, an "OSC bundle" is a container, that may contains other bundles and messages.
                      It is sent in one piece and the order of inner bundles/messages is kept.

                      If you really need to update every line every frame (do you ?) I agree it would probably solve your issue.

                      It is not (yet) supported by the plugin though, but file an issue on the GitHub (https://github.com/monsieurgustav/UE4-OSC) as a reminder.

                      Comment


                        #86
                        It's not every frame. What i've got is like a quiz game. The 'host' has an ipad with all the questions and answers on and triggers the engine to display/reveal answers. On the engine side i'm loading the question data from an SQLite database and sending this data over to the iPad. So when we select a new question the whole ipad interface is altered, as well as the 100 or so text labels, I sometimes have to refresh positions,opacity, and colour of each label - which can be 500 or more OSC tx's at a time. This is why I use a stack.

                        I'll add a request to your github page. I imagine you'll have a struct with the address and data in an array which is bundled maybe?

                        Thanks so much - it's really helping me develop my game prototypes - before I was using python as an OSC intermediary and sending commands through it over a socket connection.

                        Dan

                        Comment


                          #87
                          It is quite overkill to run UE4 to prototype OSC messaging...

                          But I do exactly the same: I find it much easier to use than python, Pd, etc.

                          Comment


                            #88
                            I use unreal to prototype gameshow ideas for a TV company. If i'm not there when they're pitching ideas (like yesterday) I have to talk someone through finding ip addresses, editing the python scripts to do this etc. It's a nightmare - Ive also found it's actually a lot more responsive to have the iPad to talk directly to the engine too.

                            I had a problem yesterday (my stupid fault) where I was setting a default ip for the OSC target at begin-play in my OSC blueprint, but at the same time another blueprint was reading a database and pulling an IP from that and setting a target IP too. On the machine they were using the OSC blueprint with the default IP lost the race and was set second, if you know what I mean, so they couldn't control the system - it's always a nightmare when i'm not there!

                            Comment


                              #89
                              You use AddSendOscTarget to do that ?

                              It returns an index to actually send a message to the new "target".
                              You should set a variable with this index and use it in SendOsc function.
                              Hardcoding "1" is hardly a good idea...

                              Comment


                                #90
                                No, I had a custom event which adds a target, then sets the new target index as the 'one to use' variable. It messed up because of the order I called it.

                                Comment

                                Working...
                                X