GithubHelp home page GithubHelp logo

chryfi / lectorlips Goto Github PK

View Code? Open in Web Editor NEW
10.0 1.0 1.0 106 KB

A cool script that converts Adobe Character Animator mouth animation into Blockbuster mod Sequencer Morph NBT data.

License: GNU General Public License v3.0

Python 100.00%

lectorlips's Introduction

LectorLipsWhite-2

A cool script that allows to convert Adobe Characte Animator mouth animation data into a sequencer morph for the Minecraft Blockbuster Mod.

Setup

First you need to install Python, for example, via Microsoft Store. You probably need to restart your computer after installing it. Test ouf if the command python works in the CMD. It should look something like this:

Screenshot_658

Now you need to tell the script how your mouth textures are named like and which Character Animator mouth they belong to. The image visemeMapping.jpg shows the mouth shapes used by Adobe Character Animator. The numbers indicate the order in which you have to define your image file names.

Type cmd into the file explorer in the LectorLips folder like this to open the CMD in that folder:

Screenshot_659

Now you need to enter the command to setup the names of your mouth textures.

python __init__.py -create_viseme_mapping 0.png 1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png 11.png 12.png 13.png 14.png

You can name those image files however you want.

Adobe Character Animator

First import your audio file. If you have the transcript of the audio, you can use it to increase the accuracy of the mouth animation. Therefore paste your transcript into the transcript text box in the properties context.transcript

Now you need to generate the mouth animation. For this go to Timeline -> Compute Lip Sync Take from Audio and Transcript as seen in the image. If you didn't enter a transcript, choose the option without the transcript.

generatemouthanimation

Convert Character Animator mouth animation into sequencer morph

To convert your mouth animation, you first need to convert it into After Effects Visemes. To do this, right click on your audio and click Copy Visemes for After Effects.

copyvisemes

Now you need to paste the copied data into a .txt file. It's simplest if you just create the .txt file in the LectorLips folder.

Then you can execute the command to convert the pasted keyframes into a sequencer morph:

python __init__.py -create_sequencer full/path/to/AfterEffects_keyframes.txt "b.a:path/to/blockbuster/mouth/textures/"

With the argument full/path/to/AfterEffects_keyframes.txt you define the path to the file where you copied the keyframe data to. If you created the .txt file in the LectorLips folder, you can just enter the name of your file.

With "b.a:path/to/blockbuster/mouth/textures/" you define the texture path that should be used in the Blockbuster mod (this does not include the full system path, only the path inside the models folder). The texture files in that folder need to have the same names as the ones you defined in your setup. Your mouth textures need to be in a folder under ../config/blockbuster/models/. Example: Your textures are in the folder ../config/blockbuster/models/mouth_steve/ then your blockbuster path needs to be "b.a:mouth_steve".

The command will create a .txt file with the current date as name, where it writes the generated sequencer morph NBT data into.

You need to copy all of the NBT data and paste it into a user category of the morph menu like this: Screenshot_11

That's it!

List of commands

-help

-create_sequencer
arguments: <path to After Effects keyframe.txt> <Blockbuster path to the mouth textures folder>
optional: <duration of the last mouth in ticks> <different viseme_mapping_filename>
-create_viseme_mapping
arguments: <15 image file names according to visemeMapping.jpg>
optional: <new viseme_mapping filename>

lectorlips's People

Contributors

chryfi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

itslemax

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.