summaryrefslogtreecommitdiffstats
path: root/Scripts
diff options
context:
space:
mode:
authoryum <yum.food.vr@gmail.com>2022-12-20 00:26:50 -0800
committeryum <yum.food.vr@gmail.com>2022-12-20 00:28:46 -0800
commit8d225cfd66dfb60998b4eab43d8aa3b287375695 (patch)
treea298f7799fcc80085d568996a837367f9d16fe55 /Scripts
parent4f3da107d4379f99ec7ade8be26bfcf908fb193f (diff)
GUI: Begin work generating animator
The GUI can now generate guid.map and animations.
Diffstat (limited to 'Scripts')
-rw-r--r--Scripts/libtastt.py28
-rw-r--r--Scripts/libunity.py4
-rw-r--r--Scripts/transcribe.py3
3 files changed, 21 insertions, 14 deletions
diff --git a/Scripts/libtastt.py b/Scripts/libtastt.py
index bee535f..f448117 100644
--- a/Scripts/libtastt.py
+++ b/Scripts/libtastt.py
@@ -179,7 +179,8 @@ def generateClearAnimation(anim_dir, guid_map):
anim_clip.mapping['m_EditorCurves'].sequence.append(curve)
# Serialize animation to file
anim_name = generate_utils.getClearAnimationName()
- anim_path = anim_dir + anim_name + ".anim"
+ anim_path = os.path.join(anim_dir, anim_name + ".anim")
+ print("Generating clear animation at {}".format(anim_path))
with open(anim_path, "w") as f:
f.write(libunity.unityYamlToString([anim_node]))
# Generate metadata
@@ -221,7 +222,8 @@ def generateToggleAnimations(anim_dir, shader_param, guid_map):
anim_suffix = "_Off"
if shader_value == 1:
anim_suffix = "_On"
- anim_path = anim_dir + shader_param + anim_suffix + ".anim"
+ anim_path = os.path.join(anim_dir, shader_param + anim_suffix +
+ ".anim")
with open(anim_path, "w") as f:
f.write(libunity.unityYamlToString([anim_node]))
# Generate metadata
@@ -261,7 +263,7 @@ def generateFloatAnimation(anim_name: str, anim_dir: str,
anim_clip.mapping['m_EditorCurves'].sequence.append(curve)
# Serialize animation to file
- anim_path = anim_dir + anim_name + ".anim"
+ anim_path = os.path.join(anim_dir, anim_name + ".anim")
with open(anim_path, "w") as f:
f.write(libunity.unityYamlToString([anim_node]))
# Generate metadata
@@ -275,10 +277,10 @@ def generateFloatAnimation(anim_name: str, anim_dir: str,
return meta.guid
def generateAnimations(anim_dir, guid_map):
- generateClearAnimation(args.gen_anim_dir, guid_map)
+ generateClearAnimation(anim_dir, guid_map)
- generateToggleAnimations(args.gen_anim_dir, generate_utils.getIndicator0Param(), guid_map)
- generateToggleAnimations(args.gen_anim_dir, generate_utils.getIndicator1Param(), guid_map)
+ generateToggleAnimations(anim_dir, generate_utils.getIndicator0Param(), guid_map)
+ generateToggleAnimations(anim_dir, generate_utils.getIndicator1Param(), guid_map)
print("Generating letter animations", file=sys.stderr)
@@ -318,7 +320,7 @@ def generateAnimations(anim_dir, guid_map):
clip.mapping['m_FloatCurves'].sequence.append(curve)
clip.mapping['m_EditorCurves'].sequence.append(curve)
# Serialize animation to file
- anim_path = anim_dir + anim_name + ".anim"
+ anim_path = os.path.join(anim_dir, anim_name + ".anim")
with open(anim_path, "w") as f:
f.write(libunity.unityYamlToString([node]))
# Generate metadata
@@ -378,15 +380,15 @@ def generateFXLayer(which_layer: int, anim: libunity.UnityAnimator, layer:
dy = 200
# Create blend tree for this region.
- anim_lo_path = gen_anim_dir + \
+ anim_lo_path = os.path.join(gen_anim_dir,
generate_utils.getAnimationNameByLayerAndIndex(
which_layer, i, 0, byte) + \
- ".anim"
+ ".anim")
guid_lo = guid_map[anim_lo_path]
- anim_hi_path = gen_anim_dir + \
+ anim_hi_path = os.path.join(gen_anim_dir,
generate_utils.getAnimationNameByLayerAndIndex(
which_layer, i, generate_utils.CHARS_PER_CELL - 1, byte) + \
- ".anim"
+ ".anim")
guid_hi = guid_map[anim_hi_path]
select_states[i] = anim.addAnimatorBlendTree(layer,
@@ -430,13 +432,13 @@ def generateToggle(layer_name: str,
on_state = anim.addAnimatorState(layer, layer_name + "_On", dy=100)
if off_anim_basename:
- off_anim_path = gen_anim_dir + off_anim_basename
+ off_anim_path = os.path.join(gen_anim_dir, off_anim_basename)
off_anim_meta = libunity.Metadata()
off_anim_meta.load(off_anim_path)
anim.setAnimatorStateAnimation(off_state, off_anim_meta.guid)
if on_anim_basename:
- on_anim_path = gen_anim_dir + on_anim_basename
+ on_anim_path = os.path.join(gen_anim_dir, on_anim_basename)
on_anim_meta = libunity.Metadata()
on_anim_meta.load(on_anim_path)
anim.setAnimatorStateAnimation(on_state, on_anim_meta.guid)
diff --git a/Scripts/libunity.py b/Scripts/libunity.py
index f9e9e28..7223568 100644
--- a/Scripts/libunity.py
+++ b/Scripts/libunity.py
@@ -1259,6 +1259,10 @@ if __name__ == "__main__":
print("Looking up GUIDs under {}".format(args.project_root),
file=sys.stderr)
guid_map = getGuidMap(args.project_root)
+
+ save_to_dir = os.path.dirname(args.save_to)
+ os.makedirs(save_to_dir, exist_ok=True)
+
if args.guid_map_append:
tmp_map = {}
with open(args.save_to, "rb") as f:
diff --git a/Scripts/transcribe.py b/Scripts/transcribe.py
index 0f7ae37..831ae66 100644
--- a/Scripts/transcribe.py
+++ b/Scripts/transcribe.py
@@ -94,6 +94,8 @@ def onAudioFramesAvailable(
frame_count,
time_info,
status_flags):
+ if audio_state.audio_paused:
+ return (frames, pyaudio.paContinue)
# Reduce sample rate from mic rate to Whisper rate by dropping frames.
decimated = b''
@@ -207,7 +209,6 @@ def transcribe(audio_state, model, frames):
#for temp in (0.00, 0.05, 0.10, 0.15, 0.20):
#for temp in (0.00, 0.05):
for temp in (0.00,):
- print("temp: {}".format(temp))
options = whisper.DecodingOptions(language = audio_state.language,
beam_size = 5, temperature = temp, without_timestamps = True)
result = whisper.decode(model, mel, options)