All Projects → Iam1337 → Extosc

Iam1337 / Extosc

Licence: mit
extOSC is a tool dedicated to simplify creation of applications in Unity with OSC protocol usage.

Programming Languages

csharp
926 projects

Projects that are alternatives of or similar to Extosc

Ma textureatlasser
Texture atlas creator for Unity
Stars: ✭ 116 (+68.12%)
Mutual labels:  unity, unity3d, unity-editor, unity3d-plugin
Awesome Unity Open Source On Github
A categorized collection of awesome Unity open source on GitHub (800+)
Stars: ✭ 1,124 (+1528.99%)
Mutual labels:  unity, unity3d, unity-editor, unity3d-plugin
Unity Script Collection
A maintained collection of useful & free unity scripts / library's / plugins and extensions
Stars: ✭ 3,640 (+5175.36%)
Mutual labels:  unity, unity3d, unity-editor, unity3d-plugin
Jengine
JEngine是针对Unity开发者设计的开箱即用的框架,封装了强大的功能,小白也能快速上手,轻松制作可以热更新的游戏 | JEngine is a streamlined and easy-to-use framework designed for Unity Programmers which contains powerful features, beginners can start up quickly and making hot update-able games easily
Stars: ✭ 564 (+717.39%)
Mutual labels:  framework, unity, unity3d, unity3d-plugin
Unity Quicksheet
Unity-QuickSheet enables you to use spreadsheet file data within Unity editor.
Stars: ✭ 742 (+975.36%)
Mutual labels:  unity3d, unity-editor, unity3d-plugin
Restclient
🦄 Simple HTTP and REST client for Unity based on Promises, also supports Callbacks! 🎮
Stars: ✭ 675 (+878.26%)
Mutual labels:  unity, unity3d, unity3d-plugin
Tracerysharp
C#/Unity port of Tracery (heavily WIP)
Stars: ✭ 19 (-72.46%)
Mutual labels:  unity, unity3d, unity-editor
Uduino
Simple and easy connection between Arduino and Unity
Stars: ✭ 25 (-63.77%)
Mutual labels:  unity, unity3d, unity3d-plugin
Unitynativescripting
Unity Scripting in C++
Stars: ✭ 844 (+1123.19%)
Mutual labels:  unity, unity3d, unity-editor
Ubernet
Flexible networking library for Unity
Stars: ✭ 10 (-85.51%)
Mutual labels:  unity, unity3d, unity3d-plugin
Scene View Bookmarks
Unity editor extension to bookmark scene views.
Stars: ✭ 40 (-42.03%)
Mutual labels:  unity, unity3d, unity-editor
Unityasync
Task and Async Utility Package for Unity. Start co-routines from anywhere.
Stars: ✭ 58 (-15.94%)
Mutual labels:  unity, unity3d, unity3d-plugin
Lunar Unity Console
High-performance Unity iOS/Android logger built with native platform UI
Stars: ✭ 628 (+810.14%)
Mutual labels:  unity, unity3d, unity3d-plugin
Centrifuge
Cross-platform runtime mod loader and API for any Unity-based game. Supports Unity 5 and up!
Stars: ✭ 18 (-73.91%)
Mutual labels:  framework, unity, unity3d
Unitymeshsimplifier
Mesh simplification for Unity.
Stars: ✭ 592 (+757.97%)
Mutual labels:  unity, unity3d, unity3d-plugin
Spritedicing
Unity extension for reusing sprite texture areas
Stars: ✭ 589 (+753.62%)
Mutual labels:  unity, unity3d, unity3d-plugin
Unity Assetpipeline Presentation
Unity project for "A Technical Deep-Dive into Unity's Asset Pipeline" presented at Develop: 2018
Stars: ✭ 31 (-55.07%)
Mutual labels:  unity, unity3d, unity-editor
Bepinex
Unity / XNA game patcher and plugin framework
Stars: ✭ 1,001 (+1350.72%)
Mutual labels:  framework, unity, unity3d
Unity3d Rainbow Folders
This asset allows you to set custom icons for any folder in unity project browser.
Stars: ✭ 519 (+652.17%)
Mutual labels:  unity, unity3d, unity3d-plugin
Uniuguitoolbar
【Unity】uGUI のオブジェクトを作成できるツールバーのエディタ拡張
Stars: ✭ 44 (-36.23%)
Mutual labels:  unity, unity3d, unity-editor

