【问题标题】:Delete all animation Keys using MAXScript in 3ds Max globally在 3ds Max 中使用 MAXScript 全局删除所有动画键
【发布时间】:2012-03-10 03:45:16
【问题描述】:

我正在尝试使用 MAXScript 从使用 MAXScript 的场景中删除所有动画键。目前我正在使用鼠标并按 CTRL + A 选择所有对象,从而为我的场景中的所有对象调出键。然后我使用鼠标选择动画时间轴上的所有键,然后选择时间轴上的所有键,然后删除它们。如何在 MAXScript 中执行此操作?

我在MAXScript documentation找到了这个,但是不知道怎么用:

deleteKeys <controller> [#allKeys | #selection]  

我尝试过使用

deleteKeys globaltracks #allKeys

但这似乎没有任何作用。

【问题讨论】:

    标签: 3dsmax maxscript


    【解决方案1】:

    我曾经使用此命令删除所有键:

    deletekeys $*.controller #allkeys
    

    【讨论】:

    • 如何在 camera&cameraTarget 上使用它?
    • deletekeys camera.controller #allkeys ?也可以是 deletekeys camera.position.controller #allkeys 之类的东西,但自从我没有接触 3ds max 以来已经有一段时间了。
    【解决方案2】:

    或者从有限的一组对象中删除键尝试

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

    或选择要从中删除键的对象并尝试此操作

    for o in selection do deletekeys o #allkeys
    

    【讨论】:

      【解决方案3】:
      max select all
      macros.run "Animation Tools" "DeleteSelectedAnimation"
      clearSelection()
      

      或将此代码拖到工具栏上以制作宏!

      【讨论】:

      • 欢迎 LoneRobot,感谢您的建设性回答。如果我知道它是否正确,我会修改(查看第一次答案,而不是这方面的专家)。
      【解决方案4】:

      没有脚本:按 Ctrl-A,然后主菜单 > 动画 > 删除选定的动画

      【讨论】:

        【解决方案5】:

        这是我在CGTalk 上作为this 挑战的一部分发布的方法。我已经修改它以删除动画控制器上的所有键。它操纵内置的 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
        

        【讨论】:

          猜你喜欢
          • 2013-12-08
          • 2015-05-11
          • 2012-10-02
          • 1970-01-01
          • 2020-10-28
          • 2017-10-31
          • 2013-07-31
          • 2018-11-03
          • 2014-02-24
          相关资源
          最近更新 更多