protected virtual void Start() { // Register receive callback. Receiver.Bind(_address, MessageReceived); // Create message var message = OSCMessage.Create(_address); // Create array var array = OSCValue.Array(); array.AddValue(OSCValue.Int(1)); // You can use AddValue(OSCValue) method only with OSCValue what stored Array type. array.AddValue(OSCValue.Float(2.5f)); array.AddValue(OSCValue.Color(Color.red)); // You can store another array inside array. // Warning! OSCValue with "Array" type cannot store itself. It can do infinite loop. var secondArray = OSCValue.Array(); secondArray.AddValue(OSCValue.String("This array...")); secondArray.AddValue(OSCValue.String("...inside another array!")); array.AddValue(secondArray); // Add array in message message.AddValue(array); // Send message Transmitter.Send(message); }
public void SendColor() { var color = new Color(Random.value, Random.value, Random.value); Send(_colorAddress, OSCValue.Color(color)); TransmitterImageColor.color = color; }
public static OSCValue CreateOSCValue(OSCValueType valueType) { switch (valueType) { case OSCValueType.Unknown: return(null); case OSCValueType.Int: return(OSCValue.Int(0)); case OSCValueType.Long: return(OSCValue.Long(0)); case OSCValueType.True: return(OSCValue.Bool(true)); case OSCValueType.False: return(OSCValue.Bool(false)); case OSCValueType.Float: return(OSCValue.Float(0)); case OSCValueType.Double: return(OSCValue.Double(0)); case OSCValueType.String: return(OSCValue.String("")); case OSCValueType.Null: return(OSCValue.Null()); case OSCValueType.Impulse: return(OSCValue.Impulse()); case OSCValueType.Blob: return(OSCValue.Blob(new byte[0])); case OSCValueType.Char: return(OSCValue.Char(' ')); case OSCValueType.Color: return(OSCValue.Color(Color.white)); case OSCValueType.TimeTag: return(OSCValue.TimeTag(DateTime.Now)); case OSCValueType.Midi: return(OSCValue.Midi(new OSCMidi(0, 0, 0, 0))); case OSCValueType.Array: return(OSCValue.Array()); default: throw new ArgumentOutOfRangeException(); } }
protected override void ValueToOSCValues(List <OSCValue> values, Color value) { values.Add(OSCValue.Color(value)); }
protected override void FillMessage(OSCMessage message, Color value) { message.AddValue(OSCValue.Color(value)); }