Home Technical Talk

3dsmax question, lost timeline bar ?

polycounter lvl 19
Offline / Send Message
peanut™ polycounter lvl 19
Under 3dsmax, how do you get to show your timeline bar if you want it back ? im asking because i usually model but i would like to get a try at animation, cloth in perticular..

thanks ...

Replies

  • Mark Dygert
    Options
    Offline / Send Message
    So something like this?
    3dsmaxRibbonToggle.gif

    Here is a part of a script that I use to switch my UI from modeling to animation.
    Drag this text into your 3dsmax toolbar and click the button it creates to toggle back and forth.
    (-- Toggles on and off the bottom toolbar
    	fn togglebotoff = (
    		trackbar.visible = false 
    		timeSlider.setVisible (true) 
    		statusPanel.visible = false 
    		MaxRibbon.ShowRibbon true
    	)
    		
    	fn toggleboton = (
    		trackbar.visible = true 
    		timeSlider.setVisible (true) 
    		statusPanel.visible = true 
    		MaxRibbon.ShowRibbon false
    	)
    		
    	if statusPanel.visible == false and trackbar.visible == false then	(
    		toggleboton()
    	)
    	else (
    		togglebotoff()
    	)
    )
    
    Note 1: I leave the "timeSlider.setVisible" set to "(true)" because its helpful to be able to animate things to explode bake but I really don't need to see the keys to do that.

    Note 2: You can set the different commands to true or false as you need. It would also be possible to set up a 3 state button, 1) Anim bar, 2) Ribbon, 3) Nothing. If you want help setting that up let me know.
  • peanut™
    Options
    Offline / Send Message
    peanut™ polycounter lvl 19
    hhmm thanks Mark, looks like an astonishing script.

    I don't know why but "i drag the text to my toolbar" but nothing happens. Shouldn't this be saved as a text file first and then drag it to my toolbar ?
  • Mark Dygert
    Options
    Offline / Send Message
    You have to drag it into a toolbar almost as if you were going to drop it on a button, if you drag it into a dead spot in the UI (which is outside of a toolbar) it won't make a button.

    You can make a new toolbar, right click and dock it somewhere and then drag the text into that new toolbar to get the button. That way you can hide the new toolbar without cluttering up your main UI.

    To make a new toolbar go to Main Menu > Customize > Customize User Interface > Toolbars > New...

    You can right click a button and delete it, or hold alt + drag to move them around.

    If you really want a script to run that shows up in the customize UI menu you can save this as a text file and then rename it from .txt to .ms
    macroScript ToggleRibbon
    category:" MyTools"
    toolTip:"Toggle Ribbon/AnimBar"
    icon:#("ribbon",1) 
    
    (-- Toggles on and off the bottom toolbar
    	fn togglebotoff = (
    		trackbar.visible = false 
    		timeSlider.setVisible (true) 
    		statusPanel.visible = false
    		MaxRibbon.SetRibbonDockState #bottomDock
    		MaxRibbon.ShowRibbon true
    	)
    		
    	fn toggleboton = (
    		trackbar.visible = true 
    		timeSlider.setVisible (true) 
    		statusPanel.visible = true 
    		MaxRibbon.ShowRibbon false
    	)
    		
    	if trackbar.visible == false then	(
    		toggleboton()
    	)
    	else (
    		togglebotoff()
    	)
    )
    
    Note: The icon for the button is set to the same as the "graphite modeling tools" button, I use it as a replacement. You can remove the icon part at the top if you want.
  • peanut™
    Options
    Offline / Send Message
    peanut™ polycounter lvl 19
    Oh, Mark splendid, got it to work. "You have to drag it into a toolbar almost as if you were going to drop it on a button" made it for me. :D

    Thanks a million for this new tool, its appreciated.
  • Mark Dygert
    Options
    Offline / Send Message
    One other thing I find useful, is to create a new toolbar called "unwanted" and alt+drag any buttons you don't want into this toolbar. You can then close the toolbar to hide it. YOu can right click a blank spot in the UI (the blank area above the command panel is good) to show that toolbar again. Which is helpful if you ever run into a tutorial that uses a button that you don't use all that often.
  • peanut™
    Options
    Offline / Send Message
    peanut™ polycounter lvl 19
    One more question, do you have any tips on how to preserve your UI settings(UI/plugings/script) so as when i reformat or uninstall Max, i can copy/paste it back in in the Max folder and recover everything ?

    I quite lose lots of time when i try and reinstall all my plugins.
  • Mark Dygert
    Options
    Offline / Send Message
    There isn't an easy way to do that out of the box. I have a separate .mzp installer that installs all of my scripts, plugins and various other files. I also save out the UI to a dropbox folder and load it from there.

    Monster suggested in another thread changing the user paths within max to point to those folders so you didn't have to save/load those files and any changes that get made are to the same files. I haven't looked into that tho, but sounds helpful.

    But yea out of the box, max is a pain to update especially if you're on subscription updating every april.
  • peanut™
    Options
    Offline / Send Message
    peanut™ polycounter lvl 19
    But yea out of the box, max is a pain to update

    This is a shame, it would be neat that you could flush the whole script preference folder and restart. Im going to give your suggestions a try and work from a remote UI/script folder, and save from there.

    This is the kind of Max related question that is never asked for ridicule's sake, but never the less deserves attention.
  • Computron
    Options
    Offline / Send Message
    Computron polycounter lvl 7
    I use this last script Mark posted, but now that Max 2014 has the isolation button as part of the status panel it isn't optimal. I know I could use the quad menu and all but I like having the button there to show me the status and allow me to toggle it.

    I am wondering if there is any way to move that button somewhere else (Like the main toolbar) and if that could be added to the script?

    I am talking about this little guy BTW:
    p0OZQbM.png
  • bailsone
    Options
    Offline / Send Message
    This Script realy solved my Problem
    had a long struggle with a lost 3dsmax Trackbar Button ( Curve Editor Button ) beside my Animation Timeline with all Keyframes Indicators gone too. After enabling and disabling the Script it brings me back the Button. Yeho THX. :thumbup:
  • Revel
    Options
    Offline / Send Message
    Revel interpolator
    @Computron - mybe you can use this script?
    http://www.scriptspot.com/3ds-max/scripts/isolate-selection-legacy-mode-for-2013

    @Mark - is there a way to open/ close outliner with your script? im aware of macros.run "toggleOutliner" but it simply just toggle the visibility of outliner. I want something to be able to check like if trackbar.visible == false close outliner, else open outliner along side with your current script. Is it possible?
  • Mark Dygert
    Options
    Offline / Send Message
    Computron, I only have max2012 installed at work we are switching later in the year to 2014 so I don't have access to the changes that they've made. there probably is a way to rig up a button to isolate selection. According to the max2012 max script help doc I can do it, but that won't help 2013 or 2014 users if they changed things or didn't expose those new features to maxscript.

    Revel, I don't think there is a check to see if outliner is open, or specific commands to open or close it, just the toggle that you mentioned. You might want to shoot PJ a email or PM and ask if he ever exposed more than just the toggle. Maybe ask on the script spot page or in the outliner thread?
  • Stromberg90
    Options
    Offline / Send Message
    Stromberg90 polycounter lvl 11
    Also the hotkey for isolate selection is still the same.
  • Computron
    Options
    Offline / Send Message
    Computron polycounter lvl 7
    Thanks mark.
    Also the hotkey for isolate selection is still the same.

    IIRC, it only enters the mode, does not exit isolation.
  • Stromberg90
    Options
    Offline / Send Message
    Stromberg90 polycounter lvl 11
    Hm... sure?
    Cause from what I remember it should do that, I only used the hotkey, did not try out 2014 to much though.
  • Computron
    Options
    Offline / Send Message
    Computron polycounter lvl 7
    Hm... sure?
    Cause from what I remember it should do that, I only used the hotkey, did not try out 2014 to much though.

    Yup, just tested in 2014.
  • Justo
    Options
    Offline / Send Message
    Justo polycounter
    Does anyone know why Mark's script doesn't save its effects in Max 2015?

    Up to 2014 I never had a problem. I set up my UI the way I like it, save the scene as maxstart in the appropiate folder...And when I open max again, it loads up just fine the way I modified it, except for that script's toggled bars (the trackbar, which I hide through Customize>Show UI, does hide as it should). I also tried putting the script in the scripts>Startup folder, in hopes that it'd execute as soon as Max opens, but still no use. I even changed the script's name to startup.ms for it to be priority :/
  • Mark Dygert
    Options
    Offline / Send Message
    Are you talking about the dock state? As in you want it docked at the top but the script aligns it to the bottom? The dock state is called out in the script and forced on each time so if you want it aligned some other way you need to either remove that from the script or change it to how you like it docked.

    The line you're looking for is:MaxRibbon.SetRibbonDockState #bottomDock and it needs to say: #TopDock, or #leftDock, #RightDock or #Floating.

    Also it looks like they changed it so the ribbon must be visible in order to change the dock state so "MaxRibbon.ShowRibbon true" needs to go before "MaxRibbon.SetRibbonDockState #BottomDock"
    (-- Toggles on and off the bottom toolbar
    	fn togglebotoff = (
    		trackbar.visible = false 
    		timeSlider.setVisible (true) 
    		statusPanel.visible = false
    		MaxRibbon.ShowRibbon true
    		MaxRibbon.SetRibbonDockState #BottomDock
    	)
    		
    	fn toggleboton = (
    		trackbar.visible = true 
    		timeSlider.setVisible (true) 
    		statusPanel.visible = true 
    		MaxRibbon.ShowRibbon false
    	)
    		
    	if trackbar.visible == false then	(
    		toggleboton()
    	)
    	else (
    		togglebotoff()
    	)
    ) 
    

    Also some versions of max are very picky about saving some settings under non-administer user accounts, so make sure you are set up as an adnim.
  • Justo
    Options
    Offline / Send Message
    Justo polycounter
    So after Max decided to make all icons invisible to me, I reinstalled 2014, came here to grab again this handy script...And found out I never replied back. I'm sorry Mark!

    What I meant was how to start max without any bars on the lower part of the UI. I never fixed this, it's just one click anyway. But if you're still in the mood to share your thoughts here goes the problem:

    cUmj5s4.jpg

    Enunx2h.jpg


    The idea would be that when I start max, the script automatically runs once, so that it hides the lower part of the UI.

    Quite bad from my part really, given how you actually replied the day after my original post.
  • monster
    Options
    Offline / Send Message
    monster polycounter
    What script are you putting in the Startup folder? If you are using Mark's script it's going to invert the setting every time you start Max. So you hide it, it will show it when you restart.

    If you just use these lines, it will hide it on every startup. Also, don't call it startup.ms. If there is another startup.ms it will ignore all subsequent startup.ms files. (See the Maxscript startup reference.)
    trackbar.visible = false
    timeSlider.setVisible (true)
    statusPanel.visible = false


    Works for me in 2014, I don't have 2015 to test.
  • Mark Dygert
    Options
    Offline / Send Message
    I'm a little confused as to what you want the script to do? It's behaving logically if you change it to doc at the top.

    It was intended to replace two of the animation toolbars at the bottom with the ribbon because when you're modeling you don't need the animation tools there and when you're animating you don't need modeling tools. Also when the ribbon is docked at the top it smashes the command panel down, but doesn't touch it when it's docked at the bottom.

    It's a toggle between animation mode and modeling mode.

    So the script is hiding the bars correctly, the only difference is that you have the ribbon docked at the top instead of at the bottom. Which is exactly how it would look and behave.

    If you want those bars and the ribbon out at the same time, comment out those lines of the script that hide those bars, but then you're just using a script to do what the max toolbar button does, toggle on/off the ribbon, so why use a script?


    Do you want the ribbon to un-minimize?
    You click the white arrow in the toolbar to make it pop in/out.

    I also don't understand why you have it set as a startup script?

    Do you want it to start up with the animation toolbars unhidden and then make them disappear when you click the button?

    I would like to help you out but I'm totally confused on a lot of levels.
  • Justo
    Options
    Offline / Send Message
    Justo polycounter
    monster: Well no worries, I downgraded to 2014 anyway hehe.

    Mark: I'm using the very first script you posted here, only that I deleted the lines that hid the Ribbon since I'm fine with that. As to what I want with it, it's perfect, it works like I want it to. It toggles the bottom bars on and off.

    The question is, though, how to make it hide the bottom bars when max starts, automatically. Your script apparently doesn't invert anything if I save it in the startup folder (just to be sure, I'm talking about Program Files\Autodesk\3ds Max 2014\scripts\Startup. Am I doing it wrong saving it there?).

    If I understood monster correctly, he said that it makes sense it's not working on startup, since it's always gonna invert the bars because of the script's toggle functionality...but no, it doesn't invert anything, it simply doesn't run.

    Now I tried using only the three lines monster gave me and saving it in the Startup folder, hopefully I didn't screw it up:
    macroScript Macro4
    category:"DragAndDrop"
    toolTip:""
    (
    (
    trackbar.visible = false
    timeSlider.setVisible (true)
    statusPanel.visible = false
    )
    )

    But still no changes are visible when I start Max.
  • Mark Dygert
    Options
    Offline / Send Message
    Ohh so you're just trying to get rid of the bars at start up? ok...

    Have you tried saving the script to:
    C:\Users\USERNAME\AppData\Local\Autodesk\3dsMax\2014 - 64bit\ENU\scripts\startup

    This is where scripts are supposed to be saved in newer versions of max. Saving it to the max install folder might not work in newer versions of 3dsmax but I think they are trying to phase it out.

    Or there might be a conflicting script in each of the folders? I think max checks each spot but one takes precedence over the other and is executed last? I think its the users script folder...
  • Justo
    Options
    Offline / Send Message
    Justo polycounter
    Great info, thanks Mark. I'll test it and comment back in a couple hours =)
  • Revel
    Options
    Offline / Send Message
    Revel interpolator
    I think I understand what you trying to do, personally i did that as well.
    So what I did for mine was use this script with hotkey'd;
    macroscript UIClean
    category:"_Navigation"
    tooltip:"UIClean"
    buttonText:"UIClean"
    
    (-- Toggles on and off the bottom toolbar
        fn togglebotoff =
        (
            trackbar.visible = false 
            timeSlider.setVisible (false) 
            statusPanel.visible = false 
            MaxRibbon.ShowRibbon true
        )
            
        fn toggleboton =
        (
            trackbar.visible = false 
            timeSlider.setVisible (true) 
            statusPanel.visible = true 
            MaxRibbon.ShowRibbon true
        )
            
        if statusPanel.visible == false
        then (
            toggleboton()
        )
        else (
            togglebotoff()
        )
    )
    
    I did change the header though, for the sake of script organization. This function act as a replacement of my expert UI mode.

    Then I had another script on my startup folder;
    trackbar.visible = false 
    timeSlider.setVisible (false) 
    statusPanel.visible = false 
    MaxRibbon.ShowRibbon true
    
    This will make the clean state as a default during start up. Bothe of the script just save any name you want, me I have it as "CleanUI.ms" for the first one and "CleanUI_Startup.ms" for the second one.
  • monster
    Options
    Offline / Send Message
    monster polycounter
    You need to remove the macroscript header from the script in the startup folder as well.
    Otherwise you are defining a Macro instead of running a script.

    Remove these lines:
    macroScript Macro4
    category:"DragAndDrop"
    toolTip:""
  • Mark Dygert
    Options
    Offline / Send Message
    I just tested a script in both spots and it works in both places so either place should work, but you probably want to keep all of your scripts in the same place.

    Monster is right, if the header info is in the start up script, it will define the macro on start up instead of executing the actual code. Doing what Monster pointed out should get that working.
  • Justo
    Options
    Offline / Send Message
    Justo polycounter
    Yep, that did it monster. Thank you all guys.
Sign In or Register to comment.