Addon for Blender 2.8+ that automatically creates NLA tracks for all animations. Useful for GLTF export.

Overview

PushDownAll

An addon for Blender 2.8+ that runs Push Down on all animations, creating NLA tracks for each.

This is useful if you have an object with many animations, and you need to convert them all to NLA tracks, say for GLTF export for a game engine. Godot Engine currently requires animations baked as NLA tracks.

Installation

  • Install PushDownAll.py into your script directory. e.g. "C:\Users\yourname\AppData\Roaming\Blender Foundation\Blender\version\scripts\addons"

  • In Blender, select Edit, Preferences, Add-ons. Find "Animation: Push Down All" and enable it.

Usage

  • Open the Dope Sheet and switch to the Action Editor. You'll also want to open Nonlinear Animation in another window.

image

  • Select your object in the outliner. Choose the node which is the parent of Pose or Animation.

image

  • In the Dope Sheet window, press N for the sidebar and you should see the Push Down All panel.

image

  • If there are no NLA channels (i.e. the NLA window is completely empty), you may need to select one of the animations, which will create an NLA channel. The addon should alert you as below. Select the animation from the middle button on the header bar.

image

image

Parameters

  • Exclude: You can enter a regular expression (Python search()) in the exclude box to skip animations. e.g. 'alk' or '[wW]alk' would match animations named 'walk_forward' and 'FastWalk'.

  • Search & Replace: Search takes a regular expression and will replace any matching parts of names with whatever is found in the replace box (including nothing to erase the matching part). e.g. Search: 'alk', Replace: '', will turn the previous animations into 'w_forward' and 'FastW'. This will change the name of the animation, not just the NLA track.

image

  • Finally, click Push Down All to get your NLA tracks.

image

  • If you wish to do it again, move your mouse to the NLA window, and press X or A, X to delete all NLA tracks.

Troubleshooting

Turn on the console (Window -> Toggle System Console). This addon prints the name of every animation it pushes down. Error messages will appear here.

Quick Regex Primer

Really basic searches will work just fine. Regex is for power users. If you are having trouble matching symbols, try prefacing the symbol with a \, e.g. \. to match a period.

^ = match the beginning

$ = match the end

[a-zA-Z] = match one character, a through z or A-Z. Can also do numbers, 0-9. Insert ^ as the first character to negate the match.

[^0-9]4 = match 4 characters, none of which are 0-9

. = match any single character

.4 = match any 4 characters

.* = match any number of characters including none

.+ = match at least 1 of any character

\. = match the period . Use \ before any symbols you want to match like ()[]$^\.*+ etc. e.g. Walk\(1\) for Walk(1)

| = match anything on the left, or anything on the right. Logical OR.

( ) = container that limits the scope of the logical OR above.

Examples

^Key -> Matches Key only at the beginning of the name

_RM$ -> Matches _RM only at the end of the name

^Key\..*_RM$ -> Match names that start with Key., end with _RM, and have anything or nothing in the middle

^([^K]|Key\.) -> Matches names that either don't begin with K, or start with Key.. Apple or Key.Apple would match, Key would not.

Full regex syntax: https://docs.python.org/3/library/re.html#regular-expression-syntax

License

MIT

Owner
Cory Petkovsek
See my game "Out of the Ashes" at the link below.
Cory Petkovsek
Functions to analyze Cell-ID single-cell cytometry data using python language.

PyCellID (building...) Functions to analyze Cell-ID single-cell cytometry data using python language. Dependecies for this project. attrs(=21.1.0) fo

0 Dec 22, 2021
Small tool to use hero .json files created with Optolith for The Dark Eye/ Das Schwarze Auge 5 to perform talent probes.

DSA5-ProbeMaker A little tool for The Dark Eye 5th Edition (Das Schwarze Auge 5) to load .json from Optolith character generation and easily perform t

2 Jan 06, 2022
A practice program to find the LCM i.e Lowest Common Multiplication of two numbers using python without library.

Finding-LCM-using-python-from-scratch Here, I write a practice program to find the LCM i.e Lowest Common Multiplication of two numbers using python wi

Sachin Vinayak Dabhade 4 Sep 24, 2021
Direct Multi-view Multi-person 3D Human Pose Estimation

Implementation of NeurIPS-2021 paper: Direct Multi-view Multi-person 3D Human Pose Estimation [paper] [video-YouTube, video-Bilibili] [slides] This is

Sea AI Lab 253 Jan 05, 2023
An experimental Python-to-C transpiler and domain specific language for embedded high-performance computing

An experimental Python-to-C transpiler and domain specific language for embedded high-performance computing

Andrea Zanelli 562 Dec 28, 2022
An ultra fast cross-platform multiple screenshots module in pure Python using ctypes.

Python MSS from mss import mss # The simplest use, save a screen shot of the 1st monitor with mss() as sct: sct.shot() An ultra fast cross-platfo

Mickaël Schoentgen 799 Dec 30, 2022
A plugin for managing mod installers in Mod Organizer 2

Reinstaller v1.0.* Introduction Reinstaller allows you to conveninetly backup mod installers to re-run later, without risk of them cluttering up your

Alex Ashmore 2 Jun 27, 2022
A powerful and user-friendly binary analysis platform!

angr angr is a platform-agnostic binary analysis framework. It is brought to you by the Computer Security Lab at UC Santa Barbara, SEFCOM at Arizona S

6.3k Jan 02, 2023
This is a far more in-depth and advanced version of "Write user interface to a file API Sample"

Fusion360-Write-UserInterface This is a far more in-depth and advanced version of "Write user interface to a file API Sample" from https://help.autode

4 Mar 18, 2022
Cairo-integer-types - A library for bitwise integer types (e.g. int64 or uint32) in Cairo, with a test suite

The Cairo bitwise integer library (cairo-bitwise-int v0.1.1) The Cairo smart tes

27 Sep 23, 2022
A calculator developed in Python.

Calculadora Uma simples calculadora... ( + − × ÷ ) 💻 Situação do projeto: Projeto finalizado ✔️ 🛠 Tecnologias: Python Tkinter (GUI) ⚙️ Pré-requisito

Arthur V.B.S. 1 Jan 27, 2022
An easy-to-learn, dynamic, interpreted, procedural programming language

Gen Programming Language WARNING!! THIS LANGUAGE IS IN DEVELOPMENT. ANYTHING CAN CHANGE AT ANY MOMENT. Gen is a dynamic, interpreted, procedural progr

Gen Programming Language 7 Oct 17, 2022
PyPIContents is an application that generates a Module Index from the Python Package Index (PyPI) and also from various versions of the Python Standard Library.

PyPIContents is an application that generates a Module Index from the Python Package Index (PyPI) and also from various versions of the Python Standar

Collage Labs 10 Nov 19, 2022
Change ACLs for QNAP LXD unprivileged container.

qnaplxdunpriv If Advanced Folder Permissions is enabled in QNAP NAS, unprivileged LXD containers won't start. qnaplxdunpriv changes ACLs of some Conta

1 Jan 10, 2022
Identify unused production dependencies and avoid a bloated virtual environment.

creosote Identify unused production dependencies and avoid a bloated virtual environment. Quickstart # Install creosote in separate virtual environmen

Fredrik Averpil 7 Dec 29, 2022
kodi addon 115网盘

plugin.video.115 kodi addon 115网盘 插件,需要kodi 18以上版本,原码播放需配合 https://github.com/feelfar/115proxy-for-kodi 使用 安装 HEAD 由于release包尚未释出,可直接下载源代码zip包

109 Dec 29, 2022
An easy way to access the Scratch API!

The majority of people are likely here because they want to easily access the Scratch API!

rgantzos 0 May 04, 2022
Demo content - Automate your automation!

Automate-AAP2 Demo Content - Automate your automation! A fully automated Ansible Automation Platform. Context Installing and configuring Ansible Autom

0 Oct 27, 2022
Absolute solvation free energy calculations with OpenFF and OpenMM

ABsolute SOLVantion Free Energy Calculations The absolv framework aims to offer a simple API for computing the change in free energy when transferring

7 Dec 07, 2022