Home Technical Talk

MaxScript: Playback Curve Editor Friendly

polycounter
Offline / Send Message
monster polycounter
PlaybackCurveEditorpng

Download: https://www.dropbox.com/s/htxdfvllh94lils/Martinez_Macro_Playback.mcr?dl=0

One of the banes of my existence (with 3ds Max) is that you can't have the Curve Editor open when you hit the play button because the viewport slows to a crawl. You either need to deselect all your objects, or you need to close the editor.

Here's a script that disables updating of all open Track Views during playback. It's intended to replace the default Play Animation hotkey "/". I've been using it for over a year with no issues in 3ds Max 2013 and 2014.

3ds Max 2011-2012 - There is a rare case where the Curve Editor will disappear entirely, and it won't reappear until you click inside the invisible window.

To install drag and drop the MCR file into the viewport, then look in Customize > Customize User Interface > Keyboard > Category > monsterBlues.

Unfortunately, there is no way to replace the behavior of the default Play button in the bottom right of the Max UI.

Replies

  • Mrfred
    Options
    Offline / Send Message
    Mrfred polycounter lvl 4
    Wow, I've been asked to look onto this issue last week at job but didnt had time to look at it. Didnt know this was cause by the trackview being updated. Will try it tomorrow for sure, thanks for sharing :)
  • spacefrog
    Options
    Offline / Send Message
    spacefrog polycounter lvl 15
    Looks really interesting ...
    But AFAIK plaback with curveeditor open has been sped up with Max 2014
    Is the benchmark picture in Max 2013 ?
    If yes could you compare with Max 2014 ? Or did'nt you experience any playback improvements ( with open cureveditor) in Max 2014 ?
  • spacefrog
    Options
    Offline / Send Message
    spacefrog polycounter lvl 15
    To answer my own question:

    Seems i was right: I get great speedups (up to x10) using the script in Max 2012 and 2013 while trackview is open and animated tracks are selected.
    The same scene in Max 2014 plays equally fast with or without using the script. So it indeed looks like that slowdown causing bottlneck with trackview has been successfully targeted and nuked with Max 2014 ...

    That just adds to my opinion that Max 2014 is the best release since Max 2009....
  • monster
    Options
    Offline / Send Message
    monster polycounter
    This is Max 2014. Performance was improved in Max 2014. That why I had to find a scene with 3 characters. :)

    In Max 2014 here are the numbers with 20 objects selected and animated over 60 frames on my PC. With one skinned character showing but never selected.

    Curve Editor Open without the script
    19-20 FPS
    Curve Editor Open with nothing selected
    59-62 FPS
    Curve Editor Open with the script
    83-90 FPS
    Curve Editors Closed with or w/o the script
    83-92 FPS

    And Max 2013

    Curve Editor Open without the script
    6-7 FPS
    Curve Editor Open with nothing selected
    45-49 FPS
    Curve Editor Open with the script
    49-63 FPS
    Curve Editors Closed with or w/o the script
    55-64 FPS

    One thing that is odd, is that hiding the skinned meshes makes the FPS go over 120 FPS in both versions. Even with the curve editor updating. I hadn't noticed this before, because I've always got a skinned mesh showing.

    In any case, this was a mobile spec character with only 20 controllers, and 19-20 FPS isn't really workable. You need to constantly deselect before you hit play.
  • monster
    Options
    Offline / Send Message
    monster polycounter
    spacefrog wrote: »
    Max 2014 plays equally fast with or without using the script

    I'm still getting slow down 2014 (not as bad as before). As referenced by my screenshot above.

    [edit]I wonder if you didn't have any skinned meshes showing. In my screenshot scene I get 45 FPS if I hide the skinned meshes not use the script. And these skinned meshes are only about 500 tris each.[/edit]

    spacefrog wrote: »
    That just adds to my opinion that Max 2014 is the best release since Max 2009....

    I agree with this.
  • spacefrog
    Options
    Offline / Send Message
    spacefrog polycounter lvl 15
    monster wrote: »
    I'm still getting slow down 2014 (not as bad as before). As referenced by my screenshot above.

    [edit]I wonder if you didn't have any skinned meshes showing. In my screenshot scene I get 45 FPS if I hide the skinned meshes not use the script. And these skinned meshes are only about 500 tris each.[/edit]

    I agree with this.


    I had a skinned character in the scene - and some additional animated rigid hierarchies with some wired ctrl etc.....
    But it was a pretty simple scene in general, so mabye having multiple skin modifiers in the scene might still be slower

    Just a hint:
    When using the stats display turning off all geometry related stats (except fps) might increase the playback rate, i guess even more so with multiple deformed geo. As the geometry stats is implemented, it constantly has to evaluate the stack on deforming meshes per frame, to check wether the vertex/poly counts have changed...

    And in generall: the Max built in FPS display is not the most trustworthy, often it displays quite high framerates even when the playback is really low...

    EDIT:
    regarding the hidden skinned mesh speedup: This was another optimization that was explicitely targeted for the Max 2014 release - hidden mesh evaluation. Guess thats the reason for the speedup when skinned meshes are hidden. And as skin modifier in Max hasn't been touched for ages, it just proves how lame the deform code inside skin is performing...

    UPDATE:
    Tested on a complexer scene with ~9 skinned/animated Characters and some other hierarchical, rigid animation - i get some speedup using your script ( 4.5fps go up to 5.5 fps ).
    Hiding the skinned geometry does'nt change that , except a general dropdown in FPS when they are visible ...
Sign In or Register to comment.