diff options
| author | yum <yum.food.vr@gmail.com> | 2022-10-02 17:24:18 -0700 |
|---|---|---|
| committer | yum <yum.food.vr@gmail.com> | 2022-10-02 17:24:18 -0700 |
| commit | 21c17fcb5698ed238e5397a0c2b0530034804d34 (patch) | |
| tree | de55ecc66fc09f8fb2c0ef8c498d1197dc71590a /generate_fx.py | |
| parent | ac1e02241be1d7608e71163dd404f3bad4157a9d (diff) | |
Add 4th layer of indexing
* Double board size from 6x16 to 8x22
* Reduce parameter bits used (thanks to extra layer of indexing)
* Rename template.anim to template.anim.txt to prevent Unity from
constantly rewriting it
* osc_ctrl.encodeMessage now pads the message so that all empty space is
overwritten
* Delete osc_ctrl.sendMessageCellContinuous. Now that we use a single 'Enable'
bit, this idea is sidelined.
* We can probably achieve the same effect by making TaSTT.shader a little
more clever. For example, if we pass it the current cell number, it could
render a time-based 'fade-in' effect which simulates smooth streaming.
Diffstat (limited to 'generate_fx.py')
| -rw-r--r-- | generate_fx.py | 116 |
1 files changed, 79 insertions, 37 deletions
diff --git a/generate_fx.py b/generate_fx.py index 0075de6..551524a 100644 --- a/generate_fx.py +++ b/generate_fx.py @@ -149,6 +149,9 @@ def genAnimator(state): params["ANIMATOR_PARAMETER_NAME"] = getSelectParam(i, 2) print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params)) + params["ANIMATOR_PARAMETER_NAME"] = getSelectParam(i, 3) + print(replaceMacros(ANIMATOR_PARAMETER_BOOL, params)) + print(replaceMacros(ANIMATOR_LAYER_HEADER, params)) @@ -487,14 +490,17 @@ def getS1StateName(which_layer, s0, s1): def getS2StateName(which_layer, s0, s1, s2): return "TaSTT_L%02d_S%02d_S%02d_S%02d" % (which_layer, s0, s1, s2) -def getLetterStateName(which_layer, s0, s1, s2, letter): - return "TaSTT_L%02d_S%02d_S%02d_S%02d_L%03d" % (which_layer, s0, s1, s2, letter) +def getS3StateName(which_layer, s0, s1, s2, s3): + return "TaSTT_L%02d_S%02d_S%02d_S%02d_S%02d" % (which_layer, s0, s1, s2, s3) + +def getLetterStateName(which_layer, s0, s1, s2, s3, letter): + return "TaSTT_L%02d_S%02d_S%02d_S%02d_S%02d_L%03d" % (which_layer, s0, s1, s2, s3, letter) def getResizeStateName(e0, e1): return "TaSTT_Resize_E%d_E%d" % (e0, e1) -def getReturnHomeTransitionName(which_layer, s0, s1, s2, letter): - return "TASTT_RETURN_HOME_TRANSITION_L%02d_S%02d_S%02d_S%02d_L%03d" % (which_layer, s0, s1, s2, letter) +def getReturnHomeTransitionName(which_layer, s0, s1, s2, s3, letter): + return "TASTT_RETURN_HOME_TRANSITION_L%02d_S%02d_S%02d_S%02d_S%02d_L%03d" % (which_layer, s0, s1, s2, s3, letter) def getReturnHomeTransitionNameResizeLayer(e0, e1): return "TASTT_RETURN_HOME_TRANSITION_E%d_E%d" % (e0, e1) @@ -586,52 +592,80 @@ def genTasttLayer(state, which_layer): for s2 in range(0,2): params["TASTT_STATE_U2"] = params[getS2StateName(which_layer, s0, s1, s2) + "_U2"] params["TASTT_STATE_NAME"] = getS2StateName(which_layer, s0, s1, s2) - print(replaceMacros(TASTT_NARY_STATE_HEADER, params)) - for letter in range(0, CHARS_PER_CELL): - params[getLetterStateName(which_layer, s0, s1, s2, letter) + "_TRANSITION_U2"] = get_u2("1101", state) - params["TASTT_STATE_TRANSITION_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, letter) + "_TRANSITION_U2"] - print(replaceMacros(TASTT_NARY_STATE_HEADER_TRANSITION, params)) - print(replaceMacros(TASTT_NARY_STATE_FOOTER, params)) + params[getS3StateName(which_layer, s0, s1, s2, 0) + "_TRANSITION_U2"] = get_u2("1101", state) + params["TASTT_STATE_TRANSITION_0_U2"] = params[getS3StateName(which_layer, s0, s1, s2, 0) + "_TRANSITION_U2"] + params[getS3StateName(which_layer, s0, s1, s2, 1) + "_TRANSITION_U2"] = get_u2("1101", state) + params["TASTT_STATE_TRANSITION_1_U2"] = params[getS3StateName(which_layer, s0, s1, s2, 1) + "_TRANSITION_U2"] + print(replaceMacros(TASTT_BINARY_STATE, params)) + + # S3 state transition. + for s0 in range(0,2): + for s1 in range(0,2): + for s2 in range(0,2): + for s3 in range(0,2): + params["TASTT_STATE_TRANSITION_U2"] = params[getS3StateName(which_layer, s0, s1, s2, s3) + "_TRANSITION_U2"] + params["BOOL_PARAM"] = getSelectParam(which_layer, 3) + params["THRESHOLD"] = str(s3) + params["MODE"] = str(2 - s3) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION. + params[getS3StateName(which_layer, s0, s1, s2, s3) + "_U2"] = get_u2("1102", state) + params["DST_STATE_U2"] = params[getS3StateName(which_layer, s0, s1, s2, s3) + "_U2"] + print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params)) + + # S3 state. + for s0 in range(0,2): + for s1 in range(0,2): + for s2 in range(0,2): + for s3 in range(0,2): + params["TASTT_STATE_U2"] = params[getS3StateName(which_layer, s0, s1, s2, s3) + "_U2"] + params["TASTT_STATE_NAME"] = getS3StateName(which_layer, s0, s1, s2, s3) + print(replaceMacros(TASTT_NARY_STATE_HEADER, params)) + for letter in range(0, CHARS_PER_CELL): + params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_TRANSITION_U2"] = get_u2("1101", state) + params["TASTT_STATE_TRANSITION_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_TRANSITION_U2"] + print(replaceMacros(TASTT_NARY_STATE_HEADER_TRANSITION, params)) + print(replaceMacros(TASTT_NARY_STATE_FOOTER, params)) # Letter state transition. for s0 in range(0,2): for s1 in range(0,2): for s2 in range(0,2): - for letter in range(0, CHARS_PER_CELL): - params["TASTT_STATE_TRANSITION_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, letter) + "_TRANSITION_U2"] - params["INT_PARAM"] = getLayerParam(which_layer) - params["TRANSITION_THRESHOLD"] = str(letter) - params[getLetterStateName(which_layer, s0, s1, s2, letter) + "_U2"] = get_u2("1102", state) - params["DST_STATE_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, letter) + "_U2"] - print(replaceMacros(TASTT_INT_STATE_TRANSITION, params)) + for s3 in range(0,2): + for letter in range(0, CHARS_PER_CELL): + params["TASTT_STATE_TRANSITION_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_TRANSITION_U2"] + params["INT_PARAM"] = getLayerParam(which_layer) + params["TRANSITION_THRESHOLD"] = str(letter) + params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_U2"] = get_u2("1102", state) + params["DST_STATE_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_U2"] + print(replaceMacros(TASTT_INT_STATE_TRANSITION, params)) # Letter state. for s0 in range(0,2): for s1 in range(0,2): for s2 in range(0,2): - for letter in range(0, CHARS_PER_CELL): - params["TASTT_STATE_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, letter) + "_U2"] - params["TASTT_STATE_NAME"] = getLetterStateName(which_layer, s0, s1, s2, letter) - transition_name = getReturnHomeTransitionName(which_layer, s0, s1, s2, letter) + "_U2" - params[transition_name] = get_u2("1101", state) - params["TASTT_STATE_TRANSITION_U2"] = params[transition_name] - anim_meta_filename = getAnimationPath(getShaderParam(which_layer, s0, s1, s2), letter) + ".meta" - params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename) - print(replaceMacros(TASTT_ANIM_STATE, params)) + for s3 in range(0,2): + for letter in range(0, CHARS_PER_CELL): + params["TASTT_STATE_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_U2"] + params["TASTT_STATE_NAME"] = getLetterStateName(which_layer, s0, s1, s2, s3, letter) + transition_name = getReturnHomeTransitionName(which_layer, s0, s1, s2, s3, letter) + "_U2" + params[transition_name] = get_u2("1101", state) + params["TASTT_STATE_TRANSITION_U2"] = params[transition_name] + anim_meta_filename = getAnimationPath(getShaderParam(which_layer, s0, s1, s2, s3), letter) + ".meta" + params["TASTT_ANIM_GUID"] = getAnimationGuid(anim_meta_filename) + print(replaceMacros(TASTT_ANIM_STATE, params)) # Return-home transitions. for s0 in range(0,2): for s1 in range(0,2): for s2 in range(0,2): - for letter in range(0, CHARS_PER_CELL): - transition_name = getReturnHomeTransitionName(which_layer, s0, s1, s2, letter) + "_U2" - params["TASTT_STATE_TRANSITION_U2"] = params[transition_name] - params["BOOL_PARAM"] = getDummyParam() - params["THRESHOLD"] = str(0) - params["MODE"] = str(2) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION. - params["DST_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"] - print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params)) - + for s3 in range(0,2): + for letter in range(0, CHARS_PER_CELL): + transition_name = getReturnHomeTransitionName(which_layer, s0, s1, s2, s3, letter) + "_U2" + params["TASTT_STATE_TRANSITION_U2"] = params[transition_name] + params["BOOL_PARAM"] = getDummyParam() + params["THRESHOLD"] = str(0) + params["MODE"] = str(2) # See comment above TASTT_BOOL_STATE_UNARY_TRANSITION. + params["DST_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"] + print(replaceMacros(TASTT_BOOL_STATE_UNARY_TRANSITION, params)) # TaSTT layer. params["TASTT_LAYER_U2"] = params[getLayerParam(which_layer) + "_LAYER_U2"] @@ -663,10 +697,18 @@ def genTasttLayer(state, which_layer): for s0 in range(0,2): for s1 in range(0,2): for s2 in range(0,2): - for letter in range(0, CHARS_PER_CELL): - params["TASTT_STATE_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, letter) + "_U2"] + for s3 in range(0,2): + params["TASTT_STATE_U2"] = params[getS3StateName(which_layer, s0, s1, s2, s3) + "_U2"] print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params)) + for s0 in range(0,2): + for s1 in range(0,2): + for s2 in range(0,2): + for s3 in range(0,2): + for letter in range(0, CHARS_PER_CELL): + params["TASTT_STATE_U2"] = params[getLetterStateName(which_layer, s0, s1, s2, s3, letter) + "_U2"] + print(replaceMacros(TASTT_LAYER_HEADER_CHILD_STATE, params)) + params["TASTT_DEFAULT_STATE_U2"] = params["TASTT_DEFAULT_STATE_U2"] print(replaceMacros(TASTT_LAYER_FOOTER, params)) |
