OSC(Open Sound Control)
简单来说,OSC是一种网络传输协议,它允许在不同设备或软件之间通过网络进行信息传输。可以定义任何东西,在一定的规则下把信息通过网络从一个设备传输到另一个设备。通常OSC信息都是通过UDP来传送的,也就是说任何接收设备只要与发送设备在同一个网络中,并且监听同一个端口,那就能收到这个信息。最初设计这个协议的目的是为了在音乐交互演出中使得各个乐器传输信息和控制器更为方便(这就是为何要叫Open Sound Control)。比起MIDI标准的工业框架和限定好的端口标准,OSC最大程度的诠释了“自定义”的概念。理论上来说你可以用它来传输任何的信息。
UnityOSC的核心特点是其两个主要组件: OSCHandler 和 OSCReceiver 。
OSCHandler 用于构建和发送OSC消息到指定的地址和端口。
OSCReceiver 用于监听特定端口上的OSC消息,并将其传递给Unity应用进行处理。
这两个组件使得在Unity中实现OSC通信变得简单和直接。
应用场景:
1. 游戏开发:在游戏开发中,OSC可以用于实现玩家输入设备(如特殊控制器)与游戏之间的通信,或者在游戏中实现网络同步。
2. 远程监控与控制:在工业或科研领域,OSC可以用于远程监控设备状态,并通过Unity应用进行控制。
UniOSC插件
UniOSC插件是一个专为 Unity3D 设计的插件,它实现了 Open Sound Control (OSC) 协议,允许 Unity 应用程序与使用 OSC 协议进行通信的硬件或软件进行交互。这个插件非常适合需要在局域网内进行通信的场景,能够实现数据的接收和发送。
TouchOSC Editor
TouchOSC Editor是一个功能强大的集成编辑器,它允许用户在所有平台上创建和编辑控制界面。
特点:
1. 跨平台支持:TouchOSC Editor可以在iOS、Android、Windows、macOS等平台上使用。
2. 多文档编辑:可以同时打开多个文档,并且布局的各个部分可以互相复制。
3. 用户友好的界面:提供直观的操作和调试OSC消息的图形化界面。
创建布局
如何将排好的布局放到手机上呢?
方式一:
安卓:点击Save保存到本地(填写布局名字),点击Sync,在手机上点击Layout,点击AddfromEditor,写入电脑IP地址,点击下方电脑名字,弹窗提示是否替换,选择Yes
IOS:把保存的文件放到手机目录,在手机上点击Layout,点击AddfromFile,找到手机文件夹存放到内存
方式二:
安卓:点击Save保存到本地(填写布局名字),点击Sync,在手机上点击Layout,点击AddfromEditor,写入电脑IP地址,点击下方电脑名字,弹窗提示是否替换,选择Yes
IOS:从官网下载iTunes,把iphone手机连接上,在应用程序里找到TouchOSC软件,在布局列表里点击Add添加布局
UniOSC的四个虚拟场景
给Cube改变颜色:添加Change Color组件添加上RGB地址
让两个物体同时改变颜色:为Sphere添加同样的材质球, Cube的Change Color组件勾选上Shared Material
一个设备发送一个地址
应用场景:
灯光控制:调节舞台灯光的亮度或颜色。
音频调节:改变音乐播放的音量或均衡器设置。
游戏操作:通过按钮触发游戏内的一个动作,如跳跃或射击。
智能家居:远程开启或关闭家中的智能设备,如空调或电视。
一个设备同时发送多个地址
应用场景:
机器人控制:同时调整机器人的多个关节,以执行复杂动作。
虚拟现实设置:调整VR环境中的多个参数,如用户位置、视角和环境光照。
自动化生产线:同时控制多台机器的运作,以优化生产流程。