| Commit message (Collapse) | Author | Age |
| ... | |
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
Add trivial line wrapping algorithm. Words are only added to
a line if they don't put it over the column limit, and only broken if
they alone exceed the column limit.
Extend board size to 16x6, using 145 bits of parameter memory.
Add simple generate.sh script, which generates everything needed to
use the text-to-text board.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apparently the same avatar parameter can only be updated so quickly
before VRChat starts dropping messages. So now we divide the board
into "groups" of 8 characters. Each group can be updated relatively
slowly, but all groups can be updated in parallel. Thus we can update
the board group-by-group, pausing between each group.
* Fix shader bugs - now there are Row05 parameters, and row00 refers
to the topmost row instead of the bottom-most.
* Remove outdated layer/group names files
* Extend osc_ctrl.py to support encoding & sending messages
* Add generate_params.py to handle creating TaSTT_params.asset
* Add generate_utils.py for common code generation facilities &
parameters.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
Can't get much faster than 0.1 seconds per character with the current
design. Still, a good first step!
* Simplify parameters: only use 3 8-bit ints + 1 boolean.
* Rewrite FX generator according to new params.
* Rewrite osc_ctrl.py to test in-game display.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Doesn't work in game.
Also change # of characters per slot to 80, down from 128.
Also realize that VRChat supports 256 BITS of parameter, not 256 BYTES.
Next design idea:
* 3 8-bit parameters: letter, row, col
* 1 boolean parameter: active
* one animation for each slot/letter combo, as usual
* one fx layer like this:
if !active:
do nothing
if row == 0:
if col == 0:
if letter == 0:
play row00_col00_letter00 animation
* because write defaults are off, we should be able to "save" letters
by simply setting active = false
* thus we don't need to simultaneously address the entire board, saving
memory
|
| |
|
|
|
|
| |
simply sends numbers to a parameter's osc address
of course, nothing is showing up in game. More debugging is needed.
|
| |
|
|
| |
Also generate the full 6 rows instead of just 3
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: added generator for animations and FX layer.
* add generate_animations.sh
* generates an animation for every cell (14*6=72) and every letter (60);
72*60 = 4212 total animations
* add generate_fx.py
* seems to work in-game
* drives every parameter needed
* add {group,cell}_names.txt
* name of every group & cell parameter
* the STT has 72 individual character slots called cells. They are
grouped into 4-character groups to save on parameter bandwidth.
Thus each slot may be indexed with 8 bits.
* add SetLetters.cs
* this thingy looks at each group parameter and uses it to set each
cell parameter. The generated fx layer hooks the script in.
* check in SDK-generated assets as references until code generators are
complete
|
|
|
* initial checkin of shader
* 6 rows and 14 cols
* currently using Noto Sans Mono font
* AFAIK free as in beer & freedom
|