diff options
| author | yum <yum.food.vr@gmail.com> | 2022-11-05 12:11:15 -0700 |
|---|---|---|
| committer | yum <yum.food.vr@gmail.com> | 2022-11-05 12:14:12 -0700 |
| commit | 7f930340e3aa94d6aca120d28436594427469373 (patch) | |
| tree | 9c39374cb8be35d813fcf39db2620da027ac6d7d /osc_ctrl.py | |
| parent | ca10de9a5cb2a9b360bc0cd2c357f8d0041f0fca (diff) | |
Reduce dimensionality of animator by factor of 80
Instead of generating one animation for every single character in our
character set, we just generate 2: the lowest and the highest. We use
blend trees to interpolate between these two extremes.
This reduces the number of animations we have to generate by a factor
of 80. It also clears the way for multi-language support (coming soon).
It also means we don't have to reopen unity every time we generate a new
animator.
Diffstat (limited to 'osc_ctrl.py')
| -rw-r--r-- | osc_ctrl.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/osc_ctrl.py b/osc_ctrl.py index aa93dfb..6b97b09 100644 --- a/osc_ctrl.py +++ b/osc_ctrl.py @@ -75,8 +75,10 @@ def encodeMessage(lines): return result def updateCell(client, cell_idx, letter_encoded): - addr="/avatar/parameters/" + getLayerParam(cell_idx) - client.send_message(addr, letter_encoded) + addr="/avatar/parameters/" + generate_utils.getBlendParam(cell_idx) + letter_remapped = (-127.5 + letter_encoded) / 127.5 + print("Send encoded letter {} / {}".format(letter_encoded, letter_remapped)) + client.send_message(addr, letter_remapped) def enable(client): addr="/avatar/parameters/" + getEnableParam() |
