Giter Site home page Giter Site logo

sonosthesia-unity-demo-instrument's Introduction

sonosthesia-unity-demo-instrument

This demo showcases the instrument building and MIDI/MPE control capabilities of the sonosthesia framework. In particular the following packages:

Note the raw MIDI functionality is presented in a separate demo project.

Installation

Note that to add those packages to your Unity project you will need to add the following scoped registeries to your Packages/package.json file (Keijiro only necessary for the com.sonosthesia.rtmidi backend).

"scopedRegistries": [
    {
      "name": "Neuecc",
      "url": "https://package.openupm.com",
      "scopes": [
        "com.neuecc.unirx",
        "com.cysharp.unitask"
      ]
    },
    {
      "name": "Keijiro",
      "url": "https://registry.npmjs.com",
      "scopes": [
        "jp.keijiro"
      ]
    },
    {
      "name": "Sonosthesia",
      "url": "https://registry.npmjs.com",
      "scopes": [
        "com.sonosthesia"
      ]
    }
  ]

Procedural Instrument Builders

Note these builders can be used both in play mode or in edit mode.

Keyboard

A highly configurable keyboard builder. With configurable key shape and low/high note

Keyboard Builder

Ghosting notes according to different scales to avoid accidental touches

Keyboard Builder

Experimental

Scaled instrument builders are in development allowing configurable scale and more control over the procedural placement of elements allowing the procedural creation of instruments such as harps and xylophones.

MIDI/MPE Control

The procedural builder uses a configurable prefab which can handle the production of MIDI/MPE note streams. Currently pointer based and trigger (using physics) based interactions are supported. Pointers can use axis drag or pressure (available in PointerEventData) to map on to musical control parameters.

MIDI with per note pressure

Currently implemented for pointers

MPE Controller

Triggers in experimental state

MPE with per note pressure/slide/bend

Currently implemented for pointers

MPE Controller

Current Issues

  • Availability is not updated on auto kill
  • Dynamics value generator needs debugging

sonosthesia-unity-demo-instrument's People

Contributors

jbat100 avatar jonathan-opuscope avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.