Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jorgegarcia/UnityOSC
Open Sound Control (OSC) C# classes interface for the Unity3d game engine
https://github.com/jorgegarcia/UnityOSC
unity unityosc
Last synced: about 2 months ago
JSON representation
Open Sound Control (OSC) C# classes interface for the Unity3d game engine
- Host: GitHub
- URL: https://github.com/jorgegarcia/UnityOSC
- Owner: jorgegarcia
- Created: 2010-12-30T17:29:08.000Z (almost 14 years ago)
- Default Branch: master
- Last Pushed: 2020-11-13T10:15:12.000Z (about 4 years ago)
- Last Synced: 2024-08-02T17:33:25.911Z (5 months ago)
- Topics: unity, unityosc
- Language: C#
- Homepage:
- Size: 1.53 MB
- Stars: 495
- Watchers: 70
- Forks: 124
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## UnityOSC v1.2.
Open Sound Control classes and API for the Unity 3d game engine
Based on Bespoke Open Sound Control Library by Paul Varcholik ([email protected]).
Licensed under MIT license.***THIS REPOSITORY AND PROJECT IS NO LONGER SUPPORTED OR MAINTAINED. After 10 years, I've decided not to continue with its development***
***Please consider the following alternatives (more modern and better) for using OSC in Unity:***
* [OscCore](https://github.com/stella3d/OscCore)
* [extOSC](https://github.com/Iam1337/extOSC)
* [OscJack](https://github.com/keijiro/OscJack)## How to use UnityOSC
### Install
Copy the src/Editor folder contents to the corresponding Editor/ folder of your Unity project. The rest can go to your e.g. Assets/ folder of the same project.
### Usage
There are two different approaches to use the plugin:
#### OSCHandler
The first and original approach works by modifying and initializing the `OSCHandler`. It is a Singleton handling your client & server connections and sending & receiving OSC data. Additionally, all incoming and outgoing messages are logged and can be viewed in an Editor Window.
Check the documentation below for more detailed instructions.
#### OSCReceiver
The second approach is a simple `OSCReceiver` which only supports receiving OSC data but with the benefits of reduced complexity and a thread-safe `OSCMessage` queue.
After opening a server connection by `OSCReceiver.Open(int port)` you can easily receive new OSCMessages via `OSCReceiver.getNextMessage()`. Always make sure there are OSCMessages available by using `OSCReceiver.hasWaitingMessages()` before trying to receive new ones.
## Documentation and examples of usage
docs/doxygen/html/index.html
docs/UnityOSC_manual.pdf
docs/UnityOSC & TouchOSC Integration.pdf
Please head to the tests/ folder for examples of usage and a TouchOSC test Unity project.
## TODO
07.11 Change string concatenations to C# string builders.