Удалить все клавиши анимации, используя MaxScript в 3DS Max во всем мире

StackOverflow https://stackoverflow.com/questions/9350335

  •  27-10-2019
  •  | 
  •  

Вопрос

Я пытаюсь использовать MaxScript для удаления всех клавиш анимации из моей сцены, используя MaxScript. На данный момент я использую мышь и нажимаю Ctrl + A, чтобы выбрать все объекты, поднимая ключи для всех объектов в моей сцене. Затем я выбираю все ключи на временной шкале анимации, используя мою мышь, а затем выбираю все клавиши на временной шкале, а затем удаляю их. Как мне сделать это в MaxScript?

Я нашел это в MaxScript Documentation, но я не знаю, как его использовать:

deleteKeys <controller> [#allKeys | #selection]  

Я пытался использовать

deleteKeys globaltracks #allKeys

Но это, похоже, ничего не сделало.

Это было полезно?

Решение

Это метод, который я опубликовал как часть это вызов на Cgtalk. Анкет Я изменил его, чтобы удалить все ключи на анимированных контроллерах. Он манипулирует встроенными функциями пользовательских фильтров Trackbar для автоматического итерации всех контроллеров всех объектов, вместо того, чтобы получить все контроллеры.

(   
fn filterCallbackFunction theAnimatable theParent theSubAnimIndex theGrandParent theNode = 
(       
    if isController theAnimatable do deleteKeys theAnimatable #allKeys
    true
)

with redraw off
(   
    trackbar.filter = #all
    local filtind = maxops.trackbar.registerFilter filterCallbackFunction undefined "." 1 active:on
    disableRefMsgs()
    local sel = getCurrentSelection()
    select objects
    maxops.trackbar.redraw forceRedraw:on
    maxops.trackbar.unregisterfilter filtind        
    select sel
    enableRefMsgs()
    ok
)
)

РЕДАКТИРОВАТЬ: Извините, или просто используйте это :)

deleteKeys objects #allKeys

Другие советы

max select all
macros.run "Animation Tools" "DeleteSelectedAnimation"
clearSelection()

Или перетащите этот код на панель инструментов, чтобы сделать макрос!

Или просто удалить ключи из ограниченной группы объектов

for o in objects where matchpattern o.name pattern:"*somename*" do deleteKeys o #allKeys

или выберите объекты, чтобы удалить клавиши и попробовать это

for o in selection do deletekeys o #allkeys

Раньше я удалял все ключи, используя эту команду:

deletekeys $*.controller #allkeys

Без сценариев: нажмите Ctrl-A, затем главное меню> Анимация> Удалить выбранную анимацию

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top