Better Directory Input & Game Object based Lip Syncing #76
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
1. Enhanced Directory Wizard
The existing wizard has a significant limitation: It only reads the children of a specified directory without replicating that directory's structure in the output.
This oversight forces users to manually sort their baked data to match the hierarchy of the original audio clips, which is inefficient, prone to errors, and if your line count is high enough may lead to death from dehydration because of how long sorting them would take. My alternative wizard addresses this issue by cloning the directory hierarchy from input to output, ensuring that the structure of subfolders and their contents is preserved.
2. Game Object-based Lip Syncing for 2D Rigs
I noticed a very noticeable gap in the current toolset for 2D lipsyncing, particularly for rigs that aren't sprite sheet-based (Believe it or not that's every single rig I use). uLipSyncTexture falls short in this case. One of Unity's only features that actually "just works" is the PSB import pipeline, which automatically slices sprites based on their boundaries, resulting in varying origins and sizes that aren't easily swappable. It also mirrors the layer structure when dragging the imported PSB into the editor. Therefore, all of your phonemes will already exist as individual game objects. So I created uLipSyncGameObject which is functionally similar to uLipSyncTexture, but works by just enabling and disabling the objects instead.
I love this tool, so I hope these are useful additions.