extOSC - Open Sound Control Protocol for Unity

Created by V. Sigalkin (dr. ext)

openupm GitHub release (latest SemVer including pre-releases)

What Is extOSC?

extOSC (Open Sound Control Protocol) is a tool dedicated to simplify creation of applications with OSC protocol usage in Unity (Unity3d). Supported platforms are PC, Mac and Linux / iOS / tvOS / Android / Universal Windows Platform (UWP) and other.

Also extOSC is available on the Unity Asset Store for free.

Release Notes:

You can read release notes in versions.txt file.

Features:

  • OSC with coding
    Massive implementation of methods, utils, and other for simple operations with OSС through code.
  • OSC without coding
    With extOSC components you can easily implement basic program logic in your application without coding. Components for basic functions: sending, receiving, mapping.
  • OSC Console
    New separated console for tracking sending and receiving OSC packages: Video.
  • OSC Debug
    New easy to use tool for debugging sending and receiving OSC packages: Video.
  • Map OSC packages
    OSCMapping allows you to map float values: Video.
  • UI
    Four new UI-components for easy creation of remote control apps with OSC-protocols: Video.
  • Addresses with masks support
    You can bind addresses with mask (for instance: "/lights/*/value").
  • Auto pack bundle
    extOSC will bundle your packages for optimisation purposes.

And also:

  • Every data type support (include Array and MIDI)
  • Compatible with OS X, Windows, iOS & Android, Windows Store (Hololens and Hololens 2)
  • Tested with TouchOSC, VVOpenSource, OpenFrameworks and others frameworks and applications
  • Examples

And much more

Installation:

Old school

Just copy the Assets/extOSC folder into your Assets directory within your Unity project, or download latest extOSC.unitypackage.

OpenUPM

Via openupm-cli:

openupm add com.iam1337.extosc

Or if you don't have it, add the scoped registry to manifest.json with the desired dependency semantic version:

"scopedRegistries": [
	{
		"name": "package.openupm.com",
		"url": "https://package.openupm.com",
		"scopes": [
			"com.iam1337.extosc",
		]
	}
],
"dependencies": {
	"com.iam1337.extOSC": "1.19.5"
}

Package Manager

Project supports Unity Package Manager. To install the project as a Git package do the following:

  1. In Unity, open Window > Package Manager.
  2. Press the + button, choose "Add package from git URL..."
  3. Enter "https://github.com/iam1337/extOSC.git#upm" and press Add.

Examples:

Create OSC Transmitter

// Creating a transmitter.
var transmitter = gameObject.AddComponent<OSCTransmitter>();

// Set remote host address.
transmitter.RemoteHost = "127.0.0.1";    

// Set remote port;
transmitter.RemotePort = 7001;         

Or you can simple create OSCTransmitter component in Unity editor, or use Create/extOSC/OSC Manager in Hierarchy window.

Send OSCMessage

// Create message
var message = new OSCMessage("/message/address");

// Populate values.
message.AddValue(OSCValue.String("Hello, world!"));
message.AddValue(OSCValue.Float(1337f));

// Send message
transmitter.Send(message);      

Or you can use any extOSC/Transmitter components.

Create OSC Receiver

// Creating a receiver.
var receiver = gameObject.AddComponent<OSCReceiver>(); 

// Set local port.
receiver.LocalPort = 7001;            

Or you can simple create OSCReceiver component in Unity editor, or use Create/extOSC/OSC Manager in Hierarchy window.

Receive OSCMessage
Bind method to special address. In address argument you can use masks like: "/message/*"

// Bind "MessageReceived" method to special address.
receiver.Bind("/message/address", MessageReceived);     

Method realization:

protected void MessageReceived(OSCMessage message)
{
	// Any code...
	Debug.Log(message);
}

Or you can use any extOSC/Receiver components.

Get value from OSCMessage
You have two ways to get the value from the message.

var value = message.Values[0].FloatValue;
// Any code...
Debug.Log(value);

or

if (message.ToFloat(out var value))  
{
	// Any code...
	Debug.Log(value);
}

Other examples you can find in Examples folder.

Author Contacts:

> telegram.me/iam1337
> [email protected]

License

This project is under the MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].