Elimina tutte le chiavi di animazione usando MaxScript in 3DS max a livello globale
Domanda
Sto cercando di usare MaxScript per eliminare tutte le chiavi di animazione dalla mia scena usando MaxScript. Al momento sto usando il mouse e premendo CTRL + A per selezionare tutti gli oggetti sollevando così i tasti per tutti gli oggetti nella mia scena. Sto quindi selezionando tutte le chiavi sulla sequenza temporale dell'animazione usando il mouse, quindi selezionando tutte le chiavi sulla sequenza temporale, quindi eliminandoli. Come faccio a farlo in Maxscript?
L'ho trovato nel Documentazione MaxScript, ma non so come usarlo:
deleteKeys <controller> [#allKeys | #selection]
Ho provato a usare
deleteKeys globaltracks #allKeys
Ma non sembrava fare nulla.
Soluzione
Questo è un metodo che ho pubblicato come parte di questo sfida Cgtalk. L'ho modificato per eliminare tutte le chiavi sui controller animati. Manipola le funzioni di filtro personalizzato della barra track-in per iterare automaticamente tutti i controller di tutti gli oggetti, invece di dover recuperare tutti i controller da solo.
(
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
)
)
EDIT: scusa, o usa questo :)
deleteKeys objects #allKeys
Altri suggerimenti
max select all
macros.run "Animation Tools" "DeleteSelectedAnimation"
clearSelection()
Oppure trascina questo codice su una barra degli strumenti per creare una macro!
O per eliminare le chiavi da un gruppo limitato di oggetti prova
for o in objects where matchpattern o.name pattern:"*somename*" do deleteKeys o #allKeys
oppure seleziona gli oggetti per eliminare le chiavi e provare questo
for o in selection do deletekeys o #allkeys
Ero solito eliminare tutte le chiavi usando questo comando:
deletekeys $*.controller #allkeys
Senza scripting: premere Ctrl-A, quindi menu principale> Animazione> Elimina animazione selezionata