
VRCのOSCが「わからん」から「ちょっとわかる」になれる記事
公式の資料を読んで分かったことをまとめます。
https://docs.vrchat.com/v2022.1.1/docs/osc-overview
最終更新:2022/02/25
OSCって何?
OpenSound Control の略で、
主に電子楽器で使われている通信するための規格です。
VRCはこの仕組みを利用してデータを送受信します。
https://ja.wikipedia.org/wiki/OpenSound_Control
OSCで何が出来るの?
外部アプリがVRChatのデータを取得したり送ったりできます。
現在はアバターのParameterを取得、変更をしたり、
移動、ジャンプ等の操作することができます。
今までExpression Menuで操作していた着替えが音声で出来たり
アイデア次第でなんでも出来る可能性を秘めています。

OSCの使い方・仕様
VRChatを起動後、ExMenuからOSCを有効にします。


OSC Debugを選択すると、受信したOSCを確認できる画面が表示されます。
使用できるパラメータ
アバターに関するパラメータは、アバターを使用したときに以下の場所に出力されます。
C:\Users\(ユーザ名)\AppData\LocalLow\VRChat\VRChat\OSC\(ユーザID)\Avatars\(アバター名)_(アバターID).json

パラメータはinputとoutputの2種類あります。

また、ジャンプや移動等の操作に関するパラメータは沢山あるので
公式サイトの Supported Inputs を確認してみて下さい。
https://docs.vrchat.com/v2022.1.1/docs/osc-as-input-controller#supported-inputs
通信ポート
VRChatが受信するのは UDP 9000番
VRChatが送信するのは UDP 9001番です
https://docs.vrchat.com/v2022.1.1/docs/osc-overview#vrchat-ports
OSCで何かやってみたい!
VRChatはOSC通信の仕組みを用意しているだけなので、OSCツールは自前で用意する必要があり、敷居が高い状態です。
Unityで開発する場合は、VRChatがOscCoreを公開しています。
https://github.com/vrchat/osccore/tree/all-in-one
現在boothで公開されているOSCツール
詠唱ツール for VRC
音声認識でOSCを送信するソフトです。使ってください(宣伝)