In the Unity Editor, using the blocking call UdpClient.Receive()
when UdpClient.Available > 0
works just fine in various versions of Unity 5.x, seemingly up to 5.6 where Available
is always zero. Ditto with Unity 2017.
The editor reports Mono 2.0 in all cases (tried the later experimental version in 2017.1 which reports as 4.8 but no change).
It doesn’t seem to be a Mono or .NET problem as the same receiver call works fine in test apps outside of Unity.
I hope to get this working in all versions of the Unity editor, as it’s specifically for editor use (reading Gear VR controller output and displaying in the editor).
Any insights greatly appreciated.