Skip to content
This repository was archived by the owner on Jan 3, 2019. It is now read-only.

OSCreceiver starts UPD listener already when project is loaded if Autostart is enabled #15

Open
SpotlightKid opened this issue Aug 14, 2018 · 2 comments

Comments

@SpotlightKid
Copy link
Contributor

When the Autostart property of OSCreceiver is enabled, it already starts an UDP listener when the project is loaded into the editor. This can be seen by the messages printed to the console at project loading time:

OSCreceiver::_notification, starting reception
OSCreceiver::start on port 9000
OSCReceiver socket thread started

When the project is run, it tries to start another UDP listener and fails, because the port is already in use:

OSCreceiver::_notification, starting reception
OSCreceiver::start: unable to bind udp socket

As a consequence OSC message reception by the scene does not work.

The UDP listener should only be started when the scene containing the OSCreceiver node starts, as the readme claims.

Workaround: disable Autostart and add start() to _ready:

extends OSCreceiver

func _ready():
    start()

This is on Godot compiled from current Git repo (commit c0137db76). I tested both the master and the develop branch of gdosc and they both exhibit the same problem.

@djiamnot
Copy link
Owner

The current develop branch (commit 5c07388) should fix this behavior. I will keep this issue open because there is still a need for the UDP listener to be functional when tool mode, is being used. At this point we cannot use OSCreceiver in _tool_mode.

@SpotlightKid
Copy link
Contributor Author

I can confirm that the UDP listener no longer starts on project load.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants