5.3 KiB
Animacje postaci
scene.skeletal_model(...) automatycznie znajduje każdy FBX z folderu postaci
poza plikiem samego modelu: 51 klipów fighter i 12 klipów creature.
Wykorzystuje funkcję _clips() z Content/Python/ue_workshop/characters.py.
Nowy FBX dodany do folderu zostanie uwzględniony przy następnym uruchomieniu skryptu.
Trzymaj model i animacje tej samej postaci w osobnym folderze.
Nazwy poniżej są kluczami do animations i shot.animation(...).
Spacje i nawiasy z nazw plików są zamieniane na podkreślenia. Nie ma skrótów
idle, walk i attack; używaj nazw takich jak great_sword_idle czy mutant_swiping.
Pełny przykład examples/mixamo_characters.py importuje wszystkie klipy.
Plik zadania exercises/animation_starter.py importuje tylko dwie wybrane animacje.
Aby udostępnić wszystkie klipy, pomiń argument animations:
character = scene.skeletal_model(CREATURE_MODEL, name="Creature", reimport=False)
shot.animation(character, "mutant_jumping", start=240, end=360)
Opcjonalne animations={...} ogranicza wybór do wskazanych plików;
animations={} pozostawia tylko klipy osadzone w samym modelu.
Krótsze klipy zapętlają się w swoim zakresie. Nakładanie zakresów automatycznie
tworzy płynne przejście z Pythona:
shot.animation(character, "mutant_idle", start=0, end=60)
shot.animation(character, "mutant_swiping", start=48, end=120)
Wspólny zakres 48–60 miesza obie animacje przez 12 klatek (0,5 s przy 24 FPS). Nowy klip narasta od wagi 0 do 1, a poprzedni zanika od 1 do 0. Dodawaj klipy w kolejności odtwarzania. Długość blendu wynika wyłącznie z zakresów. Klipy stykające się końcami przechodzą bez blendu; zakresy nie mogą być identyczne ani całkowicie zawierać się jeden w drugim. Obsługiwane są przejścia między dwiema animacjami; trzy jednoczesne klipy są odrzucane.
Fighter
| Clip | FBX |
|---|---|
draw_a_great_sword_1 |
draw a great sword 1.fbx |
draw_a_great_sword_2 |
draw a great sword 2.fbx |
great_sword_180_turn |
great sword 180 turn.fbx |
great_sword_180_turn_2 |
great sword 180 turn (2).fbx |
great_sword_attack |
great sword attack.fbx |
great_sword_blocking |
great sword blocking.fbx |
great_sword_blocking_2 |
great sword blocking (2).fbx |
great_sword_blocking_3 |
great sword blocking (3).fbx |
great_sword_casting |
great sword casting.fbx |
great_sword_crouching |
great sword crouching.fbx |
great_sword_crouching_2 |
great sword crouching (2).fbx |
great_sword_crouching_3 |
great sword crouching (3).fbx |
great_sword_crouching_4 |
great sword crouching (4).fbx |
great_sword_crouching_5 |
great sword crouching (5).fbx |
great_sword_crouching_6 |
great sword crouching (6).fbx |
great_sword_high_spin_attack |
great sword high spin attack.fbx |
great_sword_idle |
great sword idle.fbx |
great_sword_idle_2 |
great sword idle (2).fbx |
great_sword_idle_3 |
great sword idle (3).fbx |
great_sword_idle_4 |
great sword idle (4).fbx |
great_sword_idle_5 |
great sword idle (5).fbx |
great_sword_impact |
great sword impact.fbx |
great_sword_impact_2 |
great sword impact (2).fbx |
great_sword_impact_3 |
great sword impact (3).fbx |
great_sword_impact_4 |
great sword impact (4).fbx |
great_sword_impact_5 |
great sword impact (5).fbx |
great_sword_jump |
great sword jump.fbx |
great_sword_jump_2 |
great sword jump (2).fbx |
great_sword_jump_attack |
great sword jump attack.fbx |
great_sword_kick |
great sword kick.fbx |
great_sword_kick_2 |
great sword kick (2).fbx |
great_sword_power_up |
great sword power up.fbx |
great_sword_run |
great sword run.fbx |
great_sword_run_2 |
great sword run (2).fbx |
great_sword_slash |
great sword slash.fbx |
great_sword_slash_2 |
great sword slash (2).fbx |
great_sword_slash_3 |
great sword slash (3).fbx |
great_sword_slash_4 |
great sword slash (4).fbx |
great_sword_slash_5 |
great sword slash (5).fbx |
great_sword_slide_attack |
great sword slide attack.fbx |
great_sword_strafe |
great sword strafe.fbx |
great_sword_strafe_2 |
great sword strafe (2).fbx |
great_sword_strafe_3 |
great sword strafe (3).fbx |
great_sword_strafe_4 |
great sword strafe (4).fbx |
great_sword_turn |
great sword turn.fbx |
great_sword_turn_2 |
great sword turn (2).fbx |
great_sword_walk |
great sword walk.fbx |
great_sword_walk_2 |
great sword walk (2).fbx |
spell_cast |
spell cast.fbx |
two_handed_sword_death |
two handed sword death.fbx |
two_handed_sword_death_2 |
two handed sword death (2).fbx |
Creature
| Clip | FBX |
|---|---|
left_turn_45 |
left turn 45.fbx |
mutant_breathing_idle |
mutant breathing idle.fbx |
mutant_dying |
mutant dying.fbx |
mutant_flexing_muscles |
mutant flexing muscles.fbx |
mutant_idle |
mutant idle.fbx |
mutant_jumping |
mutant jumping.fbx |
mutant_left_turn_45 |
mutant left turn 45.fbx |
mutant_right_turn_45 |
mutant right turn 45.fbx |
mutant_right_turn_45_2 |
mutant right turn 45 (2).fbx |
mutant_run |
mutant run.fbx |
mutant_swiping |
mutant swiping.fbx |
mutant_walking |
mutant walking.fbx |