naeruru / mimiuchi

a free, customizable, osc capable speech-to-text interface for relaying text to different types of applications
https://mimiuchi.com
GNU General Public License v3.0
42 stars 4 forks source link

update osc params #35

Closed fuwako closed 6 months ago

fuwako commented 8 months ago

Description

This is a collection of changes to the OSCParams component and related components.


Fix values sent via OSC being evaluated as 0 by VRChat

Problem: Incorrectly typed data would be sent to VRChat, and parameters would not be correctly driven.

Solution: Payloads are now validated and parsed before being sent to VRChat.

I don't how this will affect other applications, if the OSC implementation is intended to be used with applications besides VRChat.


Implement editing

Editing is now implemented and enabled for param triggers.

A basic view of Custom Params. Edit was clicked.

Additionally, the removal of assign phrases is now implemented.

A mouseover on an assign phrase. The assign phrase was clicked and deleted.

Changed behaviors:


Standardize the design of the component title to match other components

Before After

Fix being only able to use the last declared trigger phrase

Problem: If a param trigger has multiple trigger phrases, only the most recent/last trigger phrase could be used (e.g., in the case of "Apple", "Banana", "Orange", only "Orange" could be used).

Solution: Checks for a trigger phrase now stop as soon as a match is found instead of losing the match to an overwrite.

What is the purpose of this pull request?

fuwako commented 7 months ago

Parameter trigger behaviors

Problem: In VRChat, a user may use a Button control in their Expression Menu to quickly send a pulse or momentary value and run Unity Animator logic. However, mimiuchi simply sets values and cannot simulate pulses.

Solution: The Behavior setting is now implemented. It has 2 options:

  1. Default: The value is set.
  2. Pulse: The value is set, wait some time, another value is set.
The new behaviors A configured assign
An added assign The overview

Profiles

Problem: mimiuchi only holds a universal set of param triggers. A VRChat user may want to change their active set of param triggers when using a different avatar or in different situations.

Solution: Profiles are now implemented. Each profile contains a collection of param triggers.

The overview Adding a new profile
Profile selection menu Profile 1
Profile 2 Profile 3
Profile validation (Error: Required) Profile validation (Error: Cannot be empty)
Profile validation (Error: Already in use) Profile validation (Valid)

New overview design

Problems:

Solutions:

Panel collapsed Panel expanded
A long route A long route that is drag-selected
naeruru commented 6 months ago

really awesome update!! makes this feature way better